书籍
- Design Patterns: Elements of Reusable Object-Oriented Software ,Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 合著(Addison-Wesley,1995),可能是面向对象设计方面最有影响的资料。第 1、2 和 6 章是必需阅读的章节,这些章节从总体上帮助您理解面向对象设计,尤其是对于面向对象设计中模式角色的理解。
- Patterns in Java: A Catalog of Reusable Design Patterns Illustrated with UML ,Mark Grand 著(Wiley,1998),写得不如《设计模式》那样好,特别是在关于一般的面向对象设计的问题方面;但使读者更容易理解类别中的各种模式,尤其是因为许多样本是用 Java 语言编写的,而且书中的建议解决了 Java 开发人员普遍存在的问题。
- Core J2EE Patterns: Best Practices and Design Strategies ,Deepak Alur、John Crupi 和 Dan Malks 合著(Prentice Hall,2001 ),对用于多层企业应用程序的设计和体系结构的模式进行了编目。
- UML Distilled: Applying the Standard Object Modeling Language ,Martin Fowler 和 Kendall Scott 合著(Addison-Wesley,2000),对 UML 的实质作了极佳的介绍。它包含了一些简短但有价值的讨论,这些讨论是关于把“类-职责-协作”卡用于面向对象设计。
- The Unified Modeling Language User Guide ,Grady Booch、Ivar Jacobson 和 James Rumbaugh 合著(Addison-Wesley,1998),在您需要了解的内容不仅仅局限于那些必不可少的内容时,这本书对您是有帮助的。
网上资源
- 关于 Java 编程语言和常规的面向对象设计,developerWorks 有两篇不错的介绍性文章:
- “The OO design process: Getting started” ,Allen Holub 著
- “The object primer: Using object-oriented techniques to develop software” ,Scott W. Ambler 著
- “The OO design process: Getting started” ,Allen Holub 著
- 还有几篇有关 Java 语言、模式和 UML 的文章:
- “A UML workbook”(第 1 部分、第 2 部分和 第 3 部分),Granville Miller 著
- “An overview of object relationships: The basics of UML and Java associations” ,Scott W. Ambler 著
- “Use your singletons wisely: Know when to use singletons, and when to leave them behind” ,J. B. Rainsberger 著
- “Developing Java solutions using Design Patterns” ,Kelby Zordrager 著
- “A UML workbook”(第 1 部分、第 2 部分和 第 3 部分),Granville Miller 著
- 有些网站上也有一些关于模式的极佳信息。Hillside Group 在模式社区中起主要作用,特别是它自己的站点是一个了解模式的极好出发点:
- 对于那些希望更多了解设计模式之父的人来说,“Christopher Alexander: An Introduction for Object-Oriented Designers”很值得一读。
- 在本教程和其它地方中讨论和分析得最多的模式就是 Singleton 模式。这里有两篇文章从完全不同的观点讲述了这一主题:
- “Implementing the Singleton Pattern in Java” ,Rod Waldhoff 著
- “When is a singleton not a singleton?” ,Joshua Fox 著
- “Implementing the Singleton Pattern in Java” ,Rod Waldhoff 著