设计模式网站
- Brian Foote 的网站(http://www.laputan.org/foote/papers.html)是学习设计模式的一座知识宝库。(本文发表时,该网站不能访问。欢迎来到千变万化的 Web 世界!)
- Martijn van Welie 模式站点(http://www.welie.com)包含许多适用于用户界面和 Web 可用性设计的模式。
- 可以在 IBM 的 Patterns for e-business 站点(http://www-106.ibm.com/developerworks/patterns/index.html)上找到 Simple Policy 和 Property Container 模式。
- Front Controller 模式是可以在 Sun Microsystems 的 Java BluePrints 站点(http://java.sun.com/blueprints/index.html)上找到的几种有用的 J2EE 设计模式之一。
- Object Management Group(http://www.omg.org)负责 Event Channel 设计模式。
- Patterns for e-business 网站已经更新,包含新的 Access Integration 设计(http://www-106.ibm.com/developerworks/patterns/access/index.html),它使用户能通过单点登录过程访问多个后端系统(通过浏览器或者通过目前的普及设备客户机)。Access Integration 还允许您根据用户角色、身份和喜好个性化内容。学习更多有关这些功能强大的设计模式知识。
文章和教程
- 教程“Java design patterns 101”(developerWorks,2002 年 1 月,http://www-106.ibm.com/developerworks/education/r-jpatt.html)是设计模式的简介。可以从中了解为什么对于面向对象的设计和开发来说,模式是有用的和重要的,以及如何对模式进行编写、分类和编目。该教程包含重要的模式和实现的示例。
- Paul Monday 的新教程“Java event delivery technique”(developerWorks,2002 年 2 月,http://www-106.ibm.com/developerworks/education/r-jdel.html)是本文简短讨论的 JMS 的扩充。
- Malcolm Davis 的文章“Struts, an open-source MVC implementation”(developerWorks,2002 年 2 月,http://www-106.ibm.com/developerworks/java/library/j-struts/)介绍了 Front Controller 设计模式依赖的 MVC 的体系架构。该篇文章也广泛讨论了 JMS 和 Servlet 技术。
- 利用设计模式领会编程中难懂的地方!“A taste of Bitter Java”,(developerWorks,2002 年 3 月,http://www-106.ibm.com/developerworks/java/library/j-bitterjava/)是 Bruce Tate 即将发行的关于“逆模式(antipattern)”的新书预览,他在该篇文章中描述了“会给开发人员带来可怕后果的常见陷阱”。
- 模式体系结构师讨论了新兴的 Web 服务技术(http://www-106.ibm.com/developerworks/patterns/guidelines/web-services.pdf)及其对模式解决方案的影响。
推荐书籍
- 第一本要看的书:Design Patterns: Elements of Reusable Object-Oriented Software(Gamma,Helm,Johnson,Vlissides,Addison-Wesley,1995,http://cseng.aw.com/book/0,3828,0201633612,00.html)。
- GOF 的成员之一 John Vlissides 还写了 Pattern Hatching (Design Patterns Applied)一书(Addison-Wesley,1998,http://www.amazon.com/exec/obidos/ASIN/0201432935/qid=1015942491/sr=1-9/ref=sr_1_9/104-1891410-7851159)。
- Pattern Almanac 2000(Rising,Addison-Wesley,2000, http://www.aw.com/catalog/academic/product/1,4096,0201615673,00.html#summary)是学习设计模式的重要参考资料。
- Pattern-Oriented Software Architecture, Volume 2: Patterns for Concurrent and Networked Objects(Schmidt,Stal,Rohnert,Buschmann,Wiley,2000, http://www.wiley.com/Corporate/Website/Objects/Products/0,9049,104671,00.html)是那些使用模式帮助您学习特殊领域软件开发的书之一。该书也是对所有模式库的很好补充。
- 同一系列的(该系列的第一部分)书是 Pattern-Oriented Software Architecture, Volume 1: A System of Patterns(Buschmann,Meunier,Rohnert,Sommerlad,Stal,Wiley,1998, http://www.wiley.com/Corporate/Website/Objects/Products/0,,104675,00.html)。
- 即将出版的 Framework Process Patterns: Lessons Learned Developing Application Frameworks(Carey,Carlson, Addison-Wesley,2002,http://www.amazon.com/exec/obidos/ASIN/0201731320/qid=1015908003/sr=1-2/ref=sr_1_2/104-1891410-7851159)是为那些学习设计模式高级知识的人而准备的。它讨论了旧的设计模式是如何派生的,以及专门应用于构建框架的新模式。其中的一个模式“Missed it by That Much”给出了使用现有模式和发现新模式的清晰界线。
- 也是由 James Carey 和 Brent Carlson 合著的 SanFrancisco Design Patterns: Blueprints for Business Software(Addison-Wesley,2000, http://cseng.aw.com/book/0,3828,0201616440,00.html)
- Patterns for e-business: A Strategy for Reuse(Adams, Galambos,Koushik,Vasudeva,IBM Press,2001,http://www.mcpressonline.com/ibmpress/5206.htm)可以以书的形式获得。
- Designing Enterprise Applications with the Java 2 Platform (Enterprise Edition) 同样出自 Java BluePrints 站点,(Kassem,Addison-Wesley,2000, http://www.digitalguru.com/product_detail.asp?catalog%5Fname=Books&product%5Fid=0201702770)。
其它参考资料
- 可以在 IBM developerWorks Java 技术专区(http://www-106.ibm.com/developerworks/java/)找到上百篇 Java 编程各个方面的文章。
- 请参阅 developerWorks Java 技术教程页面(http://www-105.ibm.com/developerworks/education.nsf/dw/java-onlinecourse-bytitle?OpenDocument&Count=500/),从 developerWorks 获取更多免费 Java 教程的完整清单。
- 请参阅 Guide to developer kits from IBM(http://www-106.ibm.com/developerworks/library/i-tools.html)获取最新的 IBM 开发者工具集的清单。