- 单一职责(Single Responsibility):类和对象最好是只有单一的职责,在程序设计中如果发现某些类存在多个职责,可以考虑进行拆分;
- 开闭原则(Open-close, open for extension, close for modification):设计要对扩展开放,对修改关闭,换句话说,程序应保证平滑的扩展性,尽量避免因为新增同类功能而修改现有设计,这样可以少产出些回归问题。
- 里式替换(Liskov Substitution):这是面向对象的基本要素之一,凡是可以使用父类或者基类的地方,都可以用子类替换;
- 接口分离(Interface Segregation):在我们进行接口的设计时,如果一个接口定义了太多方法,那么在某个类实现这个接口时,可能面临两难,某些方法是不用的,这就破坏了程序的内聚性;
对于这种情况,可以将功能单一的接口进行拆分,这样,在添加新功能时可以在不改变原有接口的基础上进行功能的扩展; - 依赖反转(Dependency Inversion):实体应该依赖于抽象而不是实现,也就是说高层次的模块,不应该依赖于低层次模块,而是应该基于抽象,实践这一原则是保证代码适当耦合度的法宝。
面向对象编程solid原则
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 前言 关于设计模式六大设计原则的资料网上很多,但感觉很多地方解释地都太过于笼统化,特此再总结一波。 优化第一步-单...