七大软件设计原则

设计原则总结

小记:许多设计不用完全遵守原则,尽量去遵守就可以了

  • 开闭原则Open -Closed Principle

一个软件的实体(比如:类)应该对扩展开放,对修改关闭。用抽象构建框架,用实现扩展细节,比如说一个商品的价格进行打折,可以再设置一个新的字段存储算法后的价格,而不能在原有的价格字段上进行改变!
优点:提高系统的可复用性和可维护性

  • 依赖倒置原则Dependence Inversion Principle

细节应该依赖抽象,抽象不应该依赖细节具体,不要针对实现编程
比如不应该在应用层(高层)里面编写pojo(实体),面向的抽象编程

  • 单一职责原则Simple Responsibility Principle

不要存在多于一个导致类变更的原因,一个类,接口,方法只负责一项职责
优点:降低复杂度,提高类的可读性…

  • 接口隔离原则Interface Segregation Principle

用多个专门的接口,而不是单一的接口,不要简历庞大臃肿的解耦,尽量细化接口,接口中的方法尽量少。
优点:符合高内聚,低耦合的设计思想…就是不可以写万能方法(不符合接口隔离原则)这个与单一原则的区别是单一原则在前,隔离原则在后,单一原则关心的是new的实现,隔离原则关心的是new的落地。接口原则实现之前肯定需要先实现单一原则

  • 迪米特原则Law oof demeter

又叫最少知道原则,尽量降低类与类之前的耦合(比如说要知道一个list的数量,传给接口的时候只传一个数量就可以了,没必要把list传给接口)
优点:减少耦合

  • 里氏替换原则Lishov Substitution Principle

子类可以扩展父类的功能,不能改变父类原有的功能
比如在getset方法里面改变某一个方法的输入输出。
面向对象的基本原则是里氏替换原则

  • 合成复用原则Composite&Aggregate ReusePrinciple

又叫合成(组合),聚合复用原则。尽量使用对象组合(contains-a)聚合(has-a),而不是继承关系达到软件复用的目的
优点:降低耦合

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值