??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲电影免费观看,国产亚洲成AV人片在线观黄桃,亚洲欧洲国产综合http://m.tkk7.com/anymobile/category/5736.htmlMake Anything Mobile!zh-cnThu, 19 Jul 2007 06:52:08 GMTThu, 19 Jul 2007 06:52:08 GMT60数据容器与静态代?/title><link>http://m.tkk7.com/anymobile/articles/130975.html</link><dc:creator>Xu Jianxiang</dc:creator><author>Xu Jianxiang</author><pubDate>Wed, 18 Jul 2007 02:07:00 GMT</pubDate><guid>http://m.tkk7.com/anymobile/articles/130975.html</guid><wfw:comment>http://m.tkk7.com/anymobile/comments/130975.html</wfw:comment><comments>http://m.tkk7.com/anymobile/articles/130975.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/anymobile/comments/commentRss/130975.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/anymobile/services/trackbacks/130975.html</trackback:ping><description><![CDATA[<span>作者:徐徏(</span><span><a href="mailto:netpirate@gmail.com">netpirate@gmail.com</a></span><span>Q?br></span> <p><span>旉Q?007-07-18<br></span><span>来自Q?/span><span><a >http://www.anymobile.org</a><br><br></span><span>l常使用的数据一般都会缓存v来,提高效率。对于数据量比较大的Q如囄、资讯类Q可以采用缓?/span><span>Cache</span><span>Q烦引的机制处理Q而对于比较简单的数据Q可以通过单的数据容器q行~存。当Ӟ它们最l一般都存放?/span><span>Hashtable </span><span>?/span><span> HashMap</span><span>{容器中?/span></p> <p><span><span>       </span>Cache </span><span>应用的原理大致是Q初始化时将原数据导?/span><span>Cache</span><span>中或惰性加载;l常被查询(点击率高Q的|前Q当数据d超q?/span><span>Cache</span><span>定w后,调整定w大小或清理不l常使用Q点ȝ低)的数据;数据过有效期,及时清理Q对于查询失败的数据Q需</span><span>CHECK</span><span>一下?/span></p> <p> <span><span>       </span></span><span>单的数据容器Q将需要缓存的数据保存臛_独的容器Qƈ在一定的条g下进行数据同步。同步的Ҏ大致?/span><span>2</span><span>U:启用一个时间线E,定期集中查、处理各个容器的周期同步操作Q或者由各个容器单独l护自n的周期和同步操作?/span></p> <p><span> </span><span><span>       </span></span><span>前者统一处理Q不会有额外的开销Q缺Ҏd一个新的容器,都需要添加到同步U程中;后者单独处理,实现h比较快捷、没有Q何约束,而且互不影响Q但使用的时候有额外的处理和对象开销?/span></p> <p> <span><span>       </span></span><span>当然Q单独处理ƈ不代表就是所有的业务逻辑都在各容器中控制执行Q可以用代理机制来解决q个问题?/span></p> <p> <span><span>       </span></span><span>静态代理:代理对象与被代理的对象都必须实现同一个接口,在代理对象中可以实现</span><span>CHECK</span><span>{服务,q在需要的时候再调用被代理的对象Q这样代理对象就只保留业务相兌责?/span></p> <p><span><span>       </span></span><span>动态代理:</span><span>JDK1.3</span><span>以后开始支持动态代理,处理者的cd?/span><span>java.lang.ref.InvocationHandler</span><span>c,可以使用一个处理者(</span><span>Handler</span><span>Q服务于各个对象?/span></p> <p> <span><span>      </span></span><span>动态代理相Ҏ率低些,集合静态代理机Ӟ数据容器大致程如下Q?/span></p> <p><span> </span><span><span>      </span></span><span>所有的数据容器都实?/span><span>Container</span><span>接口Q定义生命周期、同步数据时的时间戳Q同步方法和d数据的方法;定义一个静态代理类Q在查询数据的时候,查数据容器是否过期,q期则调用容器的同步Ҏ?/span></p> <p><span>cd如下Q?/span></p> <p><img height=338 alt="" src="http://m.tkk7.com/images/blogjava_net/anymobile/8280/o_container_image002.gif" width=553 border=0></p> <p><span>序列囑֦下:</span></p> <p><img height=508 alt="" src="http://m.tkk7.com/images/blogjava_net/anymobile/8280/o_container_image004.gif" width=392 border=0></p> <p><span>样例代码如下Q?/span></p> <p><span><span>    </span>Container container = new StaticProxy( EntityContainer.getInstance() );</span></p> <p><span><span>    </span>int[] arr = (int[]) container.getOne("025");</p> <p><span>了解</span><span>AOP</span><span>的,很容易就会想?/span><span>pointcut</span><span>Q?/span><span>advisor</span><span>Q?/span><span>MethodBeforeAdviced{等</span><span>Q原理类|略?/span></p> </span> <p> <span>Q全文完Q?/span></p> <img src ="http://m.tkk7.com/anymobile/aggbug/130975.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/anymobile/" target="_blank">Xu Jianxiang</a> 2007-07-18 10:07 <a href="http://m.tkk7.com/anymobile/articles/130975.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MVC与设计模?/title><link>http://m.tkk7.com/anymobile/articles/71375.html</link><dc:creator>Xu Jianxiang</dc:creator><author>Xu Jianxiang</author><pubDate>Fri, 22 Sep 2006 12:41:00 GMT</pubDate><guid>http://m.tkk7.com/anymobile/articles/71375.html</guid><wfw:comment>http://m.tkk7.com/anymobile/comments/71375.html</wfw:comment><comments>http://m.tkk7.com/anymobile/articles/71375.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/anymobile/comments/commentRss/71375.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/anymobile/services/trackbacks/71375.html</trackback:ping><description><![CDATA[ <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?> <o:p> </o:p> </span> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">1?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">概述</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q即</span> <span lang="EN-US">Model-View-Controller</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q“模?/span> <span lang="EN-US">-</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">视图</span> <span lang="EN-US">-</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">控制器”,?/span> <span lang="EN-US">Xerox PARC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在八十年代ؓ~程语言</span> <span lang="EN-US">Smalltalk</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">80</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">发明的一UY件设计模式,最初是用来构徏用户界面。它包括三类对象Q模?/span> <span lang="EN-US">Model</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是应用对象(数据和应用规则)Q视?/span> <span lang="EN-US">View</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是它在屏q上的表C,控制?/span> <span lang="EN-US">Controller</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">定义用户界面对用戯入的响应方式?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">2?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">特征</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <span style="mso-tab-count: 1">       </span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">特征一Q视图与模型分离Q一旦模型的数据发生了变化,模型通知它的视图Q而视囑ְ于模型通信以访问相关的数据Q?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <span style="mso-tab-count: 1">       </span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">特征二:视图可以嵌套?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">3?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的设计模式</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <span style="mso-tab-count: 1">       </span>3.1 <b style="mso-bidi-font-weight: normal">View-Model</b></span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">关系与观察者模?/span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 17.85pt; mso-para-margin-left: 1.7gd"> <span lang="EN-US"> <span style="mso-tab-count: 2">        </span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">观察者(</span> <span lang="EN-US">Observer</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q模式:定义对象间的一U一对多的依赖关p,以便当一个对象的状态发生改变时Q所有依赖于它的对象都得到通知q自动刷新?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 17.85pt; mso-para-margin-left: 1.7gd"> <span lang="EN-US"> <span style="mso-tab-count: 2">        </span>MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通过建立一个“定?/span> <span lang="EN-US">/</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通知”机制将视图和模型分,一个模型可以有多个视图Q当模型的数据改变后会通知它的所有视图?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <span style="mso-tab-count: 1">       </span>3.2 <b style="mso-bidi-font-weight: normal">View-View</b></span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">关系l合模式</span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 17.85pt; mso-para-margin-left: 1.7gd"> <span lang="EN-US"> <span style="mso-tab-count: 2">        </span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">l合Q?/span> <span lang="EN-US">Composite</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q模式:对象组合成树Şl构以表C“整体-部分”的层次l构Q得对单个对象和复合对象的使用h一致性?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">View</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">cȝ子类</span> <span lang="EN-US">CompositeView</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">cL支持嵌套视图?/span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一些对象划Zl,q将该组对象当作一个对象来使用?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <span style="mso-tab-count: 1">       </span>3.3 <b style="mso-bidi-font-weight: normal">View-Controller</b></span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">关系与策略模?/span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 17.85pt; mso-para-margin-left: 1.7gd"> <span lang="EN-US"> <span style="mso-tab-count: 2">        </span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">{略Q?/span> <span lang="EN-US">Strategy</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q模式:定义一pd的算法,把它们一个个装hQƈ且它们可相互替换。算法的变化可以独立于用者?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 17.85pt; mso-para-margin-left: 1.7gd"> <span lang="EN-US"> <span style="mso-tab-count: 2">        </span>MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">响应机制封装在</span> <span lang="EN-US">Controller</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对象中,</span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">允许在不改变视图外观</span> <span lang="EN-US">View</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的情况下改变视图对用戯入的响应方式?/span> <span lang="EN-US">View</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用</span> <span lang="EN-US">Controller</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的某个实例来实现一个特定的响应{略Q实行不同的响应{略需要用不同?/span> <span lang="EN-US">Controller</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">实例替换卛_?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">4?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">框架</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">框架把一个应用的输入、处理、输出流E按?/span> <span lang="EN-US">Model</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">View</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Controller</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的方式进行分,q样一个应用被分成三个层——视囑ֱ、控制层和模型层?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">比较常见?/span> <span lang="EN-US">MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">框架有:</span> <span lang="EN-US">Struts</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Webwork</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Tapestry</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">JSF</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Spring MVC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">{?br /></span> <br />资料Q?br />《设计模式》 GOF<br /><span id="uwy88cg" class="h1b">MVC在Webpȝ中的模式与应?<a >http://dev2dev.bea.com.cn/techdoc/20031194.html</a><br />MVC模式 <a >http://www.itisedu.com/phrase/200604231324325.html</a><br /></span></p> <img src ="http://m.tkk7.com/anymobile/aggbug/71375.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/anymobile/" target="_blank">Xu Jianxiang</a> 2006-09-22 20:41 <a href="http://m.tkk7.com/anymobile/articles/71375.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>模式与设?/title><link>http://m.tkk7.com/anymobile/articles/71351.html</link><dc:creator>Xu Jianxiang</dc:creator><author>Xu Jianxiang</author><pubDate>Fri, 22 Sep 2006 08:55:00 GMT</pubDate><guid>http://m.tkk7.com/anymobile/articles/71351.html</guid><wfw:comment>http://m.tkk7.com/anymobile/comments/71351.html</wfw:comment><comments>http://m.tkk7.com/anymobile/articles/71351.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/anymobile/comments/commentRss/71351.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/anymobile/services/trackbacks/71351.html</trackback:ping><description><![CDATA[ <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" align="left"> <span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">作者:徐徏( <span lang="EN-US"><a href="mailto:netpirate@gmail.com"><span style="COLOR: #1a8bc8">netpirate@gmail.com</span></a></span>Q?span lang="EN-US"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?><o:p></o:p></span></span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" align="left"> <span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">旉Q??xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /?><st1:chsdate w:st="on" year="2006" month="9" day="22" islunardate="False" isrocdate="False"><span lang="EN-US">2006/09/22</span></st1:chsdate><span lang="EN-US"><o:p></o:p></span></span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" align="left"> <span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">来自Q?span lang="EN-US">http://www.anymobile.org <o:p></o:p></span></span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">1?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">何谓模式</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">“每个模式就是一条由三部分组成的规则Q它表示了一个特定环境、一个问题和一个解x案之间的关系?/span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”-Q《徏{的永恒之道</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">(Christopher Alexander)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模式Q就是对特定场景中,不断重复发生的问题,以及该问题的解决Ҏ的整体抽象描q?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">2?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设计原则</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l1 level2 lfo2; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">̔<span style="FONT: 7pt 'Times New Roman'">        </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">开闭原?/span> <span lang="EN-US">(OCP</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">Open-Closed Principle)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是面向对象可复用的基矟뀂模块、方法和cd该对扩展是开攄Q而对更改是封闭的Q对可变性进行封装?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l1 level2 lfo2; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">̔<span style="FONT: 7pt 'Times New Roman'">        </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里氏代换原则</span> <span lang="EN-US">(LSP</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">Liskov Substitution Principle)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是承复用的基石。在M父类出现的地斚w可以用它的子cL替代。在实际设计cȝ阶层体系l构Ӟq是一条很重要的原则?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l1 level2 lfo2; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">̔<span style="FONT: 7pt 'Times New Roman'">        </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">依赖反{原则</span> <span lang="EN-US">(DIP</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">Dependence Inversion Principle)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">针对接口~程Q要依赖于抽象,不要依赖于具体的实现Q也叫控制反转,</span> <span lang="EN-US">IoC</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l1 level2 lfo2; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">̔<span style="FONT: 7pt 'Times New Roman'">        </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接口隔离原则</span> <span lang="EN-US">(ISP</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">Interface Segregation Principle)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用多个专门的接口L比用单一的L口要好?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l1 level2 lfo2; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">̔<span style="FONT: 7pt 'Times New Roman'">        </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">合成</span> <span lang="EN-US">/</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">聚合复用原则</span> <span lang="EN-US">(CARP</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">Composite or Aggregate Reuse Principle)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">聚合Q表C拥有或整体与部分的关系?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">合成Q更强的聚合关系?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">量使用和成</span> <span lang="EN-US">/</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">聚合而不是承来实现复用</span> <span lang="EN-US">,</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Has-A</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”替代?/span> <span lang="EN-US">Is-A</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”(l承Q?/span> <span lang="EN-US"> <span style="mso-spacerun: yes">   </span> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l1 level2 lfo2; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">̔<span style="FONT: 7pt 'Times New Roman'">        </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q米Ҏ?/span> <span lang="EN-US">(LoD</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">Law of Demeter)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一个对象应当对其他对象可能少的了解。降低各个单元的耦合Q提高系l的可维护性?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">3?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span lang="EN-US">GOF</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设计模式</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">“设计模式是对被用来在特定场景下解决一般设计问题的cd怺通信的对象的描述。”-Q?/span> <span lang="EN-US">Design Patterns</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">( Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides )</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设计模式充分利用语言优势Q站在更高的角度d视我们的设计Q但是不要ؓ了模式而设计?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">按照模式的目的和范围准则Q?/span> <span lang="EN-US">GOF</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">众多的设计模式分ؓ</span> <span lang="EN-US">3</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">c,?/span> <span lang="EN-US">23</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">个设计模式?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US">3.1 </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">创徏型(</span> <span lang="EN-US">Creational</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">抽象工厂Q?/span> <span lang="EN-US">Abstract Factory</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">生成器(</span> <span lang="EN-US">Builder</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工厂ҎQ?/span> <span lang="EN-US">Factory Method</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">原型Q?/span> <span lang="EN-US">Prototype</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">单gQ?/span> <span lang="EN-US">Singleton</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US">3.2 </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">l构型(</span> <span lang="EN-US">Structural</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">适配器(</span> <span lang="EN-US">Adapter</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">C O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">桥接Q?/span> <span lang="EN-US">Bridge</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">l合Q?/span> <span lang="EN-US">Composite</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">装饰Q?/span> <span lang="EN-US">Decorator</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">外观Q?/span> <span lang="EN-US">Façade</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">享元Q?/span> <span lang="EN-US">Flyweight</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">代理Q?/span> <span lang="EN-US">Proxy</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US">3.3 </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">行ؓ型(</span> <span lang="EN-US">Behavioral</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">责Q链(</span> <span lang="EN-US">Chain Responsibility</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">命oQ?/span> <span lang="EN-US">Command</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">解释器(</span> <span lang="EN-US">Interpreter</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">C</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q代Q?/span> <span lang="EN-US">Iterator</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中介者(</span> <span lang="EN-US">Mediator</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">备忘录(</span> <span lang="EN-US">Memento</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">观察者(</span> <span lang="EN-US">Observer</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">状态(</span> <span lang="EN-US">State</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">{略Q?/span> <span lang="EN-US">Strategy</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模板ҎQ?/span> <span lang="EN-US">Template Method</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">C</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 18pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">讉K者(</span> <span lang="EN-US">Visitor</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">O</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">4?span style="FONT: 7pt 'Times New Roman'">  </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如何使用设计模式</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level3 lfo1; tab-stops: list 36.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">1)<span style="FONT: 7pt 'Times New Roman'">      </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">学习模式Q考虑设计模式是怎样解决问题以及怺的关联性;</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level3 lfo1; tab-stops: list 36.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">2)<span style="FONT: 7pt 'Times New Roman'">      </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">L合适的对象Q决定对象的_度Q制定对象接口,描述对象之间的关p;</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level3 lfo1; tab-stops: list 36.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">3)<span style="FONT: 7pt 'Times New Roman'">      </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用设计模式q行优化Q权衡性能和灵zL;</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level3 lfo1; tab-stops: list 36.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">4)<span style="FONT: 7pt 'Times New Roman'">      </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">只有当模式提供的灉|性真正需要时Q才有必要用;</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 36pt; TEXT-INDENT: -18pt; mso-list: l0 level3 lfo1; tab-stops: list 36.0pt"> <span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'"> <span style="mso-list: Ignore">5)<span style="FONT: 7pt 'Times New Roman'">      </span></span> </span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设计不能q就模式Q模式ؓ设计服务?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">参考:</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Design Patterns</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Java</span> <span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">与模式》阎?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span lang="EN-US"> <o:p> </o:p> </span> </p> <img src ="http://m.tkk7.com/anymobile/aggbug/71351.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/anymobile/" target="_blank">Xu Jianxiang</a> 2006-09-22 16:55 <a href="http://m.tkk7.com/anymobile/articles/71351.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C软gq程概述http://m.tkk7.com/anymobile/articles/71337.htmlXu JianxiangXu JianxiangFri, 22 Sep 2006 07:51:00 GMThttp://m.tkk7.com/anymobile/articles/71337.htmlhttp://m.tkk7.com/anymobile/comments/71337.htmlhttp://m.tkk7.com/anymobile/articles/71337.html#Feedback0http://m.tkk7.com/anymobile/comments/commentRss/71337.htmlhttp://m.tkk7.com/anymobile/services/trackbacks/71337.html 作者:徐徏( netpirate@gmail.com Q?/span>

