如果我没有理解错的话java的23种设计模式,正是软件色剂基本原则的具体体现,跟着《软件秘笈---设计模式那点事》来梳理一下。
1、高内聚低耦合
目的是软件会不随需求改变发生巨大的变动。
所谓高内聚,是指一个软件模块内各个元素彼此结合的紧密程度要高,即一个软件模块是由相关性很强的代码组成,组负责一项任务,也就是常说的单一责任原则。
所谓低耦合,是指一个软件结构内不同模块之间的互连程度要低,不同模块之间的联系越紧密,其耦合性就越强,模块的独立性则越差,模块间耦合的高低取决于模块间剪口的复杂性,调用的方式及传递的信息。
2、面向抽象编程
抽象变化的可能性小,因此抽象不发生变化,客户程序就不需要改变,这就是依赖倒置原则。
3、多用组合少用继承
所谓组合,是指在一个对象中含有另外一个对象的引用。
4、对扩展开放,对修改关闭