随笔分类 -  敏捷开发

摘要:接口隔离原则(The Interface-Segregation Principle)强调类的功能要单一,类的功能臃肿增加不必要的耦合,增加代码的脆弱性,还会增加编译依赖。该原则建议将方法分组,达到隔离接口的目的,具体的方法有委托和多重继承。 阅读全文
posted @ 2013-12-18 06:09 飞雪COCO 阅读(839) 评论(0) 推荐(0)
摘要:依赖倒置原则(The Dependency-Inversion Principle)的本质是要破除看似自然的结构化程序设计思维:逻辑高层调用底层,逻辑上的高层在设计中应处于抽象层次的底层。但要注意,这并不意味着底层依赖逻辑高层了,他们两个都依赖抽象层。这个原则强调了抽象的重要性,抽象也是面向对象设计的一个核心能力 阅读全文
posted @ 2013-11-28 06:49 飞雪COCO 阅读(650) 评论(0) 推荐(1)
摘要:替换原则(Liskov Substitution Princple)是OCP的重要支撑,也是继承关系设计的基本原则。其关键在于,不能单方面的、孤立的思考设计,应多从使用者角度考虑问题。设计类结构时,应该父类与子类之间的可替换性,而不是只考虑ISA关系。 阅读全文
posted @ 2013-11-22 00:06 飞雪COCO 阅读(502) 评论(0) 推荐(0)
摘要:开发-关闭原则(Open-Closed Principle)本质是在扩展时不改变原有模块源代码,通过抽象和继承,利用多态性,扩展模块行为。但这样做是有成本的,会增加程序复杂性和开发成本,不要滥用。 Resisting premature abstraction is as important as abstraction itself. Strategy模式和Template method模式是两种最常见的用来满足OCP的方法。书中提到的“表驱动”也是一个好方法 阅读全文
posted @ 2013-11-13 06:45 飞雪COCO 阅读(411) 评论(0) 推荐(0)
摘要:单一职责原则(The Single-Responsibility Principle)是最简单也是最难掌握的一个原则。其中:单一职责=内聚,职责=变化的原因。不同的职责并非绝不能共处,关键是发现类中变化特征不同的职责,减少耦合。比如变化来源不同,一个职责经常变,另一个很少变,这时就要考虑将职责分开。 阅读全文
posted @ 2013-11-12 06:23 飞雪COCO 阅读(420) 评论(0) 推荐(0)
摘要:Jack Reeves在1992年就提出,源码就是设计,UML diagrams 也许能够展示一部分设计,但它不是设计的全部。该文列出了软件的常见坏味道以及导致软件腐化的一个根本原因-需求快速变化 阅读全文
posted @ 2013-11-09 07:16 飞雪COCO 阅读(294) 评论(0) 推荐(0)
摘要:简要介绍敏捷原则,强调敏捷开发中人的重要性,给出敏捷开发过程中几个建议 1. Working software over comprehensive documentation 2. Customer collaboration over contract negotiation 3. Responding to change over following a plan 4. That is, while there is value in the items on the right, we value the items on the left more. 阅读全文
posted @ 2013-11-09 07:04 飞雪COCO 阅读(590) 评论(0) 推荐(0)