﻿<?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-放松人生，追求完美-随笔分类-设计模式</title><link>http://www.blogjava.net/hx9111/category/1758.html</link><description>生如夏花，死如秋叶 
生如夏花之绚烂，死如秋叶之静美</description><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 08:19:46 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 08:19:46 GMT</pubDate><ttl>60</ttl><item><title>读Rod Johnson的Without EJB 有感 （1）</title><link>http://www.blogjava.net/hx9111/archive/2006/05/31/49367.html</link><dc:creator>我爱夏花,更爱秋叶</dc:creator><author>我爱夏花,更爱秋叶</author><pubDate>Wed, 31 May 2006 15:18:00 GMT</pubDate><guid>http://www.blogjava.net/hx9111/archive/2006/05/31/49367.html</guid><wfw:comment>http://www.blogjava.net/hx9111/comments/49367.html</wfw:comment><comments>http://www.blogjava.net/hx9111/archive/2006/05/31/49367.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hx9111/comments/commentRss/49367.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hx9111/services/trackbacks/49367.html</trackback:ping><description><![CDATA[
		<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'; mso-bidi-font-weight: bold">这几天总算有点时间，可以看看手头的书了。</span>
				<span style="mso-bidi-font-weight: bold">
				</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'; mso-bidi-font-weight: bold">手头一直有本书从买来就没有翻一下——《</span>
				<span lang="EN-US" style="mso-bidi-font-weight: bold">expert one-on-one J2EE Development without EJB</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">》，这几天没事翻了一下。觉得大师就是大师一上来就把我们的苦衷说的清清楚楚，还是实践出真理阿。</span>
				<span lang="EN-US" style="mso-bidi-font-weight: bold">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<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'; mso-bidi-font-weight: bold">最让我记忆犹新的是这几句话：</span>
				<span lang="EN-US" style="mso-bidi-font-weight: bold">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="mso-bidi-font-weight: bold">
						<o:p> </o:p>
				</span>
		</p>
		<table class="MsoTableGrid" style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BACKGROUND: #e6e6e6; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dash-small-gap #FF6600 .5pt; mso-yfti-tbllook: 480; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt" cellspacing="0" cellpadding="0" border="1">
				<tbody>
						<tr style="HEIGHT: 145.85pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
								<td style="BORDER-RIGHT: #ff6600 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: #ff6600 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: #ff6600 1pt dashed; WIDTH: 426.1pt; PADDING-TOP: 0cm; BORDER-BOTTOM: #ff6600 1pt dashed; HEIGHT: 145.85pt; BACKGROUND-COLOR: transparent; mso-border-alt: dash-small-gap #FF6600 .5pt" valign="top" width="568">
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<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'; mso-bidi-font-weight: bold">检验一个体系结构是否合理，判断一种实现选择是否合适，都要看他是否符合这一主旋律。</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<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'; mso-bidi-font-weight: bold">主旋律是：</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 62.85pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 62.85pt">
												<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; 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'; mso-bidi-font-weight: bold">简单</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 62.85pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 62.85pt">
												<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; 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'; mso-bidi-font-weight: bold">高产</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 62.85pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 62.85pt">
												<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; 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'; mso-bidi-font-weight: bold">面向对象为本</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 62.85pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 62.85pt">
												<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; 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'; mso-bidi-font-weight: bold">业务需求至上</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 62.85pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 62.85pt">
												<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; 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'; mso-bidi-font-weight: bold">重视检验过程</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
										<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 62.85pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 62.85pt">
												<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; 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'; mso-bidi-font-weight: bold">重视可测试性</span>
												<span lang="EN-US" style="mso-bidi-font-weight: bold">
														<o:p>
														</o:p>
												</span>
										</p>
								</td>
						</tr>
				</tbody>
		</table>
		<br />
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">所谓的主旋律，个人理解就是一种审美观点，就像大家看到漂亮的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">MM</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">一样，为什么</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">MM</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">这么漂亮，因为他符合人们对漂亮的机电看法<br />——</span>
						<font size="3">
								<font size="3">
										<font size="3">
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">国色天香</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
												</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">倾城倾国</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
												</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">沉鱼落雁</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
												</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">闭月羞花</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
												</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">如花似玉</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
												</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">花容月貌</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
												</span>
												<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">美若天仙</span>
										</font>
										<span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
										</span>
								</font>
								<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">
										<font size="3">艳如桃李。。。反正就是美。</font>
										<br />
										<br />
								</span>
								<span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
										<o:p>
										</o:p>
								</span>
						</font>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<font size="3">
								<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">从设计模式角度说明主旋律，就是设计中常常遵守的几点原则——可维护性，可扩展性，可复用性，要面向接口去设计，等等。</span>
								<span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
										<o:p>
										</o:p>
								</span>
						</font>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<font size="3">
								<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">以上这些都是从理论角度出发考虑的，而</span>
								<span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Rod Johnson</span>
								<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">是从实践的角度来考虑问题，大学学了点哲学原理都运用在这里了。以前在设计第一个框架的时候没有太多的考虑到程序员的实用型，只是为了设计而设计，最后把框架设计的及其复杂，最后的结果只有进行重新设计，进行框架的重构。而在设计中遇到的问题很多是</span>
								<span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Rod </span>
								<span style="FONT-SIZE: 10pt; FONT-FAMILY: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">在书中描述的场景，真是深有感触阿。</span>
								<span lang="EN-US" style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">
										<o:p>
										</o:p>
								</span>
						</font>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 45pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 45.0pt">
				<font face="Times New Roman">
						<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings">
								<span style="mso-list: Ignore">²<span style="FONT: 7pt 'Times New Roman'"><font size="3">        </font></span></span>
						</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">简单</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">设计中常常应该遵守</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">2/8</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">原则，系统中</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">80%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">是最长用的，应该以这</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">80%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">为重点去设计，如果只是为了设计中的完美而过多地考虑其他的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">20%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">就会陷入复杂的漩涡。就拿我们现在设计的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JBrain</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">（我们的框架代号）框架中的元数据系统来说把，本来是为了对系统中的所有元素的一个建模过程，涉及到显示模型建模，业务模型建模，数据模型建模，工作流模型建模，（这个就好比在基础框架基础上又抽象出一层），我们在建模中就是考虑到那</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">80%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">常见的情况，对模型系统进行设计，但是每一个业务都会涉及到报表系统，这就是那</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">20%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的情况，如果我们再花精力去研究报表系统的建模，就会把自己带入无比复杂的深渊中，所以我们决定用这</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">80%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的模型建模来描述这</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">20%</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的报表建模，这样问题就简单多了，对于报表的设计来说，虽然有点麻烦，但是我们的设计可以适应大多数的情况。实际只要我们作一些辅助的工具就可以简化报表模型的建模，这是我们在框架开发的后期发现的，经过实践证明我们当初的想法是真确的。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">这种情况还出现在我们当初在做一个业务系统的时的框架选择上，当时我们为了框架能够承受更大的负载度，而考虑使用</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">EJB</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的多层开发（幸运的是没有用实体</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Bean</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">），这使我们的开发量整整增加的一倍，还在不考虑测试的情况下。项目结束了上线使用，用户根本没有当初设想的并发量，我们当时真的还考虑了</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Rod </span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">所说的是否能够在客户端支持</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Swing</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">程序，幸亏后来被否定了。有时候我们在设计中总是追寻完美，为了设计而设计，这种做法正如</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Rod</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">所说的是不科学的。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">简单才是美，因为简单出现了</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">POJO</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">对象，因为简单出现了</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Hibernater</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">，因为简单出现了</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Annotation</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">，因为简单出现了</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">EJB3.0</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">。因为简单才是</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">java</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的开源社区如火如荼，人声鼎沸。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt">
				<span lang="EN-US" style="mso-bidi-font-weight: bold">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 45pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 45.0pt">
				<font face="Times New Roman">
						<span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-bidi-font-weight: bold; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings">
								<span style="mso-list: Ignore">²<span style="FONT: 7pt 'Times New Roman'"><font size="3">        </font></span></span>
						</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">高产</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">有时候，设计者注重的是设计，这也是我们设计中常常存在的一种习惯，程序员总是追求完美，追求</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">perfect</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">，而一个企业在完成项目中要的是生成率，要的是质量，一个功能用那种完美的框架需要</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">2</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">周的时间才能开发完，而使用简单的框架只需要</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">3</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">天的时间就可以完成了，你说我们应该使用那种框架。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">去年在开发一个项目的时候，因为我们是和其他部门一起合作开发，在项目开始的调研当中，我们极力推荐使用我们的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JBrain</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">元数据框架，而另为一个部门却强调使用</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">所建立的框架（</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">刚出来，而且那个部门的人员还没有太多的理解</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的深刻含义，他们觉得</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">非常好，非常的完美），最后因为我们的框架是黑盒的，客户不想把他们的项目绑死在我们的框架上，所以最后决定使用</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">来设计框架（不说开发一个企业级框架所需要的时间），这里我不是说</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">不好，我研究过</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">，觉得他的设计哲学真的很好，尤其他的组件树和生命周期设计的非常完美，尤其他的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Render</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">机制，真的就是我们以前在使用</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">jsp Tag</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的时候一直想要又没有的功能（我们框架中的显示模型有很多思想是从他的组件数概念而来的），但是如果用</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">jsf</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">开发企业级程序，而且是在国内这种客户要求非常苛刻的情况下是非常不足的。因为我们的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">框架是在</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Apache </span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">MyFace</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">基础上开发的，实际上后来他的标签我们没有用多少，大部分都是我们自己在他的基础上重新开发的。后来框架设计出来了，生产率太低，完成一个工作需要做很多很多的事，我实在看不下去了，看着我周边的同事一边又一边的叹气（而且项目结束前几乎是天天加班到</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">9</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">点），根据我们原有框架的元数据原理，写了一个</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">JSF</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">框架的代码生成机，这才把生产率稍微提上了一点。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt">
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">实际有时候我们设计框架的时候不必要考虑过多，一定要从开发和实用的角度去考虑，多考虑一下程序员的工作方式。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 21pt">
				<span lang="EN-US" style="mso-bidi-font-weight: bold">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US" style="mso-bidi-font-weight: bold">
						<span style="mso-tab-count: 1">       </span>
				</span>
				<font face="Times New Roman">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">今天就写到这里，可能是和</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Rod</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">的</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">Without EJB</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">中的想法产生了共鸣才有了这么多费话，其他的感触将在后续的随笔中写到。写这篇文章也是为了提醒自己开发的时候一定要从实际出发，一切的灵感都是来源于实践的。</span>
						<span lang="EN-US" style="mso-bidi-font-weight: bold">
								<o:p>
								</o:p>
						</span>
				</font>
		</p>