旉Q?/span> 2006/09/22

来自Q?/span> http://www.anymobile.org

 

1?span style="FONT: 7pt 'Times New Roman'">软gq程

 

       随着软gpȝ的规模和复杂性的增加Q其开发成本和风险随之增加QY件的质量问题已成为制UY件发展的关键因素之一?/span>

       所谓Y件过E,卌Y仉目的开发过E,是指软g生命周期中,用于开发和l护软g产品的一pdq程Q它与团队的l织理以及开发技能相辅相成,全面提升软g产品的质量?/span>

       q年来,软gq程日益得到重视Q国际Y件界的敏捗统一热也在持l升温?/span> 与传l的开发过E相比,敏捷q程更强调快速灵zd应,dq接和适应变化Q主张更紧密的客户与开发商协作Q以Zؓ本的可持l发展,典型的有 XP Q极限编E)?/span> FDD Q特征驱动开发){;l一软gq程?/span> RUP Z表,采用 OO 技术对软g开发过E本w进行业务徏模,集成了P代开发、用例驱动?/span> UML 可视化徏模?/span> OOAD 、架构设计、项目管理等许多L先进的当代Y件工艺?/span>

       在Y仉目开发过E中Q应该能够识别、分析不同Y仉目的特点Q采用相寚w合的开发实跉|适应软g开发过E,保证对Y件开发的有效支持Q如 RUP ?/span> XP 的融合?/span>

 

2?span style="FONT: 7pt 'Times New Roman'"> XP Q极限编E?/span>

 

极限~程Q?/span> eXtreme Propgramming Q?/span> XP Q是?/span> Kent Beck ?/span> 1996 q开创,是一U演q式的原型化ҎQ以最大化发挥人的能量为核心目标,以“小步快走”的逻辑指导开发,h沟通高效、设计简单、反馈迅速等特点Q是一U轻量、敏Lq程Ҏ?/span>

极限~程Z四个价值目标:沟通( communication Q、简?/span> (simplicity) 、反?/span> (feedback) 和勇?/span> (courage) Q由 12 个最佛_践ؓq四个h值提供支持?/span>

极限~程的生命周期包?/span> 4 个基本活动:~码 (coding) 、测?/span> (testing) 、聆?/span> (listening) 、设?/span> (designing) ?/span>

2.1 4 个h值目?/span>

       沟通:让开发h员集体负责所有代码ƈl队工作Q鼓׃客户及团队内部保持沟通?/span>

化:鼓励只开发当前的功能Q避免过多的文档Q专注于最化解决ҎQ做好ؓ为新Ҏ改变设计,在系l隐d代码规范下不断重构的准备?/span>

反馈Q通过单元试和功能测试获得快速反馈?/span>

勇气Q提倡积极面对现实和处理问题的勇气,拥抱变化?/span>

2.2 12 个最佛_?/span>

 
Q图? XP最佛_践)

             
有计划的开发:通过l合使用优先U“故事”和技术估,定下一版本的功能?/span>

型发布Q以的增量版本l常向客户发布Y件?/span>

pȝ隐喻Q隐L一个高层次的系l构惻I需要不断的l化架构Q来指导全部开发?/span>

单设计:通过保持代码单从而保证设计简单。不断的在代码中L复杂点ƈ且立刻进行移除?/span>

试驱动Q“先试Q后~码”。用L写测试内容以?/span> " 故事 " q行试。程序员~写试内容来发C码中的Q何问题。在~写代码前先~写试内容?/span>

重构Q这是一简化技术,用来U除代码中的重复内容和复杂之处?/span>

l对~程Q团队中的两个成员用同一台计机开发所有的代码。一个h~写代码或者驱动,另一个h同时审查代码的正性和可理解性?/span>

集体代码所有权QQ何h都拥有所有的代码。提高代码透明度,增强团队合作_?/span>

持箋集成Q每天按d多次创徏和集成系l,随着需求变化,q行不断的回归测试?/span>

每周 40 时工作ӞE序员在疲劳时无法保证最高效率。连l两周加班是l对不允许的Q否则会影响工作效率?/span>

现场客户Q至有一名真实的客户全天候工作于开发环境中Q帮助定义系l、编写测试内容ƈ回答问题?/span>

~码规范Q程序员采用l一的编码规范?/span>

M来说Q?/span> XP 部分满?/span> CMM2~3 U关键过E域 (KPA) 的要求, XP 侧重与过E和技术, CMM 更注重组l和理?/span>

 

3?/strong>   FDD Q特征驱动开?/span>

特征驱动开发( Feature Drive Develop Q?/span> FDD Q, Together 创始?/span> Peter Coad 所创。通过特征来制定开发计划,以每日构Zؓ核心Q强调按特征分步开发和交付。一个特征就是一个小的、具有客户h值的功能Q通常表示?/span> <action><result><object> ?/span>

 

4?/strong>   RUP Q?/span> Rational l一q程

 

q代软g开发的发展背景QY件的不确定和高风险等Ҏ,使得传统的瀑布式开发力不从心;q代有助于尽快发现和解决风险QP代有助于控制目的节奏,加快反馈Q增强项目的控制力度Q实现过E的有序化;q代W合Z对事物的认识逐步加深Q解决问题的能力随经验逐步提高?/span>

       Rational l一q程Q?/span> Rational Unified Process Q?/span> RUP Q,是用例驱动、以体系l构Z心,q代、增量的软g开发过E。适合大、中型项目?/span>

RUP 采用C软g开发的一些最佛_践,作ؓ一U降低开发新软g所带来的内在风险的方式。这?strong>最佛_?/strong>包括Q?/span>

1) q代开发;

2) 理需求;

