??xml version="1.0" encoding="utf-8" standalone="yes"?>国产日韩欧美成人,欧美一区91,国产精品国产三级国产aⅴ入口http://www.shnenglu.com/Tim/category/10025.html灉|的思考,严}的实?/description>zh-cnTue, 29 Mar 2011 16:13:59 GMTTue, 29 Mar 2011 16:13:59 GMT60学习和理解设计模?/title><link>http://www.shnenglu.com/Tim/archive/2011/03/29/142731.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Tue, 29 Mar 2011 03:07:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2011/03/29/142731.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/142731.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2011/03/29/142731.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/142731.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/142731.html</trackback:ping><description><![CDATA[     摘要: 对Q何事物或原理的研I和学习Q一定要始终C一个要点:只有思维先进入这一层,也就是在大脑里Ş成分析该问题的上下文环境Q在q个基础上,然后再用惛_的思维方式考虑问题Q才是清晰的Q才是正的。尤其是Ҏ(gu)层原理和技术,必须是这栗?nbsp; <a href='http://www.shnenglu.com/Tim/archive/2011/03/29/142731.html'>阅读全文</a><img src ="http://www.shnenglu.com/Tim/aggbug/142731.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2011-03-29 11:07 <a href="http://www.shnenglu.com/Tim/archive/2011/03/29/142731.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《大话设计模式》———?1、无熟h隑֊事?——_c特法则http://www.shnenglu.com/Tim/archive/2009/04/21/80653.htmlTimTimTue, 21 Apr 2009 15:25:00 GMThttp://www.shnenglu.com/Tim/archive/2009/04/21/80653.htmlhttp://www.shnenglu.com/Tim/comments/80653.htmlhttp://www.shnenglu.com/Tim/archive/2009/04/21/80653.html#Feedback0http://www.shnenglu.com/Tim/comments/commentRss/80653.htmlhttp://www.shnenglu.com/Tim/services/trackbacks/80653.html

读《大话设计模式》———?/span>11?/span>无熟人难办事Q——_c特法则