<img src ="http://www.blogjava.net/hx9111/aggbug/49367.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hx9111/" target="_blank">我爱夏花,更爱秋叶</a> 2006-05-31 23:18 <a href="http://www.blogjava.net/hx9111/archive/2006/05/31/49367.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>白话自己心中的设计模式</title><link>http://www.blogjava.net/hx9111/archive/2005/06/16/6238.html</link><dc:creator>我爱夏花,更爱秋叶</dc:creator><author>我爱夏花,更爱秋叶</author><pubDate>Thu, 16 Jun 2005 14:07:00 GMT</pubDate><guid>http://www.blogjava.net/hx9111/archive/2005/06/16/6238.html</guid><wfw:comment>http://www.blogjava.net/hx9111/comments/6238.html</wfw:comment><comments>http://www.blogjava.net/hx9111/archive/2005/06/16/6238.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/hx9111/comments/commentRss/6238.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hx9111/services/trackbacks/6238.html</trackback:ping><description><![CDATA[<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">&nbsp;&nbsp;&nbsp;再一次的看设计模式的时候，感觉自己对设计模式，有了一个进一步的理解（自我感觉的</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Wingdings; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold; mso-char-type: symbol; mso-symbol-font-family: Wingdings"><SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">J</SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">）</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">.<BR><BR><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">在数学计算中我们要求</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">A</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Wingdings; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold; mso-char-type: symbol; mso-symbol-font-family: Wingdings"><SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">à</SPAN></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">B</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">点的最短路径，可能从</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">A</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">点到</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">B</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">点有很多种走法，但是追求完美的我们（尤其是程序员），总是希望找到一条最短的路径。设计模式也是相同，在设计中我们想要找到设计中的最短路径，也就是设计的永恒之道（就是设计模式中常说的无名的质），说白了，就是如何设计才能使系统更容易扩张，更灵活，更稳定。模式追求的是一种最佳的解决方案，在这个方案的指导下，我们能够跟好的去实现我们所想要实现的东西。<BR><BR></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">数学计算的时候有一定的法则，软件设计的时候也是有一定的法则的，而这些法则，都是在追求软件设计的守恒定律时形成的——什么开</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">/</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">闭原则，面向接口原则，依赖倒置原则等等，但是软件设计中的原则也是可变的，而且是时刻发展的，要不然就不会出现，今天的</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">spring</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">非常火的场面，</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">Ioc</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">原则。<BR><BR></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">数学计算是通过许多的公式推倒出结果的，但是我们求解的时候，会出现这种情况，</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">C</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">结果，是通过</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">A</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">和</SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold">B</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">两个公式推导出来的，模式也是一样，有一些较小的模式，而这些较小的模式是一些较大的模式的基础。<BR><BR></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">在理解模式的时候我们可以从对象的生命周期来理解。<BR><BR></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">对象产生的时候需要描述对象的属性，它的存在形式，创建模式就是用来描述这个的；而这个对象存在就会和其他对象发生联系，就会和其他对象发生作用，如何描述他们之间的联系和作用就是结构模式要做的事了；前面这些都是静态的，对象的存在，不可能永远静止不动的，它会根据自己的需要，完成一些动作，语言中还有动词，名词，形容词之分呢！模式就跟语言一样需要有动词来描述对象，行为模式就是用来描述对象的行动的；<BR><BR></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">设计模式，实际就是一种设计中的语言，很多的最基本的模式，就是组成这种语言的基础，我们在理解模式的时候不能只是背模式，而应该灵活的运用他们，让他们有机的结合在一起，形成一个生动的句子。这个就好比我们学英语，不是光背一些单词，就能写出一篇好文章的，还需要我们有语感，理解了以后才能写出来。<BR><BR></SPAN><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><FONT color=#000000><FONT size=2><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><SPAN style="mso-tab-count: 1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </SPAN></SPAN><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-weight: bold">这个只是我对模式的一点点个人的理解，不代表所有人的观点！：）</SPAN></FONT></FONT><SPAN lang=EN-US style="mso-bidi-font-weight: bold"><o:p></o:p></SPAN></P><img src ="http://www.blogjava.net/hx9111/aggbug/6238.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hx9111/" target="_blank">我爱夏花,更爱秋叶</a> 2005-06-16 22:07 <a href="http://www.blogjava.net/hx9111/archive/2005/06/16/6238.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>