3) 使用Zlg的构Ӟ

4) 可视建模Q?/span>

5) 持箋的质量验证;

6) 控制变更?/span>

RUP 是一个P代过E,定了Q何Y件开发项目的四个阶段Q初始阶Dc精化阶Dc构建阶D和交付阶段。每个阶D包括一ơ或多次q代Q每一ơP代都会生成更加接q最l品的可执行版本?/span> 

a 、初始阶D:识别和规遉K目的主要风险Q徏立用例模型框Ӟq制定里E碑日期的阶D计划;

b 、精化阶D:分析问题领域Q徏立健全的体系l构基础Q编刉目计划,淘汰目中最高风险的元素Q完成部分优先最高的用例开发;

c 、构建阶D:分ؓ多个q代Q逐步完成不同优先U的用例开发,核心 Case-> 高风?/span> Case-> ơ核?/span> Case-> 其它 Case Q?/span>

d 、交付阶D:q行各种功能、性能试Q进行品化、部|Ԍ完成整个pȝ的开发工作?/span>

Q图? RUP概述图)

RUP q代开发过E?/strong>Q?/span>

a 、第一ơP?/span>

1)   捕获需?/span>

2)   建立初始的领域模?/span>

3)   建立用例模型框架

4)   制定开发计?/span>

b 、第二次q代

