敏捷开发设计模式的五大原则(读敏捷软件开发:原则、模式与实践笔记记录一下)

最近在公司架构师一次公开课上,大牛推荐了这本书,公司领导开会也推荐这本书,于是拜读了,这里记一下印象比较深刻的五大原则!

一 敏捷联盟与原则

       在2001年召开的研讨软件过程未来发展趋势的一次会议上,17位业界专家就什么是“敏捷”达成一致意见。这次会议的一个成果是成立了“敏捷联盟”并发布了联盟敏捷宣言(参考http://www.agilealliance.org/principles.html)。

这份联盟敏捷宣言是“敏捷软件开发”价值和目标的浓缩定义,并通过许多共同的原则进行了细化。这些原则如下所示:

1. 我们最优先要做的是通过尽早、持续地交付有价值的软件来使客户满意。

2. 在项目的整个开发期间,业务人员和开发人员必须天天在一起工作。

3. 即使到了开发后期,也欢迎需求变化。

4. 经常性地交付可以工作的软件。

5. 可以工作的软件是主要的进度度量标准。

6. 围绕被激励起的个体来构建项目。为他们提供所需的环境和支持,并信任他们能胜任工作。

7. 最好的架构、需求和设计来自于自组织的团队。

8. 在团队内部,最有效果和最有效率的传递信息的方法是面对面地交流。

9. 敏捷过程提倡可持续的开发速度。

10. 不断地关注最优秀的技术和良好的设计能增强敏捷能力。

11. 简单是根本的。

12. 开发团队每隔一定时间,都会对如何能有效地工作进行反省,然后相应地对自己的行为进行调整

二 五大原则

单一职责

开放-封闭 

里氏替换

依赖倒转

接口隔离