﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><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>博客园-ShanTou University::happyhippy-随笔分类-OO&amp;设计模式 </title><link>http://www.cnblogs.com/happyhippy/category/79937.html</link><description>

Silent Void
body{filter:gray;}</description><language>zh-cn</language><lastBuildDate>Sat, 24 May 2008 20:07:59 GMT</lastBuildDate><pubDate>Sat, 24 May 2008 20:07:59 GMT</pubDate><ttl>60</ttl><item><title>《Java与模式》- 行为型模式 </title><link>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792663.html</link><dc:creator>Silent Void</dc:creator><author>Silent Void</author><pubDate>Fri, 22 Jun 2007 01:47:00 GMT</pubDate><guid>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792663.html</guid><wfw:comment>http://www.cnblogs.com/happyhippy/comments/792663.html</wfw:comment><comments>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792663.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/happyhippy/comments/commentRss/792663.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/happyhippy/services/trackbacks/792663.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Strategy Pattern,<br>Template Method Pattern,<br>Observer Pattern,<br>MVC Pattern,<br>Iterator Pattern,<br>Chain of Responsibility Pattern,<br>Command Pattern,<br>Memento Pattern,<br>State Pattern,<br>Interpreter Pattern,<br>Visitor Pattern,<br>Mediator Pattern<br>&nbsp;&nbsp;<a href='http://www.cnblogs.com/happyhippy/archive/2007/06/22/792663.html'>阅读全文</a><img src ="http://www.cnblogs.com/happyhippy/aggbug/792663.html?type=1" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://happyhippy.cnblogs.com/" target="_blank">Silent Void</a> 2007-06-22 09:47 <a href="http://www.cnblogs.com/happyhippy/archive/2007/06/22/792663.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《Java与模式》- 结构型模式</title><link>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792645.html</link><dc:creator>Silent Void</dc:creator><author>Silent Void</author><pubDate>Fri, 22 Jun 2007 01:40:00 GMT</pubDate><guid>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792645.html</guid><wfw:comment>http://www.cnblogs.com/happyhippy/comments/792645.html</wfw:comment><comments>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792645.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/happyhippy/comments/commentRss/792645.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/happyhippy/services/trackbacks/792645.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Adapter Pattern, <br>Composite Pattern, <br>Decorator Pattern, <br>Flyweight Pattern,<br>Facade Pattern,<br>Brige Pattern&nbsp;&nbsp;<a href='http://www.cnblogs.com/happyhippy/archive/2007/06/22/792645.html'>阅读全文</a><img src ="http://www.cnblogs.com/happyhippy/aggbug/792645.html?type=1" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://happyhippy.cnblogs.com/" target="_blank">Silent Void</a> 2007-06-22 09:40 <a href="http://www.cnblogs.com/happyhippy/archive/2007/06/22/792645.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《Java与模式》- 创建型模式</title><link>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792622.html</link><dc:creator>Silent Void</dc:creator><author>Silent Void</author><pubDate>Fri, 22 Jun 2007 01:26:00 GMT</pubDate><guid>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792622.html</guid><wfw:comment>http://www.cnblogs.com/happyhippy/comments/792622.html</wfw:comment><comments>http://www.cnblogs.com/happyhippy/archive/2007/06/22/792622.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/happyhippy/comments/commentRss/792622.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/happyhippy/services/trackbacks/792622.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Simple Factory Pattern, <br>Factory Method Pattern, <br>Abstract Factory Pattern, <br>Singleton pattern, <br>Mutition Pattern, <br>Builder Pattern, <br>Prototype Pattern&nbsp;&nbsp;<a href='http://www.cnblogs.com/happyhippy/archive/2007/06/22/792622.html'>阅读全文</a><img src ="http://www.cnblogs.com/happyhippy/aggbug/792622.html?type=1" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://happyhippy.cnblogs.com/" target="_blank">Silent Void</a> 2007-06-22 09:26 <a href="http://www.cnblogs.com/happyhippy/archive/2007/06/22/792622.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>面向对象设计的原则</title><link>http://www.cnblogs.com/happyhippy/archive/2007/05/08/739476.html</link><dc:creator>Silent Void</dc:creator><author>Silent Void</author><pubDate>Tue, 08 May 2007 12:40:00 GMT</pubDate><guid>http://www.cnblogs.com/happyhippy/archive/2007/05/08/739476.html</guid><wfw:comment>http://www.cnblogs.com/happyhippy/comments/739476.html</wfw:comment><comments>http://www.cnblogs.com/happyhippy/archive/2007/05/08/739476.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/happyhippy/comments/commentRss/739476.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/happyhippy/services/trackbacks/739476.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:     SRP，单一职责原则(The Single Responsibility Priciple);OCP，开放封闭原则(The Open-Close Priciple);LSP，Liskov替换原则(The Liskov Substitution Priciple);DIP，依赖倒置原则(The Dependency Inversion Priciple);ISP，接口隔离原则(The Interface Segregation Interface);<br>    REP，重用发布等价原则;CCP，共同封闭原则;CRP，共同重用原则;<br>    ADP，无环依赖原则;SDP，稳定依赖原则;SAP，稳定抽象原则&nbsp;&nbsp;<a href='http://www.cnblogs.com/happyhippy/archive/2007/05/08/739476.html'>阅读全文</a><img src ="http://www.cnblogs.com/happyhippy/aggbug/739476.html?type=1" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://happyhippy.cnblogs.com/" target="_blank">Silent Void</a> 2007-05-08 20:40 <a href="http://www.cnblogs.com/happyhippy/archive/2007/05/08/739476.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>从“Liskov替换原则”和“Refused Bequest”看“正方形为什么不能继承长方形”</title><link>http://www.cnblogs.com/happyhippy/archive/2007/05/06/737040.html</link><dc:creator>Silent Void</dc:creator><author>Silent Void</author><pubDate>Sun, 06 May 2007 04:58:00 GMT</pubDate><guid>http://www.cnblogs.com/happyhippy/archive/2007/05/06/737040.html</guid><wfw:comment>http://www.cnblogs.com/happyhippy/comments/737040.html</wfw:comment><comments>http://www.cnblogs.com/happyhippy/archive/2007/05/06/737040.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cnblogs.com/happyhippy/comments/commentRss/737040.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/happyhippy/services/trackbacks/737040.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 目前也有一些技术可以支持我们将合理假设明确化，例如测试驱动开发(Test-Driven Development，TDD)和基于契约设计(Design by Contract，DBC)。但是有谁知道设计的使用者会作出什么样的合理假设呢？大多数这样的假设都很难预料。如果我们预测所有的假设的话，我们设计的系统可能也会充满不必要的复杂性。PPP一书中推荐的做法是：只预测那些最明显的违反LSP的情况，而推迟对所有其他假设的预测，直到出现相关的脆弱性的臭味(Bad Smell)时，才去处理它们。我觉得这句话还不够直白，Martin Fowler的《Refactoring》一书中“Refused Bequest”(拒收的遗赠)描述的更详尽：子类继承父类的methods和data，但子类仅仅只需要父类的部分Methods或data，而不是全部methods和data；当这种情况出现时，就意味这我们的继承体系出现了问题。例如上面的Rectangle和Square，Square本身长和宽相等，几何学中用边长来表示边，而Rectangle长和宽之分，直观地看，Square已经Refused了Rectangl&nbsp;&nbsp;<a href='http://www.cnblogs.com/happyhippy/archive/2007/05/06/737040.html'>阅读全文</a><img src ="http://www.cnblogs.com/happyhippy/aggbug/737040.html?type=1" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://happyhippy.cnblogs.com/" target="_blank">Silent Void</a> 2007-05-06 12:58 <a href="http://www.cnblogs.com/happyhippy/archive/2007/05/06/737040.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《OOD启思录》：61条面向对象设计的经验原则</title><link>http://www.cnblogs.com/happyhippy/archive/2007/05/04/735670.html</link><dc:creator>Silent Void</dc:creator><author>Silent Void</author><pubDate>Fri, 04 May 2007 06:26:00 GMT</pubDate><guid>http://www.cnblogs.com/happyhippy/archive/2007/05/04/735670.html</guid><wfw:comment>http://www.cnblogs.com/happyhippy/comments/735670.html</wfw:comment><comments>http://www.cnblogs.com/happyhippy/archive/2007/05/04/735670.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/happyhippy/comments/commentRss/735670.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/happyhippy/services/trackbacks/735670.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: “你不必严格遵守这些原则，违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃，若违背了其中的一条，那么警铃就会响起。” ----- Arthur J.Riel &nbsp;&nbsp;<a href='http://www.cnblogs.com/happyhippy/archive/2007/05/04/735670.html'>阅读全文</a><img src ="http://www.cnblogs.com/happyhippy/aggbug/735670.html?type=1" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://happyhippy.cnblogs.com/" target="_blank">Silent Void</a> 2007-05-04 14:26 <a href="http://www.cnblogs.com/happyhippy/archive/2007/05/04/735670.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>