<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>tyrone的专栏 - 设计模式</title><link>http://blog.csdn.net/tyrone1979/category/143871.aspx</link><description>GoF，MVC，J2EE</description><dc:language>zh-CN</dc:language><lastUpdateTime>Wed, 26 Sep 2007 19:43:47 GMT</lastUpdateTime><ttl>60</ttl><item><dc:creator>tyrone</dc:creator><title>组件粒度划分与组件的集成</title><link>http://blog.csdn.net/tyrone1979/archive/2005/12/17/554646.aspx</link><pubDate>Sat, 17 Dec 2005 12:30:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/12/17/554646.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/554646.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/12/17/554646.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/554646.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=554646</trackback:ping><description>由于组件的概念没有模式化，以及现有技术种类的多样化，组件的形式也是多样的。大多数项目在开发过程中所考虑的组件划分方式和方法都不相同，这样导致现有项目中的组件很难重用到其它项目中。因此重组现有组件，把现有组件源代码重新分割或组合为新的组件的需求也越来越多。本文在源代码级别上根据源代码之间的调用关系，自定义了组件的划分粒度和组件的集成方法。但在此声明本文的组件集成方法不具有唯一性和最优性。

&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/554646.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>代理（Proxy）模式</title><link>http://blog.csdn.net/tyrone1979/archive/2005/09/26/489459.aspx</link><pubDate>Mon, 26 Sep 2005 08:06:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/09/26/489459.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/489459.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/09/26/489459.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/489459.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=489459</trackback:ping><description>为其他对象提供一种代理以控制对这个对象的访问。
远程代理（remote proxy）为一个对象在不同的地址空间提供局部代表。
保护代理（Protection proxy）控制对原始对象的访问。
虚拟代理（Virtual proxy）根据需要创建开销很大的对象。
智能指引（Smart Reference）取代简单的指针，它在访问对象时执行一些附加操作。包括对指向对象的引用计数，当第一次引用一个持久对象时，将它载入内存。
&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/489459.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>享元模式（Flyweight）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/09/18/483932.aspx</link><pubDate>Sun, 18 Sep 2005 12:04:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/09/18/483932.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/483932.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/09/18/483932.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/483932.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=483932</trackback:ping><description>通过共享技术有效地支持大量细粒度的对象。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/483932.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>外观模式（Facade）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/09/10/477149.aspx</link><pubDate>Sat, 10 Sep 2005 19:15:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/09/10/477149.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/477149.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/09/10/477149.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/477149.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=477149</trackback:ping><description>为子系统中的一组接口提供一个一致的界面。Facade模式定义了一个高层接口，这个接口使得这一系统更容易使用。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/477149.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>装饰（Decorator）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/09/04/471114.aspx</link><pubDate>Sun, 04 Sep 2005 19:24:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/09/04/471114.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/471114.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/09/04/471114.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/471114.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=471114</trackback:ping><description>动态地给一个对象添加一些额外的职责。
别名Wrapper
有时我们希望给某个对象而不是整个类添加一些功能。例如，一个图形用户界面工具箱允许你对任意一个用户界面组件添加一些特性，例如边框，或者一些行为，例如窗口滚动。
&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/471114.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>组合模式（Composite）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/09/02/470024.aspx</link><pubDate>Fri, 02 Sep 2005 15:06:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/09/02/470024.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/470024.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/09/02/470024.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/470024.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=470024</trackback:ping><description>将对象建立为部分-整体的层次关系或者构造树的数据表现。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/470024.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>桥接模式（Bridge）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/31/468945.aspx</link><pubDate>Wed, 31 Aug 2005 18:01:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/31/468945.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/468945.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/31/468945.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/468945.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=468945</trackback:ping><description>分离接口与实现，以实现替换实现时不必修改客户端。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/468945.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>适配器模式（Adapter）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/30/468027.aspx</link><pubDate>Tue, 30 Aug 2005 17:45:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/30/468027.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/468027.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/30/468027.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/468027.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=468027</trackback:ping><description>将某类的接口转换为客户所需的接口。Adapter能协调不兼容的接口，使它们共同工作。封装现有组件接口，使其适应客户端。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/468027.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>原型模式（prototype）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/30/468025.aspx</link><pubDate>Tue, 30 Aug 2005 17:44:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/30/468025.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/468025.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/30/468025.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/468025.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=468025</trackback:ping><description>创建一个原型实例，通过拷贝这个原型来创建其他的此类对象。原型模式可以生成大量无上限的简单对象。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/468025.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>生成器模式(Builder)</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467532.aspx</link><pubDate>Mon, 29 Aug 2005 16:52:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467532.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/467532.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467532.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/467532.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=467532</trackback:ping><description>把复杂的对象的构建与其表示分离开，以便根据程序的需要在相同的创建过程中创建不同的表示。每个生成器必须有一个相同的方法名称。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/467532.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>抽象工厂模式（Abstract Factory）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467134.aspx</link><pubDate>Mon, 29 Aug 2005 09:45:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467134.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/467134.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467134.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/467134.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=467134</trackback:ping><description>提供一个创建一系列相关或相互依赖的对象的接口，而不需指定它们具体的类。
通常在run-time式创建一个ConcreateFactory类的单体实例。这个ConcreteFactory创建ConcreteProduct对象。为了创建不同的ConcreteProduct对象，clients需要使用不同的ConcreteFactory。
&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/467134.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>工厂方法（Factory Method）</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467096.aspx</link><pubDate>Mon, 29 Aug 2005 09:08:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467096.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/467096.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/29/467096.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/467096.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=467096</trackback:ping><description>为创建的对象定义一个抽象类，虽然该抽象类负责创建对象，但由它的实现类决定哪个类需要实例化。即不在由单个工厂类决定应该实例化哪个子类。工厂类会将这决定推迟到每个子类中完成。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/467096.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>单体模式(Singleton)</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/28/466918.aspx</link><pubDate>Sun, 28 Aug 2005 14:12:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/28/466918.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/466918.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/28/466918.aspx#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/466918.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=466918</trackback:ping><description>最多只有一个实例的类。它提供了存取实例的一个全局入口。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/466918.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>设计模式资源</title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/28/466833.aspx</link><pubDate>Sun, 28 Aug 2005 10:58:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/28/466833.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/466833.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/28/466833.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/466833.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=466833</trackback:ping><description>本文提供学习设计模式的网络资源。&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/466833.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>tyrone</dc:creator><title>设计模式与GoF </title><link>http://blog.csdn.net/tyrone1979/archive/2005/08/27/466254.aspx</link><pubDate>Sat, 27 Aug 2005 11:20:00 GMT</pubDate><guid>http://blog.csdn.net/tyrone1979/archive/2005/08/27/466254.aspx</guid><wfw:comment>http://blog.csdn.net/tyrone1979/comments/466254.aspx</wfw:comment><comments>http://blog.csdn.net/tyrone1979/archive/2005/08/27/466254.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/tyrone1979/comments/commentRss/466254.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=466254</trackback:ping><description>随着设计模式领域文献增多，出现了很多设计模式的定义：
1 设计模式是对反复出现的设计问题的重复解决方案- Smalltalk手册
2 设计模式有一组描述如何实现软件开发领域中特定任务的规则所组成 Pree，1994
3 设计模式所强调的是重复出现的结构设计主题，而框架则重在细节设计和实现-Coplie和Schmit 1995
4 设计模式用以解决在特定设计情况下出现的重复设计问题，并给出该问题的一种解决方案 buschman
和Meunier等，1996
Gamma，Helm，Johnson和Vlissides[1995]合著《Design Patterns-Elements of Reusable Software》。该书成为空前的畅销书，而这四位作者被称为“Gang of Four” 也就是著名的GoF。
设计模式一书包含23中模式，都有若干个著名的应用。
&lt;img src ="http://blog.csdn.net/tyrone1979/aggbug/466254.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>