设计模式资源

来源:互联网 发布:淘宝网店货源供销平台 编辑:程序博客网 时间:2024/05/16 07:30
 使用设计模式的三个最重要的要素是:
  • 知道在何处查找设计模式
  • 知道如何将设计模式应用于软件工作
  • 如何识别出现在别人的软件中的设计模式

稍加练习,您会发现查找一个可能适用于特定问题领域的设计模式是相当容易的。实际上,通常会发现适用于您问题领域的模式太多了。一旦把所有可行的模式汇集成一份清单,那么,确定哪个模式最适合应用于您的软件设计会是一个难题。使用模式时,经验是关键。有了经验,您将知道去哪查找适合于某个特定情形的模式,并且知道如何将模式融入软件解决方案。当您作为一名软件开发人员在职业和经验方面不断进步时,也就学会凭直觉识别出其他人的设计中的模式。

设计模式网站

  • Brian Foote 的网站(http://www.laputan.org/foote/papers.html)是学习设计模式的一座知识宝库
  • 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 还允许您根据用户角色、身份和喜好个性化内容。学习更多有关这些功能强大的设计模式知识。
  • 另外还有:http://www.theserverside.com/patterns/index.tss。
  • http://www.dofactory.com/Patterns/Patterns.aspx。
  • http://www.javajia.com/pattern.php

推荐书籍

  • 第一本要看的书: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 开发者工具集的清单。