﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Sam's Blog-文章分类-UML</title><link>http://www.blogjava.net/samwang/category/28545.html</link><description>世界因你而美丽</description><language>zh-cn</language><lastBuildDate>Thu, 24 Jan 2008 19:27:50 GMT</lastBuildDate><pubDate>Thu, 24 Jan 2008 19:27:50 GMT</pubDate><ttl>60</ttl><item><title>Strategy（策略）模式</title><link>http://www.blogjava.net/samwang/articles/177207.html</link><dc:creator>Sam Wang</dc:creator><author>Sam Wang</author><pubDate>Wed, 23 Jan 2008 02:52:00 GMT</pubDate><guid>http://www.blogjava.net/samwang/articles/177207.html</guid><wfw:comment>http://www.blogjava.net/samwang/comments/177207.html</wfw:comment><comments>http://www.blogjava.net/samwang/articles/177207.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/samwang/comments/commentRss/177207.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/samwang/services/trackbacks/177207.html</trackback:ping><description><![CDATA[Strategy--定义一系列的算法，把它们一个个封装起来，并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。<br />
<img src="http://www.blogjava.net/images/blogjava_net/samwang/strategy.jpg" alt="" border="0" /><br />
<strong><em><u><span style="font-size: 18pt;">参与者<br />
<br />
</span></u></em></strong><strong>Strategy</strong><br />
<ul>
    <li>&nbsp;-- 定义所有支持的算法的公共接口。Context使用这个接口来调用某ConcreteStrategy定义的算法。</li>
</ul>
<strong>ConcreteStrategy（具体策略)</strong><br />
<ul>
    <li>&nbsp;-- 以Strategy接口实现英雄模范具体算法。</li>
</ul>
<strong>Context（上下文）</strong><br />
<ul>
    <li>--用一个ConcreteStrategy对象来配置。</li>
</ul>
<ul>
    <li>--维护一个对Strategy对象的引用。</li>
</ul>
<ul>
    <li>--可定义一个接口来让Strategy访问它的数据。</li>
</ul>
<br />
<u><em><strong><span style="font-size: 18pt;">适用性</span></strong></em></u><br />
<ol>
    <li>当存在以下情况时使用Strategy模式</li>
    <li>许多相关的类仅仅是行为有异。&#8220;策略&#8221;提供了一种用多个行为中的一个行为来配置一个类的方法。</li>
    <li>需要使用一个算法的不同变体。</li>
    <li>算法使用了客户不应该知道的数据。可使用策略模式以避免暴露复杂的、与算法相关的数据结构。</li>
</ol>
<br />
<br />
<br />
<img src ="http://www.blogjava.net/samwang/aggbug/177207.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/samwang/" target="_blank">Sam Wang</a> 2008-01-23 10:52 <a href="http://www.blogjava.net/samwang/articles/177207.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>UML例图对应中文名称</title><link>http://www.blogjava.net/samwang/articles/171863.html</link><dc:creator>Sam Wang</dc:creator><author>Sam Wang</author><pubDate>Mon, 31 Dec 2007 08:34:00 GMT</pubDate><guid>http://www.blogjava.net/samwang/articles/171863.html</guid><wfw:comment>http://www.blogjava.net/samwang/comments/171863.html</wfw:comment><comments>http://www.blogjava.net/samwang/articles/171863.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/samwang/comments/commentRss/171863.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/samwang/services/trackbacks/171863.html</trackback:ping><description><![CDATA[<ul>
    <li><strong>User Case Diagram -- 用例图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/UseCase.gif" height="151" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>Component Diagram -- 组件图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/Component.png" height="127" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>Class Diagram -- 类图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/Class.gif" height="222" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>Activity Diagram -- 行为图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/Activity.png" height="170" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>Collaboration Diagram -- 协作图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/Collab.gif" height="151" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>Deployment Diagram -- 开发图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/Deployment_Diagram.png" height="235" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>Sequence Diagram -- 顺序图</strong></li>
</ul>
<blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/Sequence.gif" height="157" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
</strong>
<ul>
    <li><strong>State Diagram -- 状态图</strong></li>
</ul>
<strong></strong><blockquote><blockquote><strong><img alt="" src="http://www.netbeans.org/images/articles/uml-why-model/State.png" height="107" width="200" /></strong><br />
</blockquote><strong></strong></blockquote><strong><br />
<br />
</strong>
<img src ="http://www.blogjava.net/samwang/aggbug/171863.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/samwang/" target="_blank">Sam Wang</a> 2007-12-31 16:34 <a href="http://www.blogjava.net/samwang/articles/171863.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>