1)   关键用例?/span> Robustness 分析与交互徏?/span>

2)   体系l构设计

3)   建立cL?/span>

4)   关键用例的开发与试

5)   完善用例模型

c 、第 n ơP?/span>

完成所有用例的分析、设计与开发?/span>

d 、最后的q代

1)   整体试Q进行各U功能、性能和压力测试?/span>

2)   部v与安装:生成相应的部|图?/span>

3)   产品化:q行一些品化的包装?/span>

注:每一ơP代之后,都应该交付一个可以运行的中间版本?/span>

Q图? RUPq代)

5?span style="FONT: 7pt 'Times New Roman'">  SPP Q精q行q程

_q行q程Q?/span> Simplified Parallel Process Q?/span> SPP Q,?/span> CMMI 3 U以内各q程域的内容和要求作了“精”处理,包括 19 个过E域?/span> 40 余个规程和近 60 个文档模?/span> 。强调在产品生命周期之内Q项目管理过E、项目研发过E和机构支撑q程“ƈ行”开展?/span>

Q图? SPPQ?br />

软gq程改进解决ҎQ?/span> SPIS Q――林锐发明?/span>

核心l成部分

1) 软gq程改进咨询服务Q?/span>

2) 软g工程与项目管理培训;

3) Z Web 的集成化目理工具Q?/span> Future ?/span>

