软件设计原则的一些学习总结

UML和模式应用》中描述了GRASP设计原则,是面向对象设计方法,强调职责的分配。《敏捷软件开发》则提供了另外一套设计原则,强调通过扩展应对变化。本文将学习的理解进行总结。

 

软件设计中要解决两个主要问题是:职责划分、和隔离变化。

 

1. 职责划分是定义类的关键。可以指导的原则有:

1) 单一职责原则;

2) 信息专家原则

3) 创建者原则;

4) 控制器原则;

 

2. 隔离变化,软件才能获得良好的可维护性、可扩展性。

受保护变化原则间接性原则纯虚构原则多态原则在较高抽象层次上提供了隔离变化的指导原则。

而下面的指导原则更为贴近软件实现层面:

OCP原则描述了一个结构良好的设计应该达到的效果。实现方式是将直接的依赖关系转换为对抽象的依赖,这就是依赖倒置原则。抽象和实现在设计时要遵循李氏替换原则这是实现依赖倒置原则机制上的保证。

抽象接口是依赖的终止点,在设计时要遵循接口隔离原则

 

3. 最后,高内聚、低耦合原则,是裁决设计取舍的最高指导原则。

 

2012.8.3 by weichsel

转载于:https://www.cnblogs.com/weichsel/archive/2012/08/03/2622311.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值