q米Ҏ(gu)则(LoDQ,如果两个cM必彼此直接通信Q那么这两个cd不应当发生直接的怺作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过W三者调用。[J&DP]

本法则强调的是,在类的设计上Q应该尽量保证类之间的松耦合。类之间的关pM应该必须是直接调用的Q而应该是通过抽象来实现各自的功能。就如同人际关系办事情,如果是必要针对个hQ那么没有熟人或者熟Z在,那就办不成了Q这U体制显然不好!比如Q希望政府办的事情,应该不需要知道要谁来处理Q只是统一向政府提个需求,然后他们内部zh处理好!q米Ҏ(gu)则,最知识原则?/span>



Tim 2009-04-21 23:25 发表评论
]]>
读《大话设计模式》———?0、模板方法模?/title><link>http://www.shnenglu.com/Tim/archive/2009/04/21/80648.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Tue, 21 Apr 2009 14:41:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2009/04/21/80648.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/80648.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2009/04/21/80648.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/80648.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/80648.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class=Section0 style="LAYOUT-GRID: 15.6pt none"> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; PADDING-TOP: 0pt; TEXT-ALIGN: center"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">读《大话设计模式》———?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">10</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">模板Ҏ(gu)</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">模式</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">模板Ҏ(gu)模式Q定义一个操作中的算法的骨架Q而将一些步聚gq到子类中。模板方法得子cd以不改变一个算法的l构卛_重定义该法的某些特定不聚。[DP]</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">模板Ҏ(gu)的优点:通过把不变的行ؓ攑ֈ父类Qƈ在父cM提供模板Ҏ(gu)Q父cMq可能内部调用一些细节函敎ͼ但是q些l节函数是虚函数Q由不同的子cdC同的具体功能。这样子cd成特定的行ؓQ但是不需要重复的代码?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">好了Q简单的模板Ҏ(gu)模式Q同h面向对象中承和多态的l合q用。学好了Q?/span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><o:p></o:p></span></p> </div> <!--endfragment--> <img src ="http://www.shnenglu.com/Tim/aggbug/80648.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2009-04-21 22:41 <a href="http://www.shnenglu.com/Tim/archive/2009/04/21/80648.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《大话设计模式》———?、简历复印——原型模?/title><link>http://www.shnenglu.com/Tim/archive/2009/04/20/80572.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Mon, 20 Apr 2009 14:15:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2009/04/20/80572.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/80572.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2009/04/20/80572.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/80572.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/80572.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class=Section0 style="LAYOUT-GRID: 15.6pt none"> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; PADDING-TOP: 0pt; TEXT-ALIGN: center"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">读《大话设计模式》———?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">9</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">历复?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">—?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">原型</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">模式</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">原型模式Q用原型实例指定创徏对象的种c,q且通过拯q些原型创徏新的对象。[DP]</span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">原型模式其实是从一个对象再创徏另外一个可定制的对象,而且不需知道M创徏的细节。看到这些说明,我想q是不是可以理解为c++中的拯构造函数呢Q这可能是需求中最常见的模式了?/span><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="PADDING-RIGHT: 0pt; MARGIN-TOP: 0pt; PADDING-LEFT: 0pt; MARGIN-BOTTOM: 0pt; PADDING-BOTTOM: 0pt; TEXT-INDENT: 21pt; PADDING-TOP: 0pt; TEXT-ALIGN: left"><span style="FONT-SIZE: 10.5pt; COLOR: rgb(0,0,0); FONT-FAMILY: '宋体'; mso-spacerun: 'yes'">如果从这个角度理解,无疑的,q个模式可以通过了。只是他告诉我们Q设计的时候考虑扚w生的情况,所以需要提供复制的Ҏ(gu)。至于文中所讲的复制和深复Ӟ好像C#中才考虑q个问题Qc++中指针引用等是必要特定处理的。学好了Q?/span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><o:p></o:p></span></p> </div> <!--endfragment--> <img src ="http://www.shnenglu.com/Tim/aggbug/80572.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2009-04-20 22:15 <a href="http://www.shnenglu.com/Tim/archive/2009/04/20/80572.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《大话设计模式》———?、雷锋依然在人间——工厂方法模?/title><link>http://www.shnenglu.com/Tim/archive/2009/04/20/80571.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Mon, 20 Apr 2009 14:02:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2009/04/20/80571.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/80571.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2009/04/20/80571.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/80571.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/80571.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class=Section0 style="LAYOUT-GRID: 15.6pt none"> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt; TEXT-ALIGN: center"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><font face=宋体>读《大话设计模式》———?、雷锋依然在人间——工厂方法模?/font></span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: justify"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><font face=宋体>单工厂模式、工厂方法模式,q两者的区别我想֐思义Q前者讲的是q个模式用到一个简单工厂,但是后者强调的是工厂方法,其实意思就是该模式中工厂设计很重要?/font></span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: justify"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><font face=宋体>其实理解了简单工厂,基本上只要再E微看一下工厂模式的设计Q就很容易理解这两个模式。不q,g工厂Ҏ(gu)模式是简单工厂模式的改进版,单工厂没有存在的必要。但是事实ƈ非如此,在扩展不l常的时候,一个简单工厂就可以了。但是要是经常有怼功能的扩展需求,那么工厂Ҏ(gu)模式p有h(hun)g些?/font></span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: justify"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><font face=宋体>在代码Ş式上Q简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断Q根据客L的选择条g动态实例化相关的类Q对于客L来说Q去除了与具体品的依赖。但是,工厂Ҏ(gu)是把单工厂的内部逻辑判断Ud了客L代码来进行。所以,惌增加功能Q就同时需要修改客L代码。但是这样代码结构还是很清晰的,所以两者各有千U!</font></span><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: '宋体'; mso-spacerun: 'yes'"><o:p></o:p></span></p> </div> <!--endfragment--> <img src ="http://www.shnenglu.com/Tim/aggbug/80571.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2009-04-20 22:02 <a href="http://www.shnenglu.com/Tim/archive/2009/04/20/80571.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《大话设计模式》———?、ؓ别h做嫁——代理模?/title><link>http://www.shnenglu.com/Tim/archive/2009/04/16/80197.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Thu, 16 Apr 2009 14:41:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2009/04/16/80197.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/80197.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2009/04/16/80197.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/80197.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/80197.html</trackback:ping><description><![CDATA[     摘要: 代理模式中,真正动作代理做的事情Q自׃要定义做的方法,是自己要处理具体的事情。而代理,无非是利用成员对象q行接口转移|了。但是现实世界,代理是要全权处理所代理的事情的。游戏开发公司完全只是开发,与玩家的交互Q服务器的维护则完全是运营代理商的事。所以,在学习代理模式时Q我觉得应该首先明白在思想上对q两者进行弄明白?<br> <br>代理模式Qؓ其他对象提供一U代理以控制对这个对象的讉K[DP]?<br> <br>如果从以上这个定义,我们q可以挖掘出另一U层ơ的意思:代理模式为真实对象的讉K提供了安全性屏障?<br>  <a href='http://www.shnenglu.com/Tim/archive/2009/04/16/80197.html'>阅读全文</a><img src ="http://www.shnenglu.com/Tim/aggbug/80197.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2009-04-16 22:41 <a href="http://www.shnenglu.com/Tim/archive/2009/04/16/80197.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《大话设计模式》———?、穿什么有q么重要Q——装饰模?/title><link>http://www.shnenglu.com/Tim/archive/2009/04/16/80183.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Thu, 16 Apr 2009 12:55:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2009/04/16/80183.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/80183.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2009/04/16/80183.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/80183.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/80183.html</trackback:ping><description><![CDATA[     摘要: 装饰模式ȝQ装饰模式是Z为已有功能动态的d更多功能的一U方式?<br>他把每个要装饰的功能攑֜单独的类中,q让每个cd装他所要装饰的对象Q因此,当需要执行特定行为时Q客户代码就可以在运行时Ҏ(gu)需要有选择地、按序C用装饰功能包装对象了[DP]?nbsp; <a href='http://www.shnenglu.com/Tim/archive/2009/04/16/80183.html'>阅读全文</a><img src ="http://www.shnenglu.com/Tim/aggbug/80183.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2009-04-16 20:55 <a href="http://www.shnenglu.com/Tim/archive/2009/04/16/80183.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>读《大话设计模式》———?、会修电(sh)脑不会修攉机?——依赖倒{原则http://www.shnenglu.com/Tim/archive/2009/03/31/78514.htmlTimTimTue, 31 Mar 2009 15:10:00 GMThttp://www.shnenglu.com/Tim/archive/2009/03/31/78514.htmlhttp://www.shnenglu.com/Tim/comments/78514.htmlhttp://www.shnenglu.com/Tim/archive/2009/03/31/78514.html#Feedback0http://www.shnenglu.com/Tim/comments/commentRss/78514.htmlhttp://www.shnenglu.com/Tim/services/trackbacks/78514.html