Future 采用 CMMI ?/span> SPP 为参考标准。主要功能包括项目规划、项目监控、质量管理、配|管理、需求管理、日常工作管理等?/span>

|站Q?/span> http://www.chinaspis.com



Xu Jianxiang 2006-09-22 15:51 发表评论
]]>
pȝ架构师培训ȝhttp://m.tkk7.com/anymobile/articles/51578.htmlXu JianxiangXu JianxiangThu, 08 Jun 2006 17:52:00 GMThttp://m.tkk7.com/anymobile/articles/51578.htmlhttp://m.tkk7.com/anymobile/comments/51578.htmlhttp://m.tkk7.com/anymobile/articles/51578.html#Feedback0http://m.tkk7.com/anymobile/comments/commentRss/51578.htmlhttp://m.tkk7.com/anymobile/services/trackbacks/51578.html 一?/span> 培训背景

 

从公司的长远发展出发Q通过对公司内员工展开针对性的培训Q以使他们不断获取新的知识和相关技能,提升整体研发能力Q于 2006 q?/span> 6 ?/span> 3 ?/span> ?/span> 6 ?/span> 6 ?/span> Q参加中U院计算所职业培训中心在上D办的高pȝ架构师培训?/span>

 

二?/span> 培训目的和内?/span>

 

