备注 :
@H_404_13@2. 模式是特定场景下优雅的解决方案,因此场景很关键。在软件设计中,特定的场景可能是显而易见的,可能是隐而不现的,有时甚至是设计者有意创造的。因此使用模式时,对问题的分析至关重要。
@H_404_13@3. 模式的使用是有先后之分的。
@H_404_13@4. DP 书中所给的结构图仅仅是模式可能的实现方式之一,但不是唯一。实现一个模式往往有多种途径。
@H_404_13@5. 模式本身是比较复杂的。纯粹的为了模式而模式,并不会改善设计,相反会引入不必要的复杂性。之所以使用模式,是因为它提供了一种优雅的解决方案
@H_404_13@6. 有些模式,比如行为型的模式等,常常在设计初期就引入,但是更多的模式则不宜过早的引入。 “Refactoring to Patterns” 是目前普遍公认的最好的使用设计模式的方法。
@H_404_13@7. 模式和语言无关
@H_404_13@8. 使用模式不难,用好模式难 . 唯一的建议 : 多编程。
重构与模式
@H_502_132@很多模式并非作为主模式被引入系统设计的,往往是在系统不断进化的过程中,根据需求而引入。模式的引入过程就是系统的一个组合重构过程 。进化的系统需要持续重构,因此重构就成了使用模式的一个很好的途径。 @H_502_132@重构的目标:消除重复代码;消除冗余代码;简化代码逻辑。 本质上,重构就是为了提高代码的可读性和可维护性 等。 @H_502_132@重构往往需要测试驱动开发的支持。没有测试代码重构很难进行,测试代码是保证重构不破坏代码原有行为的必要条件。 @H_502_132@重构过程不宜采取过大的步骤。采取尽可能小的重构步骤, 在不破坏代码行为的前提下,尽量使重构的代码在可编译状态下进行代码的增删和替换。小步骤的重构往往就是最快的重构方式。 @H_502_132@模式导向的重构是把重构和模式使用结合在一起的一个途径。
参考书籍
设计模式 @H_404_13@ @H_404_13@ @H_404_13@ 1995
设计模式精解( 2nd ) @H_404_13@ 2006
敏捷软件开发 @H_404_13@ @H_404_13@ 2003
Refactoring to Patterns( 中文 : 重构与模式 )@H_404_13@ 2006
Head First Design Patterns @H_404_13@ Elisabeth Freeman,Eric Freeman 2007
推荐书籍 :
测试驱动开发 (TDD)@H_404_13@ Kent Beck
重构 @H_404_13@ Martin Fowler
Patterns of Enterprise Application Architecture @H_404_13@ Martin Fowler
Extreme Programming Explained@H_404_13@ @H_404_13@ Kent Beck
Object-oriented Software Construction@H_404_13@ @H_404_13@ Bertrand Meyer
UML Distilled( 有中文版 )@H_404_13@ @H_404_13@ @H_404_13@ Martin Fowler
大部分写于: 2007-02-05 ~06
完成于 2007-03-30
修改于: 2009-09-05