读《大话设计模式》———?、会修电(sh)脑不会修攉机?——依赖倒{原则

?sh)脑比收x单吗Qؓ什么拆开两者,很明显,攉机看hq要比电(sh)脑更复杂呢?原来Q好的架构好的设计在哪里都是通用的!?sh)脑各部件缺一不可Q但是绝不是只针Ҏ(gu)一个或者某一cM品,所有不同品的厂商都只服从一个统一的标准,q样Q我们就看不出电(sh)脑中哪一个是高层了。CPUQ内存?或者主板?。。。都不是Q谁也不依赖谁,依赖的是一个统一的接口标准!

依赖倒{原则Q抽象不应该依赖l节Q细节应该依赖抽象。具体到一个实际问题编E,应该是定义好的接口,q个接口不属于哪一个具体的东西Q应该是一个高层的抽象Q然后就是针Ҏ(gu)口编E,而不要对实现~程?/font>

讲到q里Q似乎世界的一切问题都q刃而解Q一切显得是那样的轻而易举!慢!一定不要自负的轻视Ҏ(gu)Q好Q谁都很听话的服从这个抽象接口,那么q个抽象接口怎么来?一切都在变Q难道这个抽象类是可以q背q个哲学上绝对真理的特例家伙Q他可能自n都要不停的变Q完了,到哪里去找这样一Ҏ(gu)呀Q?/font>

标尺也是自己定义的!无非是会需要随实际情况变化吗?不要忘了Q我们已l学会的l技——开䏀封闭原则。我们保证提供基本功能的接口不变Q实际需求增加时Q只要做开放扩展即可,面向对象的承能帮助我们扑ֈ正确适用实际问题的方法,问题不就解决了吗Q恩Q这栯计ȝ出统一的抽象接口或者抽象类是满x们的需求的Q不q,q有关键的一点,q一pdcd要满一个原则:里氏代换原则Q子cd必须能够替换掉他们的父类型。这个原则在许多别的情况下,q不一定是完全满的,但是此处用做标尺的抽象类Q必要满Q子cd以扩展做更多的事情,但是父类已经定义好的接口子类必须有实玎ͼq且也必L做一致的事情?/font>

依赖倒{原则说明了:好的面向对象设计不应该是依赖具体实现中的那一部分Q应该是针对抽象~程而不是针对细节编E,即程序中所有的依赖关系都是l止于抽象类或者接口。那P高层、底层的改变都不会导致另外一部分要做变化了?/font>

从北京去U约喽,;-)Q还有陆路还要vz,哈哈Q变化再大我也不,因ؓ我做的是飞机Q不q,你要是愿意先客R再渡轮也可以的哦~都是交通工L抽象嘛!应该不会q有那个大侠想着依赖道\的,先穿跑鞋再换个泳去的吧~



Tim 2009-03-31 23:10 发表评论
]]>
读《大话设计模式?--------------4、考研求职两不?---开?闭原则http://www.shnenglu.com/Tim/archive/2009/03/30/78427.htmlTimTimMon, 30 Mar 2009 15:34:00 GMThttp://www.shnenglu.com/Tim/archive/2009/03/30/78427.htmlhttp://www.shnenglu.com/Tim/comments/78427.htmlhttp://www.shnenglu.com/Tim/archive/2009/03/30/78427.html#Feedback0http://www.shnenglu.com/Tim/comments/commentRss/78427.htmlhttp://www.shnenglu.com/Tim/services/trackbacks/78427.html

读《大话设计模式?--------------4、考研求职两不?---开?闭原则

开䏀封闭原则,是说软g实体Q类、模块、函数等{)应该可以扩展Q但是不可修攏V[ASD]。这个原则有两个特征Q对于扩展是开攄Q另一个是说对于更Ҏ(gu)闭的?/font>

本原则经q作者精辟的阐述Q马上就让我们在哲学上对一些问题的看法豁然开朗:看v来两个完全抵触的东西Q利用扩展与闭原则p很好的解冟뀂什么东西必d闭,什么东西可以扩展?L和业l是必须关闭修改的,但是制度却是可以扩展开攄Q难道这仅仅是一U计机理论吗?q简直是处事之道Q?/font>