通过培训Q掌握目前常用的体系l构设计ҎQƈ能够灉|应用Q掌握媄响Y件体pȝ构设计的各种目标和应对策略;熟练掌握一个真实的软g开发过E,q能够具体地?/span> RUP 的规范过E应用到实际的系l实C?/span>

 

培训分ؓ四天Q第一天讲解Y件架构,W二天讲解设计模式和商业机密Q第三天讲解 RUP Q第四天讲解架构设计中的技术问题?/span>

 

四天中培训的主要内容有:

1?span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal">  软g架构设计的理Z实践Q?/span>

2?span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal">  设计模式和体pd建;

3?span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal">  商业机密Q?/span>

4?span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal">  RUP 的构件实C理Q?/span>

5?span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal">  架构设计中的技术问题分析?/span>

 

三?/span> 培训日程

培训内容

6 ?/span> 3 ?/span> 上午

 

  下午

软g架构设计的基概念

初始阶段的设计问?/span>

需求分析与概念建模

架构分析与设?/span>

6 ?/span> 4 ?/span> 上午

 

  下午

c设计与设计模式

架构设计的进一步讨?/span>

软g架构和架构师

商业机密

6 ?/span> 5 ?/span> 上午

 

 

  下午

RUP 评?/span>

RUP 的实质分?/span>

