软件设计原则、技术演进、开发模式

目录

一,最高原则

二,正交四原则

三,简单设计四原则

四,SOLID设计原则

1,SRP:单一职责原则

2,OCP:开闭原则

3,LSP:里氏替换原则

4,ISP:接口隔离原则

5,DIP:依赖反转原则

五,其他面向对象设计原则

1,迪米特法则

2,合成复用原则

六,软件设计开发技术演进

七,敏捷软件开发


一,最高原则

  • 高内聚
  • 低耦合

二,正交四原则

  • 消除重复
  • 分离关注点
  • 减小不必要的依赖
  • 向着稳定的方向依赖

三,简单设计四原则

1 通过所有测试(Passes its tests)

2 尽可能消除重复(Minimizes duplication)

3 尽可能清晰表达(Maximizes clarity)

4 更少的代码元素(Has fewer elememts)

以上四个原则的重要程度依次降低。

四,SOLID设计原则

  • Single Responsibility Principle:单一职责原则
  • Open Closed Principle:开闭原则
  • Liskov Substitution Principle:里氏替换原则
  • Interface Segregation Principle:接口隔离原则
  • Dependence Inversion Principle:依赖反转原则

1,SRP:单一职责原则

任何一个软件模块都应该有且只有一个被修改的原因。

常见误区:认为这条原则是说每个模块都应该只做一件事情。这只是面向底层实现的设计原则,并不是SRP的全部。

2,OCP:开闭原则

一个设计良好的计算机系统应该在不需要修改的前提下就可以轻易被拓展。

实现方法:先将满足不同需求的代码分组(SRP),再调整这些分组之间的依赖关系(DIP)

3,LSP:里氏替换原则

把对象的类型换成其子类型时,行为保持不变。

早期普遍认为,LSP只不过是指导如何使用继承关系的一种方法,然而随着时间的推移,LSP逐渐演变成了一种更广泛的、指导接口与其实现方式的设计原则。

4,ISP:接口隔离原则

客户端不应该被迫依赖于它不使用的方法。

5,DIP:依赖反转原则

多使用稳定的抽象接口,少依赖多变的具体实现。

依赖注入/控制反转 依赖注入/控制反转_nameofcsdn的博客-CSDN博客

应用DIP时,主要关注的是那些会经常变动的具体实现模块,像String类这种本身非常稳定的不需要考虑。

五,其他面向对象设计原则

1,迪米特法则

应该尽可能的少暴露自己的接口,应该尽可能的少暴露自己的接口。

有人把SOLID原则总结为6条原则,即上面的5条加上迪米特法则Law of Demeter

2,合成复用原则

在系统中应该尽量多使用组合和聚合关联关系,尽量少使用甚 至不使用继承关系。(Composite Reuse Principle, CRP)

六,软件设计开发技术演进

 

七,敏捷软件开发

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值