如何应对变化Q——除非你_强大Q所有的人和事都无条件的服从你的Q否则就需要面Ҏ(gu)法预料的变化。事实上Q对未来变化的估计和处理能力正是智慧的体现。好像离E序设计来远了哦~a归正传,既然变化是无法避免的Q那么对已有的机制进行对应的修改也是必须的(真的?#8220;以不变应万变”么?Q。所以,“l对的修改关闭是不可能的。无论模块是多么?#8216;闭’Q都会存在一些无法对之封闭的变化。既然不可能完全闭Q设计h员必d于他设计的模块应该对那种变化闭做出选择。他必须先猜出最有可能发生的变化U类Q然后构造抽象来隔离那些变化[ASD]?#8221;

在我们最初编写代码时Q假讑֏化不会发生。当变化发生Ӟ我们创建抽象来隔离以后发生的同cd化[ASD].”q里同时也反映了一个问题:要架构好的程序,我们需要善于分析程序的变化Q善于ȝ善于抽象Q当遇到问题了,我们应该思考这一c问题,q作出抽象改善程序的架构Q提取出真正的封闭的和开攄部分?/font>

大鸟的ȝQ?#8220;开䏀封闭原则是面向对象设计的核心所在。遵循这个原则可以带来面向对象技术所声称的巨大好处,也就是可l护、可扩展、可复用、灵zL好。开发h员应该仅对程序中呈现出频J变化的那些部分做出抽象Q然而,对于应用E序中的每个部分都刻意地q行抽象同样不是一个好L。拒l不成熟的抽象和抽象本n一样重要[ASD]?#8221;

很好Q从本设计模式学C很多很多Q远q超q了E序设计的范_哈哈Q考研的例子我觉得也很合适嘛。全力以赴是必须的,两手准备也是一U灵zR只要别忘了自己当前的重点——就像快乐一P得到成功的目标是关闭的,但过E是开攄Q?/font>



Tim 2009-03-30 23:34 发表评论
]]>
读《大话设计模式?---------------3、拍摄UFO------单一职责原则http://www.shnenglu.com/Tim/archive/2009/03/30/78426.htmlTimTimMon, 30 Mar 2009 15:33:00 GMThttp://www.shnenglu.com/Tim/archive/2009/03/30/78426.htmlhttp://www.shnenglu.com/Tim/comments/78426.htmlhttp://www.shnenglu.com/Tim/archive/2009/03/30/78426.html#Feedback0http://www.shnenglu.com/Tim/comments/commentRss/78426.htmlhttp://www.shnenglu.com/Tim/services/trackbacks/78426.html

读《大话设计模式?---------------3、拍摄UFO------单一职责原则


       q个模式应该是最Ҏ(gu)理解的一个模式了。不q解释意义还是比较有深度的:有一个类而言Q应该仅有一个引起它变化的原因[ASD]。职责越单一Q功能就独立。也没有复杂度Q就更好l护Q也更利于复用了?/font>

       作者对q个模式的运用和解释已经很清楚了“软g设计真正要做的许多内容,是发现职责q把那些职责怺分离[ASD].其实要去判断是否应该分离出类来,也不难,那就是如果你能够惛_多于一个的动机L变一个类Q那么这个类具有多于一个的职责[ASD],应该考虑cȝ职责分离?#8221;