RUP 的概q?/span>

RUP 最佛_践和案例教学

大型项目的层设计?/span> RUP

6 ?/span> 6 ?/span> 上午

 

 

  下午

概要设计和架构体p选择

物理和逻辑架构分步

J2EE 体系

Spring ?/span> Hibernate

 

 

四?/span> 体会和计?/span>

 

在四天的培训评中,集合讲师的案例,深入学习了Y件架构设计、统一q程和设计模式三个方面的l合应用技术?/span>

 

q次培训的内容多、时间紧Q让我获益匪。我感受很深的主要有以下几点Q?/span>

 

1 、Y件的架构设计是对软g、硬件、网l、运营、政{等软g设计中的需求和要素q行决策Q在l一q程里面Q架构调研和架构设计l称为架构分析)。Y件架构设计是一个系l工E,它需要系l构架师有很宽的知识面,从需求分析、架构设计到c设计甚至代码实现都需要有透彻的理解。架构的关键?b>拥抱变化而设?/b>?/span>

2 、Y件架构师是技术负责,是解x案的提供者;与项目经理合作,制定计划Q决定成员,l织团队Q保证项目按计划完成。架构师最重要的素质是把握重点?/span>

3 ?/span> Rational Unified Process Q?/span> RUP Q?/span> Rational l一q程Q,是用例驱动、以体系l构Z心,q代、增量的软g开发过E?/span>

RUP 的Y件开发分为四个阶D:

a 、初始阶D:识别和规遉K目的主要风险Q徏立用例模型框Ӟq制定里E碑日期的阶D计划;

b 、精化阶D:分析问题领域Q徏立健全的体系l构基础Q编刉目计划,淘汰目中最高风险的元素Q完成部分优先最高的用例开发;

c 、构建阶D:分ؓ多个q代Q逐步完成不同优先U的用例开发,核心 Case-> 高风?/span> Case-> ơ核?/span> Case-> 其它 Case Q?/span>

d 、交付阶D:q行各种功能、性能试Q进行品化、部|Ԍ完成整个pȝ的开发工作?/span>

每次q代之后Q都应该交付一个可以运行的中间版本 ?/span>

4 、Y件设计中存在不断重复出现Q可以用某种相同方式解决的问题,也可以按照某U模式进行识别,q且可以在这个模式的基础上创建特定的解决Ҏ。设计模式是充分利用语言优势Q站在更高的角度d视我们的设计Q但?b>不要Z模式而设?/b>?/span>

