1.道(设计的世界观)
2.法(原则)
a) ISOLD原则(Single Responsibility原则,Open Closed原则,Liskov
Substitution原则,Interface Segregation原则,Dependency
Inversion原则)
b) DRY原则
c) GRASP原则
d) …
3.术(模式与方法)
a) 模式(架构模式、分析模式、设计模式、实现模式)
b) 方法:TDD、UDD、DDD、FDD、BDD…
4.器(实践与工具)
a) 实践(Pair Programming、Unit Test、Refactor…)
b) 工具(XUnit、Mock、Git、Maven、Jenkins…)