Tim 2009-03-30 23:33 发表评论
]]>
读《大话设计模式?---------------2、商Z销-----{略模式http://www.shnenglu.com/Tim/archive/2009/03/29/78322.htmlTimTimSun, 29 Mar 2009 15:25:00 GMThttp://www.shnenglu.com/Tim/archive/2009/03/29/78322.htmlhttp://www.shnenglu.com/Tim/comments/78322.htmlhttp://www.shnenglu.com/Tim/archive/2009/03/29/78322.html#Feedback0http://www.shnenglu.com/Tim/comments/commentRss/78322.htmlhttp://www.shnenglu.com/Tim/services/trackbacks/78322.html

读《大话设计模式?/font>
----------------2?/font>商场促销-----{略模式

从本章我首先得到的第一个信息是Q策略模式的问题Q简单工厂模式也能实玎ͼ推而广之,同一个问题,可能许多模式都能实现Q但是这里d在一个更优的问题。至于真正用那个模式Q就是C++之父的那句话了:需要经验智慧了?/font>

W二个马上引出问题的l论Q?#8220;面向对象的编E,q不是类多好Q类的划分是Z装Q但分类的基是抽象,h相同属性和功能的对象的抽象集合才是c?#8221;。这一句,我觉得是最深刻的道出类设计原则的精辟之语。意思:W一、类q多好Q设计一个类是有价值有意义的:是ؓ了封装(单工厂的那个工厂cd是一个纯装作用的类Q但大多数情况徏立一个类q需要别的理由,可能单工厂属于一个特例)。第二、何时设计类Q当处理的看g些杂乱无章的东西h相同的属性和功能Ӟ有必要创徏c,因ؓQ用对象实现某些功能在可l护可复用等斚w要比直接的函数过E似的编E要好得多。以上两点,可能是怎样实际问题抽象成cȝU诀了!

当时我看到现金收费工厂类Ӟ我心里已lؓ“菜鸟”拍案叫绝了。他的学习能力好强呀Q⊙H⊙b汗!然而,大鸟后面的那些一针见血的话同时也让我进入了沉思。。。当我们发现自己好不Ҏ(gu)掌握了一样东西,我们g认ؓ自己学得是易{经Q以后就可以以此横扫天下了,但是q没出山门,p路上的山贼给鄙视了。。。这可能是少林寺有了易筋l还要有72l技的原因。。?/font>

被鄙视的原因Q简单工厂模式只是解决了对象的创建问题,工厂需要包括所有的对象的创建,如果对象形式l常变化Q就需要经常改动工厂,以致代码重新~译。结论:面对对象形式不断变化的情况,应该采取比工厂模式更好的武功Q?/font>

q怺q本U籍q不难找Q策略模?--它定义了法家族Q分别封装v来,让他们之间可以互相替换,此模式让法的变化,不会影响C用算法的客户。[DP]

问题Q在2.7{略模式解析之上的部分,作者最l利用的Ҏ(gu)是将{略模式与简单工厂模式结合v来用Q当然与之对比的单工厂模式显然稍逊一{V但是我个h的观Ҏ(gu)Q此处采用单U的{略模式而不是两者结合更好。即2.5的实玎ͼ因ؓ我认为:加入工厂模式同时将本问题中工厂模式的问题带q来了,{略模式的Context需要经帔R新编译;而相对于法l常变化的情况,算法选择交给客户端应该还是可取的。现对而言Q我认ؓ前者更好操作。不够,当我d本章最后时Q我才又一ơ发现我的孤陋寡闻!q有更好的招Q后面再学?/font>

{略模式的关键之一----------Context:“{略模式的StrategycdơؓContext定义了一pd的可供重用的法或行为。承有助于析取些算法中的公共功?#8221;?/font>

{略模式理解核心-------------“{略模式是用来装法?/font>Q但在实践中Q我们发现可以用它来装几乎Mcd的规则,只要在分析过E中听到需要在不同旉应用不同的业务规则,可以考虑使用{略模式处理q种变化的可能性[DPE]”?/font>

在基本的{略模式中,选择所用的具体实现的职责由客户端对象承担,q{l策略模式的Context对象[DPE]。这是策略模式本w纯_的定义Q所以,“选择所用最l怎样处理”q有很多文章可做Q?/font>

反射反射Q程序员的快?#8221;Q我以前又从来没有听q。。。怎么让我惌v了慕容家族的l技-----斗{星移了呢Q我的神呀Q?/font>

 

 

 



Tim 2009-03-29 23:25 发表评论
]]>
读《大话设计模式?---------------1、代码无错就是优Q?--单工厂模?/title><link>http://www.shnenglu.com/Tim/archive/2009/03/29/78307.html</link><dc:creator>Tim</dc:creator><author>Tim</author><pubDate>Sun, 29 Mar 2009 13:46:00 GMT</pubDate><guid>http://www.shnenglu.com/Tim/archive/2009/03/29/78307.html</guid><wfw:comment>http://www.shnenglu.com/Tim/comments/78307.html</wfw:comment><comments>http://www.shnenglu.com/Tim/archive/2009/03/29/78307.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/Tim/comments/commentRss/78307.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Tim/services/trackbacks/78307.html</trackback:ping><description><![CDATA[<p>读《大话设计模式?---------------1、代码无错就是优Q?--单工厂模?br>       如果说面向对象没有用Q如果争辩自己当前处理的问题是一个很单的问题所以自׃用面向对象的Ҏ(gu)来处理。那么,Ҏ(gu)?#8220;喝酒唱歌Qh生真?#8221;?#8220;寚w当歌Qh生几?#8221;是一个很有针Ҏ(gu)很有讽刺意义的例子Q这直是作者的来之笔Q面向对象的巨大意义Q第一、可l护Q第二、可复用Q第三、可扩展Q第四、灵zL好。写E序的发展:学习了面向对象的分析设计~程思想Q开始考虑通过装、ѝ多态把E序的耦合度降低;用设计模式得程序更加的灉|Q容易修改,q且易于复用?br>       其实Q从以上q段话,我觉得也说明了设计模式是在面向对象方法基之上的,所以首先应该熟l的q用面向对象的基本特征:装、承和多态!从本章中的计器E序的例子,我们应该敏感的发现这样一个问题:无论多么的E序Q都可以用到面向对象Q都可以用封装、ѝ多态!而这个看h很小很简单的l论Q我q个C++E序员竟然之前还是持否认态度Q说实话Q当时看到这些,我很震惊Q?br>       q其实反映的是Y件设计的需求:一定要降低耦合度,让其更容易维护更好复用更灉|~Q记住了Q清晰合理的面向对象Q怎么都不q分Q?br>       单工厂模式:l于由面向对象进入设计模式了Qؓ什么叫单工厂模式而不叫工厂模式或者负责工厂模式了Q因个工厂确实就是一个很单的逻辑判断Q一般只需一个switch卛_Q不q其作用却也是很好很大的Q他负责创徏别的cȝ实例Q?nbsp; <br>       单工厂的q用Q如果将针对从一个父cȝ承的多个子类q行不同条g下的实例化和q用{,q个选择判断的条件可能比较多Q显CZؓ客户端代码显得冗余,或者那些子cLw就是不希望让客L看到的,此时这些判断放C个统一的工厂里面生产将是一U很好的装模式。记住:工厂只要一个,也就是说l常要选择处理许多同父cd象。一个工厂是只有自己的一个品线的,要生产本质差别不大但是种cȝ多的产品的工厂才有意义!内部q要进行很多很多复杂的加工处理才能形成产品Q相反,应该是简单处理就能得C品,q才是简单工厂模式。也是_是很单的处理最l得到某U品,甚至都不负责产品出厂后的l护工作。毕竟,他的定位只是一个小作坊Q用面向对象的思想Q一个类实现一个函数的功能Q?/p> <img src ="http://www.shnenglu.com/Tim/aggbug/78307.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Tim/" target="_blank">Tim</a> 2009-03-29 21:46 <a href="http://www.shnenglu.com/Tim/archive/2009/03/29/78307.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://z10669.com" target="_blank">Ů߾Ʒѹۿ</a>| <a href="http://qiruiwangluo.com" target="_blank">ŷһ</a>| <a href="http://ziwufuren.com" target="_blank">ŷeeƵ</a>| <a href="http://548710.com" target="_blank">޹һ</a>| <a href="http://cnxwlm.com" target="_blank">޹Ʒһҳav </a>| <a href="http://1x118.com" target="_blank">þav˾Ʒվ</a>| <a href="http://xinghejiuye.com" target="_blank">һɫþüձ88ۺ </a>| <a href="http://021-job.com" target="_blank">ǾþõƵ</a>| <a href="http://2938476.com" target="_blank">һ</a>| <a href="http://1277k.com" target="_blank">޹Ƭɫ</a>| <a href="http://jyboke.com" target="_blank">ƷƵۿ</a>| <a href="http://4254888.com" target="_blank">þþùƷһ</a>| <a href="http://91x8.com" target="_blank">þþƷŷպƷ</a>| <a href="http://zd-jm.com" target="_blank">޹Ƶ</a>| <a href="http://480192.com" target="_blank">պһƬַ</a>| <a href="http://g2000vip.com" target="_blank">һëƬ</a>| <a href="http://674446.com" target="_blank">ŷ߲</a>| <a href="http://www17bxbx.com" target="_blank">ŷ˵</a>| <a href="http://erosgems.com" target="_blank">þþ</a>| <a href="http://www4848xx.com" target="_blank">ŷƷһ</a>| <a href="http://517hc5.com" target="_blank">ŷþþ</a>| <a href="http://3333328.com" target="_blank">þѹƷ</a>| <a href="http://o10669.com" target="_blank">Ƶ</a>| <a href="http://521mu.com" target="_blank">þþþƷƵ</a>| <a href="http://tv-miya188.com" target="_blank">99ۺ</a>| <a href="http://wwww76.com" target="_blank">þþƷ1</a>| <a href="http://tonglijinshu.com" target="_blank"></a>| <a href="http://www16axax.com" target="_blank">þþ޾Ʒһ</a>| <a href="http://qiezi2vip.com" target="_blank">պ޾ƷƵ</a>| <a href="http://cca22.com" target="_blank">þþƷ</a>| <a href="http://w7727.com" target="_blank">ҹƷ</a>| <a href="http://shruhan.com" target="_blank">þݺҹҹˬ</a>| <a href="http://lctongda.com" target="_blank">ҹŷ߲</a>| <a href="http://zj-jufeng.com" target="_blank">רŷƷͬ</a>| <a href="http://605799.com" target="_blank">ҹƷƵ</a>| <a href="http://atmub.com" target="_blank">ŷպһ</a>| <a href="http://dfrllaser.com" target="_blank">ŷvava㽶</a>| <a href="http://saobi6.com" target="_blank">뾫Ʒһav </a>| <a href="http://arielteam.com" target="_blank">Ƶ</a>| <a href="http://sao320.com" target="_blank">ŮվŷƷ</a>| <a href="http://taominze.com" target="_blank">ŷһþþ</a>| <a href="http://avse69.com" target="_blank">ŷþһ</a>| <a href="http://www47777.com" target="_blank">ŷƵ߹ۿ</a>| <a href="http://aqdav81.com" target="_blank">պ߿Ƭ</a>| <a href="http://4449992.com" target="_blank">ҹƷþ</a>| <a href="http://7282789.com" target="_blank">ƵƵ</a>| <a href="http://scratbag.com" target="_blank">ŷ˾Ʒ߲</a>| <a href="http://xccp4888.com" target="_blank">ѳ˼Ƶ</a>| <a href="http://1x118.com" target="_blank">һ߹ۿ</a>| <a href="http://xxxyyy168.com" target="_blank">ѹۿ߹ۿ</a>| <a href="http://www49966.com" target="_blank">ŮþþƷ</a>| <a href="http://008528.com" target="_blank">vaۺ辫Ʒ</a>| <a href="http://339871.com" target="_blank">һɫþ99Ʒۺ</a>| <a href="http://0999555.com" target="_blank">ѸƵ</a>| <a href="http://3597777.com" target="_blank">ŷxartϵи</a>| <a href="http://cz-hongbangfloor.com" target="_blank">߹ۿƷ</a>| <a href="http://haole081.com" target="_blank">߹ۿƵһ </a>| <a href="http://spvicarb.com" target="_blank">þþƷһ</a>| <a href="http://fcponteggi.com" target="_blank">ƷƵ</a>| <a href="http://saobi6.com" target="_blank">Ļ</a>| <a href="http://7777731.com" target="_blank">һĻ </a>| <a href="http://zunguidq.com" target="_blank">þwww_ƬѲ</a>| <a href="http://jjy891.com" target="_blank">ҹƷwww</a>| <a href="http://www-9694.com" target="_blank">ƷŮþøվ</a>| <a href="http://irongxun.com" target="_blank">޾Ʒŷһ</a>| <a href="http://394141.com" target="_blank">99</a>| <a href="http://405151.com" target="_blank">ŷպһ</a>| <a href="http://pnxingmei.com" target="_blank">99һ</a>| <a href="http://by274.com" target="_blank">ҹƷþþþӰ</a>| <a href="http://66889h.com" target="_blank">ƷƬ㶮</a>| <a href="http://mom8888.com" target="_blank">һƵ</a>| <a href="http://ggg4444.com" target="_blank">㽶Ƶ߹ۿ</a>| <a href="http://clgtzz.com" target="_blank">ƷӰȷ</a>| <a href="http://gzw33.com" target="_blank">þavһ</a>| <a href="http://74va.com" target="_blank">ŷһ</a>| <a href="http://583775.com" target="_blank">޾þƵ</a>| <a href="http://7171152.com" target="_blank">Ʒþþþþav</a>| <a href="http://ndr666.com" target="_blank">ᆱѡ</a>| <a href="http://91x8.com" target="_blank">ŷպ</a>| <a href="http://66y3.com" target="_blank">69˾ƷƵ</a>| <a href="http://www49773.com" target="_blank">ŷ</a>| <a href="http://wwwby113.com" target="_blank">Ƶŷպ</a>| <a href="http://free18teen.com" target="_blank">þñۺɫݺ</a>| <a href="http://wwwhhh396.com" target="_blank">ˮһ</a>| <a href="http://329374.com" target="_blank">ġϵоƷv1С˵</a>| <a href="http://6168138.com" target="_blank">ŷƵ</a>| <a href="http://8xyxs1.com" target="_blank">ҹþþþþþþõӰ</a>| <a href="http://www39pao.com" target="_blank">ŷҹ߹ۿ</a>| <a href="http://yngtxny.com" target="_blank">ŷһ2Ƶ߹ۿ</a>| <a href="http://345521.com" target="_blank">ŷ99Ƶۿ</a>| <a href="http://youjizzbox.com" target="_blank">99reƷ</a>| <a href="http://baoyu1313.com" target="_blank">ŮƷƵ</a>| <a href="http://023nszz.com" target="_blank">ŷ1112Сxxxx</a>| <a href="http://xingcheny.com" target="_blank">ƵƷһ</a>| <a href="http://m72722.com" target="_blank">ŷgayƵ</a>| <a href="http://cc1024.com" target="_blank">Ƶһ</a>| <a href="http://heyzo1031.com" target="_blank">ձavһ</a>| <a href="http://91porn42.com" target="_blank">ŷƷƵ</a>| <a href="http://bgflee.com" target="_blank">ҹƷ</a>| <a href="http://88848885.com" target="_blank">޸ר</a>| <a href="http://www37999.com" target="_blank">ɫav㽶һ</a>| <a href="http://bby99.com" target="_blank">ŷձר</a>| <a href="http://ahhccz.com" target="_blank">Ʒһ߹ۿ</a>| <a href="http://www780yy.com" target="_blank">ŷһ</a>| <a href="http://xxx6688.com" target="_blank">ŷһ</a>| <a href="http://686852a.com" target="_blank">aaƬŷ</a>| <a href="http://www-77663.com" target="_blank">ŷ</a>| <a href="http://www-26333com.com" target="_blank">ŷսþþþþþѹۿ</a>| <a href="http://cancerrxa.com" target="_blank">޴ŮƵ</a>| <a href="http://alex-bruni.com" target="_blank">Ʒ</a>| <a href="http://605054.com" target="_blank">ŷձ</a>| <a href="http://787282.com" target="_blank">þþ޸</a>| <a href="http://www-23918.com" target="_blank">һѹۿƵ</a>| <a href="http://66jj99.com" target="_blank">ŷƬѹۿ߹ۿվƼ</a>| <a href="http://tristooges.com" target="_blank">һ߲</a>| <a href="http://shanghaijiagu.com" target="_blank">߲һ</a>| <a href="http://aydsrmyy.com" target="_blank">ëƬһ</a>| <a href="http://874805.com" target="_blank">ŷպ߲һ</a>| <a href="http://2323nn.com" target="_blank">պƵ</a>| <a href="http://540669.com" target="_blank">˳</a>| <a href="http://seyuav4.com" target="_blank">ģƷһɫ</a>| <a href="http://www-878009.com" target="_blank">ŷƷþþþa</a>| <a href="http://instantptt.com" target="_blank">þþþùɫavѿӰԺ</a>| <a href="http://chunhuigk.com" target="_blank">ҹ</a>| <a href="http://xxxxxdywvip18.com" target="_blank">ëƬav</a>| <a href="http://shiselol.com" target="_blank">޹ŷۺһ</a>| <a href="http://www-14333.com" target="_blank">׾ƷƵ߹ۿ</a>| <a href="http://jj8518.com" target="_blank">ŷַ</a>| <a href="http://yy6024.com" target="_blank">Ƶ</a>| <a href="http://xunlei520.com" target="_blank">һ</a>| <a href="http://by2866.com" target="_blank">պһ</a>| <a href="http://caopanjia.com" target="_blank">˳һ</a>| <a href="http://6567ya.com" target="_blank">һƵŷ</a>| <a href="http://322033.com" target="_blank">һƷ߲</a>| <a href="http://sese912.com" target="_blank">޾Ʒþ</a>| <a href="http://aaa211.com" target="_blank">ƷŮ</a>| <a href="http://www37999.com" target="_blank">ƷѸ</a>| <a href="http://ff9222.com" target="_blank">ƷþþһƷ</a>| <a href="http://fs-nanxiang.com" target="_blank">ŷպ޼</a>| <a href="http://605012.com" target="_blank">ŷƵ߲</a>| <a href="http://jiejiesao8.com" target="_blank">ŷպһƵ </a>| <a href="http://hgx123.com" target="_blank">һ</a>| <a href="http://sfrecq.com" target="_blank">þԴһţ </a>| <a href="http://ggg4444.com" target="_blank">þۺϺݺۺϾþü</a>| <a href="http://126900.com" target="_blank">þþƷŷպƷ</a>| <a href="http://kuaikan97.com" target="_blank">þþƷ999߽</a>| <a href="http://hafenchen.com" target="_blank">ŷѲ</a>| <a href="http://977mo.com" target="_blank">þþƷպŷ</a>| <a href="http://987gqb.com" target="_blank">þۺϵ</a>| <a href="http://caca060.com" target="_blank">ŷһ</a>| <a href="http://59jf.com" target="_blank">ŷպۺѹۿ</a>| <a href="http://sdsptl.com" target="_blank">Ʒ߳Ƶ</a>| <a href="http://www369cf.com" target="_blank">׾Ʒһ</a>| <a href="http://868482.com" target="_blank">Ʒһ</a>| <a href="http://yjjs20.com" target="_blank">ۺɫ</a>| <a href="http://ae262.com" target="_blank">޹þþƷ</a>| <a href="http://339254.com" target="_blank">avþþþþþһ</a>| <a href="http://689992.com" target="_blank">ҹӰ</a>| <a href="http://bjrailtech.com" target="_blank">ŷӰԺ</a>| <a href="http://998609.com" target="_blank">ŷjizz19hdŷ</a>| <a href="http://xxx6688.com" target="_blank">޹ŮaaaëƬ</a>| <a href="http://aberyco.com" target="_blank">Ůɫͼ</a>| <a href="http://yjjs20.com" target="_blank">˾þۺ</a>| <a href="http://wwwcc7777.com" target="_blank">þþ</a>| <a href="http://www89999.com" target="_blank">ŷպѿ</a>| <a href="http://www-663345.com" target="_blank">дavһ</a>| <a href="http://v58q.com" target="_blank">ߵӰƷ</a>| <a href="http://azaz7.com" target="_blank">պŷ߹ۿ</a>| <a href="http://www107aa.com" target="_blank">ҹav2018</a>| <a href="http://8x1080x.com" target="_blank">þþùҹƷ</a>| <a href="http://by777117.com" target="_blank">޾һ</a>| <a href="http://15013010203.com" target="_blank">ѹۿƵ</a>| <a href="http://1188188.com" target="_blank">þþƷþۺ</a>| <a href="http://23230066.com" target="_blank">ŷƷۺ</a>| <a href="http://pabjzz.com" target="_blank">ŷһƵ</a>| <a href="http://www8xvi.com" target="_blank">޼ŷ</a>| <a href="http://9797690.com" target="_blank">ŷרר</a>| <a href="http://9a9u.com" target="_blank">޾</a>| <a href="http://balqueen.com" target="_blank">þñۺɫݺ</a>| <a href="http://toomicsvip.com" target="_blank">ŷӰ߲</a>| <a href="http://7343888.com" target="_blank">޳ַ߹ۿ</a>| <a href="http://zztto7.com" target="_blank">ŷҹ</a>| <a href="http://mimi78.com" target="_blank">ŷĻ</a>| <a href="http://777777hb.com" target="_blank">޾ƷۺϾƷ</a>| <a href="http://ywbst8g4tukcsqhioikc.com" target="_blank">ҹһþ</a>| <a href="http://6aaee.com" target="_blank">ŷպ˾Ʒ</a>| <a href="http://687989.com" target="_blank">ѲƵ</a>| <a href="http://gykfqzgpt.com" target="_blank">ŷձɫ</a>| <a href="http://seqingdao.com" target="_blank">ŷ</a>| <a href="http://seo8138.com" target="_blank">ȷӰһ</a>| <a href="http://8xfore.com" target="_blank">ŷպŮ</a>| <a href="http://haole081.com" target="_blank">޹һƷר</a>| <a href="http://www979vv.com" target="_blank">ŷһ</a>| <a href="http://sese912.com" target="_blank">ŷһ13˾</a>| <a href="http://977764.com" target="_blank">Ʒwww994</a>| <a href="http://345fz.com" target="_blank">91þһ</a>| <a href="http://353033.com" target="_blank">þƵ</a>| <a href="http://008528.com" target="_blank">ҹƷƵ</a>| <a href="http://syddzs.com" target="_blank">ŷƵ߿</a>| <a href="http://chunshanketang.com" target="_blank">޾Ʒһ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>