5 、合理、规范的文档很重要,也很必要Q如术语表,对功能性需求Ş成的用例模型和系l特性列表文档,技术备忘录Q记录设计动机和原理Q,问题卡等{?br /> 

最后,计划×月×日 14:00 ~ 18:00 在大会议室对R&D部门开展主题ؓ“面向对象的软g开发”的内部培训Q目录如下:


W一部分QY件过E概q?br />1、Y件过E?br />W二部分Q面向对象徏模(分析和设计)
2、概念徏?br />3、用例徏?br />4、交互徏?br />5、部|与实施
6、案?br />W三部分Q设计模?br />7、何谓模?br />8、设计原?br />9、GOF设计模式
10、案?/em>

徐徏?br />2006/06/09

Xu Jianxiang 2006-06-09 01:52 发表评论
]]>
“实战OO”学习笔?/title><link>http://m.tkk7.com/anymobile/articles/29358.html</link><dc:creator>Xu Jianxiang</dc:creator><author>Xu Jianxiang</author><pubDate>Sun, 29 Jan 2006 14:35:00 GMT</pubDate><guid>http://m.tkk7.com/anymobile/articles/29358.html</guid><wfw:comment>http://m.tkk7.com/anymobile/comments/29358.html</wfw:comment><comments>http://m.tkk7.com/anymobile/articles/29358.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/anymobile/comments/commentRss/29358.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/anymobile/services/trackbacks/29358.html</trackback:ping><description><![CDATA[     摘要: “实战OO”学习笔?作者:徐徏(netpirate@gmail.comQ?旉Q?006/01/11 来自Qhttp://www.anymobile.org   “实战OO”系列文章是徐锋发表?004q《程序员》杂志的一pd关于面向对象的入门文章,通过图书馆的实例Q深入浅出地讲述了基于Y件徏模技术的面向对象开发过E。介l了面向对象的分析(OOAQ和设计(OOD)Qƈ对OO...  <a href='http://m.tkk7.com/anymobile/articles/29358.html'>阅读全文</a><img src ="http://m.tkk7.com/anymobile/aggbug/29358.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/anymobile/" target="_blank">Xu Jianxiang</a> 2006-01-29 22:35 <a href="http://m.tkk7.com/anymobile/articles/29358.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://m.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> վ֩ģ壺 <a href="http://www-741.com" target="_blank">ŷ޹Ʒþ</a>| <a href="http://gedebai.com" target="_blank">˳߾Ʒ</a>| <a href="http://sxwlhg.com" target="_blank">4huĻѵַ</a>| <a href="http://888-28.com" target="_blank">Ļ߲</a>| <a href="http://aicbbs.com" target="_blank">avһ</a>| <a href="http://8v4y.com" target="_blank">鶹AVþþƷ</a>| <a href="http://69xjk.com" target="_blank">޳˹Ʒ</a>| <a href="http://gsonlinet.com" target="_blank">ձһ </a>| <a href="http://gengyufood.com" target="_blank">þƵƷ</a>| <a href="http://cg-fun.com" target="_blank">ҹ޾Ʒ</a>| <a href="http://ziniurj.com" target="_blank">Ʒվ</a>| <a href="http://cin17.com" target="_blank">պ߹ۿ</a>| <a href="http://kuaizhuxia.com" target="_blank">ֻƬþù</a>| <a href="http://meijibear.com" target="_blank">AV˾ƷӰԺ</a>| <a href="http://mychjp.com" target="_blank">ۺ</a>| <a href="http://www1616hh.com" target="_blank">պAVһl </a>| <a href="http://siminglighting.com" target="_blank">Ƭ߹ۿ</a>| <a href="http://szzrjk.com" target="_blank">ۺƷ͵</a>| <a href="http://wwwee2.com" target="_blank">ҹþþþ</a>| <a href="http://xxzyyj.com" target="_blank">ҹ߹ۿ</a>| <a href="http://tbw77.com" target="_blank">߹ۿavվ</a>| <a href="http://chuadang.com" target="_blank">˳վ߲</a>| <a href="http://121fj.com" target="_blank">һ߹ۿ </a>| <a href="http://anyliz.com" target="_blank">žۺVAѿ</a>| <a href="http://116603a.com" target="_blank">޾Ʒ</a>| <a href="http://520baoyu.com" target="_blank">Ƭ߹ۿ</a>| <a href="http://91vk.com" target="_blank">þѹƵ</a>| <a href="http://yuyang0752.com" target="_blank">պAVһl</a>| <a href="http://cdessc.com" target="_blank">ҹþ</a>| <a href="http://chn139.com" target="_blank">ŮƵ</a>| <a href="http://6000cpkj.com" target="_blank">ƷƬ߹ۿ </a>| <a href="http://xx2e.com" target="_blank">޹Ʒþ</a>| <a href="http://qestest.com" target="_blank">Ʒsmվ </a>| <a href="http://51nianyefan.com" target="_blank">ĻѲ</a>| <a href="http://222dv.com" target="_blank">AV˾Ʒһ</a>| <a href="http://www79909c.com" target="_blank">Ƶһ</a>| <a href="http://yuejiju.com" target="_blank">AVר4SE</a>| <a href="http://nyminer.com" target="_blank">ƵƬ߹ۿ</a>| <a href="http://sdzsks.com" target="_blank">xxxxxܴƬ߹ۿ</a>| <a href="http://606059.com" target="_blank">޾Ʒ9999þþþ</a>| <a href="http://www999973.com" target="_blank">޳a߹ۿ</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>