﻿<?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>博客园-白板文化</title><link>http://www.cnblogs.com/evanyuan/</link><description /><language>zh-cn</language><lastBuildDate>Thu, 08 Jan 2009 18:58:21 GMT</lastBuildDate><pubDate>Thu, 08 Jan 2009 18:58:21 GMT</pubDate><ttl>60</ttl><item><title>招 Senior .NET Software Engineer / Architect (ShangHai HP GDCC Regular)</title><link>http://www.cnblogs.com/evanyuan/archive/2006/09/25/514094.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Mon, 25 Sep 2006 06:02:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/09/25/514094.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/514094.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/09/25/514094.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/514094.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/514094.html</trackback:ping><description><![CDATA[<p><br>Here, EAI, B2B, SOA are not merely words on book, it's what we think and we do everyday. A project of HP's eCommerce systems, a window to enterprise architecture and SOA.</p>
<p>You will be involved in system analysis and implementation for new&nbsp;business or system reconstruction, system consolidation, work with US and India colleagues with opportunity of oversea travel.</p>
<p>I assume you are good at .NET and XML,&nbsp; have strong OO and reuse thinking, familiar with N-tier architecture. If you have&nbsp;on hand&nbsp;experience of SOA and system integration, experience of ecommerce and working with oversea teams that will be highly preferred. And of course, oral and written english, good communication and teamwork is a must here.</p>
<p>&nbsp;</p>
<p>For general information, plz refer to <a href="http://www.51job.com/sc/show_job_detail.php?itisfrom=wudan&amp;jobiduni=25883526">http://www.51job.com/sc/show_job_detail.php?itisfrom=wudan&amp;jobiduni=25883526</a></p>
<p><br>Send your english resume to <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#121;&#104;&#111;&#110;&#108;&#105;&#110;&#101;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">yhonline@gmail.com</a>. I'll contact you if you are&nbsp;the right person. Salary should range from 6k~12k (14M) </p>
<img src ="http://www.cnblogs.com/evanyuan/aggbug/514094.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44373/" target="_blank">一个美国人在上海</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Road on EA &amp; IT Governance</title><link>http://www.cnblogs.com/evanyuan/archive/2006/08/15/477898.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Tue, 15 Aug 2006 14:54:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/08/15/477898.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/477898.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/08/15/477898.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/477898.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/477898.html</trackback:ping><description><![CDATA[<br>To build a single system likes to build a house<br><br>To construct enterprise architecture likes to plan a city<br><br>Without EA and IT Governance, even if each single system well bulit, the 'city' doesn't work. 
<img src ="http://www.cnblogs.com/evanyuan/aggbug/477898.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44372/" target="_blank">未来应用Web化 Windows应用将逐渐淡出</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Seriously I Enjoy Coding</title><link>http://www.cnblogs.com/evanyuan/archive/2006/06/06/418773.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Tue, 06 Jun 2006 08:02:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/06/06/418773.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/418773.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/06/06/418773.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/418773.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/418773.html</trackback:ping><description><![CDATA[<p>美国的同事transfer了一个小项目过来，他已经做了些high level的设计以及部分编码工作。主要是他手上其它协调，服务器环境设置的工作量近期太大了，所以不得已，只有把做了一半的工作transfer到我们这边来，还很认真的给我们表白过两三&#8220;seriously i enjoy coding much&#8221;。</p>
<p>要知道他已经是两个孩子的爹了。</p>
<img src ="http://www.cnblogs.com/evanyuan/aggbug/418773.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44371/" target="_blank">Windows 7 Beta 1 可以下载了</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>企业应用层面的架构人员－－－持续关注SpringSide（续）</title><link>http://www.cnblogs.com/evanyuan/archive/2006/03/02/341608.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Thu, 02 Mar 2006 15:11:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/03/02/341608.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/341608.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/03/02/341608.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/341608.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/341608.html</trackback:ping><description><![CDATA[<P><BR>接我的上篇Blog <A href="http://evanyuan.cnblogs.com/archive/2006/03/02/341539.html">持续关注SpringSide</A>，以我个人眼光列举几点在技术方面企业应用层面架构人员的主要工作内容：<BR><BR>其一，系统整体层面的物理逻辑划分和集成等方面的规划；<BR><BR>其二，研究并找寻最合适的OpenSource或者免费的付费的第三方组件，将他们按照企业架构若干模式或最佳实践集成到一起搭建成项目骨架；<BR><BR>其三，领域模型的设计，构造业务对象模型，且称为业务架构（技术人员对这个的兴趣好象比不上技术架构，搞笑的是有些项目二十来个业务对象，方法也没几个，倒是逢人便称使用了Hibernate)；<BR><BR>其四，自己开发通用组件或框架，大致是需要满足企业特殊的一些需求，再次强烈建议该动作应以部门级别而非项目级别去考量，否则肯定是和项目耦合很严重的东西；<BR><BR>其五，Contribute to open source, 可能除了TW，没几家公司会鼓励自己的开发人员去搞这个，这个就只有看开发人员的个人兴趣和修为了；<BR><BR><BR>我们是需要更多优秀的开发人员而非半调子的项目经理。至少可以看到，搞三四年开发之后，沿着架构的路子走下去，还是有很多东西可以玩的；另外受外企的影响，国内高级开发人员和架构人员的地位和薪资也在逐渐的提高。呵呵，希望十几二十是年后中国也会有很多秃头长须的世界级的架构师。</P><img src ="http://www.cnblogs.com/evanyuan/aggbug/341608.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44370/" target="_blank">MySpace推出应用小工具 电视也可访问社交网络</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>持续关注SpringSide</title><link>http://www.cnblogs.com/evanyuan/archive/2006/03/02/341539.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Thu, 02 Mar 2006 13:50:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/03/02/341539.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/341539.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/03/02/341539.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/341539.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/341539.html</trackback:ping><description><![CDATA[江南白衣领导的一个OpenSource项目 <A href="http://www.springside.org.cn/">http://www.springside.org.cn/</A>&nbsp; ，主要是力图建立一个企业运用的架构示例，该企业运用的架构基于J2EE平台下众多的OpenSource：<BR><BR>
<LI><A href="http://www.springframework.org/" target=_blank>Spring 2.0</A> - J2EE Framework. 
<LI><A href="http://www.hibernate.org/" target=_blank>Hibernate 3.1</A> - ORM, support EJB3/JPA1.0 in future. 
<LI><A href="http://www.springframework.org/" target=_blank>Spring MVC</A> - Multi-Action Web framework. 
<LI><A href="http://java.sun.com/products/jsp/" target=_blank>JSP2.0</A> - View Template. 
<LI><A href="http://xfire.codehaus.org/" target=_blank>XFire</A> - Web Service.(doing) 
<LI><A href="http://www.acegisecurity.org/" target=_blank>Acegi</A> - Security, RBAC ana ACL.(doing) 
<LI><A href="http://www.eclipse.org/birt/" target=_blank>Eclipse BIRT 2.0</A> - Report Engine.(doing) 
<LI><A href="http://openi.sourceforge.net/" target=_blank>Openi</A> - BI web application for OLAP Report.(doing) 
<LI><A href="http://www.drools.org/" target=_blank>Drools 2.5</A> - Business Rule engine.(doing) 
<LI><A href="http://groovy.codehaus.org/" target=_blank>Groovy</A> - Dynamic script language.(doing) 
<LI><A href="http://www.opensymphony.com/quartz/" target=_blank>Quartz</A> - Enterprise job scheduler.(doing) 
<LI><A href="http://www.compassframework.org/" target=_blank>Compass</A> - Search engine use <A href="http://lucene.apache.org/">Luecene</A>.(doing) 
<LI><A href="http://www.activemq.org/" target=_blank>ActiveMQ</A> and Spring JMS.(doing) 
<LI><A href="http://labs.macromedia.com/flexproductline/" target=_blank>Flex 2.0</A> - RIA.(doing) 
<LI><A href="http://www.servicemix.org/" target=_blank>ServiceMix</A> - ESB(Enterprise Service Bus) and JBI.(doing) 
<LI><A href="http://jakarta.apache.org/commons/validator/" target=_blank>Commons Validator</A> - client and server side validation. 
<LI><A href="http://www.opensymphony.com/sitemesh/" target=_blank>SiteMesh</A> web-page layout and decoration framework. 
<LI><A href="http://www.opensymphony.com/oscache/" target=_blank>OSCache</A> - Web cache solution. 
<LI><A href="http://www.extremecomponents.org/" target=_blank>ExtremeTable</A> - JSP Tag Libraries. 
<LI><A href="http://logging.apache.org/log4j/docs/" target=_blank>Log4j</A> - Logging tool. 
<LI><A href="http://ant.apache.org/" target=_blank>Ant</A> , <A href="http://maven.apache.org/" target=_blank>Maven2</A> , <A href="http://www.junit.org/" target=_blank>JUnit</A>, <A href="http://www.easymock.org/" target=_blank>EasyMock</A>&nbsp;- Build and Test tools. 
<LI>UTF-8 and I18N. 
<LI>Intergrate with <A href="http://www.bea.com/" target=_blank>Weblogic</A> , <A href="http://tomcat.apache.org/" target=_blank>Tomcat</A> , <A href="http://www.jboss.org/" target=_blank>JBoss</A> , <A href="http://geronimo.apache.org/" target=_blank>Geronimo</A>. 
<LI>And we are choising the Workflow and Ajax solution. <BR><BR><BR><BR>企业级.NET项目的架构应该走什么路，或许值得思考。<BR><BR>现状是绝大多数无所谓架构，即使所谓有估计也很难重用，<BR>做得好的大部分可能开始采用些MS App Lib Block + OpenSource + Custom Component(Framework)。 
<P><BR>最近接触或了解了些做.NET外包项目的公司（当然也包括J2EE)，大部分都没有建立在项目组之上的架构组，于是每个项目单独开发架构，比如自我实现些Framework或Common Component。如果没有部门级别的架构建设投入和考量，基于单独项目或某个开发人员个人喜好去定制实现Framework或Common Component实在是不明知的举动。除非某个项目是架构试点项目，有非常牛X的开发人员，项目的部分目的就是为以后的项目进行架构和框架的积累。</P></LI><img src ="http://www.cnblogs.com/evanyuan/aggbug/341539.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44370/" target="_blank">MySpace推出应用小工具 电视也可访问社交网络</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>“官方”辨析---Business Model, Business Object Model, Domain Model, Object Model, Data Model</title><link>http://www.cnblogs.com/evanyuan/archive/2006/02/14/330588.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Tue, 14 Feb 2006 09:26:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/02/14/330588.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/330588.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/02/14/330588.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/330588.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/330588.html</trackback:ping><description><![CDATA[<BR>想到我以前也对这些名词迷惑过，还四处找人解惑，这个&lt;&lt;Core J2EE Patterns&gt;&gt;引用&lt;&lt;Unified Software Development Process &gt;&gt;对这些内容进行辨析，应该是够官方了。<BR><BR><STRONG>Business Model, Business Object Model, Domain Model, Object Model, Data Model</STRONG><A name=idd1e28862></A> 
<P class=docText>For understanding these terms, we turn to the definitions in <SPAN class=docEmphasis>The Unified Software Development Process</SPAN> [<A class=docLink href="/admin/biblio01div01.html#biblio01div01entry19">Jacobson, et al</A>].</P>
<UL>
<LI>
<P class=docList>A <SPAN class=docEmphStrong>business model</SPAN> comprises two models: a <SPAN class=docEmphStrong>business use-case model</SPAN> to describe the business actors and the business processes, and a <SPAN class=docEmphStrong>business object model</SPAN> to describe business entities used by the business use cases.</P>
<LI>
<P class=docList>A <SPAN class=docEmphStrong>domain model</SPAN> is defined as an abstract model that captures the most important types of objects in the context of the system. The domain objects represent the "things" that exist or events that transpire in the environment in which the system works.</P></LI></UL>
<P class=docText>Further, Jacobson et al state that the domain model is a simplified variant of the business model and the two terms are used interchangeably. This is exactly what we see in practice when analysts, designers and developers use the several terms interchangeably - business model, business object model, domain model, and domain object model. This usage dilutes these terms and renders them somewhat ambiguous.</P>
<P class=docText>In our discussion in this book, we use the term <SPAN class=docEmphStrong>conceptual model</SPAN> to mean the abstract model, which mainly describes domain entities, their relationships and business rules. To describe a concrete object-oriented implementation model of a conceptual model, we use the term <SPAN class=docEmphStrong>object model</SPAN>, which describes the classes and relationships used to realize a conceptual model. We use another term, <SPAN class=docEmphStrong>data model</SPAN>, to mean the data implementation model, such as an Entity-Relationship (ER) model for an RDBMS database.<A name=idd1e28918></A><A name=idd1e28923></A><A name=idd1e28930></A></P><img src ="http://www.cnblogs.com/evanyuan/aggbug/330588.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44369/" target="_blank">Borland前CEO出任VMware首席运营官</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>Form Data Validation Framework?</title><link>http://www.cnblogs.com/evanyuan/archive/2006/02/11/328877.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Sat, 11 Feb 2006 07:04:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/02/11/328877.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/328877.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/02/11/328877.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/328877.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/328877.html</trackback:ping><description><![CDATA[我老土，&lt;&lt;Core J2EE Patterns&gt;&gt;这两天才开读。<BR><BR>在表现层中，作者写到<BR>&#8220;The typing and constraints information is abstracted out of the model state and into a generic framework. This separates the validation of the model from the application logic in which the model is being used, thus reducing their coupling.<A name=idd1e3707></A> 
<P class=docText>Model vali Form Data Validation Framework dation is performed by comparing the metadata and constraints to the model state. The metadata and constraints about the model are typically accessible from some sort of simple data store, such as a properties file. A benefit of this approach is that the system becomes more generic, because it factors the state typing and constraint information out of the application logic.<A name=idd1e3715></A></P>
<P class=docText>An example is to have a component or subsystem that encapsulates validation logic, such as deciding whether a string is empty, whether a certain number is within a valid range, whether a string is formatted in a particular way, and so on. When various disparate application components want to validate different aspects of a model, each component does not write its own validation code. Rather, the centralized validation mechanism is used. The centralized validation mechanism will typically be configured either programmatically, through some sort of factory, or declaratively, using configuration files.</P>
<P class=docText>Thus, the validation mechanism is more generic, focusing on the model state and its requirements, independent of the other parts of the application. A drawback to using this strategy is the potential reduction in efficiency and performance. Also, more generic solutions, although often powerful, are sometimes less easily understood and maintained.</P>
<P class=docText>An example scenario follows. An XML-based configuration file describes a variety of validations, such as "required field," "all-numeric field," and so on. Additionally, handler classes can be designated for each of these validations. Finally, a mapping links HTML form values to a specific type of validation. The code for validating a particular form field simply becomes something similar to the code snippet shown in <A class=docLink href="/admin/#ch02list05">Example 2.5</A>.&#8221;<BR><BR>我取个名字叫 Form Data Validation Framework, 感觉这个东西蛮有用的（至少对我们公司这么多系统验证的逻辑老是在那里重复啊重复）。不知道.NET下面有没类似可用的东西，没有的话偶很想找时间做一个。</P><img src ="http://www.cnblogs.com/evanyuan/aggbug/328877.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44368/" target="_blank">中国计算机报：找寻IT产业的耐寒基因</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>重读《重构》之杂感</title><link>http://www.cnblogs.com/evanyuan/archive/2006/01/25/323252.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Wed, 25 Jan 2006 08:30:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/01/25/323252.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/323252.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/01/25/323252.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/323252.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/323252.html</trackback:ping><description><![CDATA[<SPAN style="FONT-SIZE: 10pt">
<P>两年后再次翻阅《重构》，感觉很多手法已经很自然的融入到平时的开发之中。而平时开发中有时犹豫不决的地方，在《重构》里正好有最佳解决方案，看来还是温书太少。</P>
<P>有一点，不知道别人会否和我一样想，世事无绝对，比如书里提到消灭switch, 我曾经对一段简单的代码采用remove switch with state and polymorphism， 但是实在感觉那么简单的一个class没必要又抽象出N个子类和方法的多态实现，如此去处理，感觉反而不好维护不好理解。我担心会不会有时候别人指着书对着我的代码说&#8220;嘿，按重构手法，这里应该这样改...&#8221;，要知道系统总是会有很多trade-off,比如简单编码，效率，代码所有权等等，未必是按照重构手法就是最优的解决方案，书里面也提到了，先重构了碰到效率等问题的时候以后再调整，要知道有可能那段代码已经是trade-off之后的产物。</P>
<P>顺便提一点当前手上碰到的一个很难进行重构的场景：项目已经进入维护阶段，客户的需求是分批来，但是后来的需求可能很紧急需要比先到的需求提前发布，所以项目经理采用了版本控制&#8220;基线+分支&#8221;的方式，我在某个分支上如果做了重构，每次将分支合并到基线上去的时候简直是莫大的痛苦，而且很容易出错，而其它正在开发的分支以后再合并的时候又要痛苦一次。有时候会放弃重构，感觉就象是看着代码在慢性死亡。<BR><BR>还有个疑问：喜欢重构的人的家里面是一番什么样子呢？一个喜欢代码干净利落的人，会不会忍受自己家里面东西乱摆乱放象个狗窝样呢？至少我不太喜欢那个样子。</P></SPAN><img src ="http://www.cnblogs.com/evanyuan/aggbug/323252.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44367/" target="_blank">SNS画地为牢：霸王条款梗住了谁</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>ROI of Agile Approach</title><link>http://www.cnblogs.com/evanyuan/archive/2006/01/22/321715.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Sun, 22 Jan 2006 08:43:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/01/22/321715.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/321715.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/01/22/321715.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/321715.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/321715.html</trackback:ping><description><![CDATA[<BR>A report from Forrester studyed on TW about the ROI of Agile Development <BR><A href="http://prninternational.com/cgi/news/release?id=118261">http://prninternational.com/cgi/news/release?id=118261</A><BR><BR>
<P><SPAN style="FONT-SIZE: 12pt"><SPAN style="COLOR: #000080"></P>
<P><SPAN style="FONT-SIZE: 12pt">- Reduced cost by 57 per cent compared to other IT solutions for similar complex projects.</P>
<P>- Reduced effort by 62 per cent compared to alternatives, including in- house development and previously employed consultants.</P>
<P>- Reduced critical defects by nearly 80 per cent.</P>
<P>- Reduced overall defects by more than 60 per cent.</P></SPAN></SPAN>
<P></SPAN><BR><BR>But I think, this report can't on behalf&nbsp;of the average ROI of agile development&nbsp;, because TW is so special, there are so many technical talents, not every company that practice agile development can do XP well, in&nbsp;result, it's hard to achieve such high ROI.</P><img src ="http://www.cnblogs.com/evanyuan/aggbug/321715.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44366/" target="_blank">方兴东：不再做任何公司CEO</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>读 《J2EE Without EJB》</title><link>http://www.cnblogs.com/evanyuan/archive/2006/01/13/316982.html</link><dc:creator>白板</dc:creator><author>白板</author><pubDate>Fri, 13 Jan 2006 14:55:00 GMT</pubDate><guid>http://www.cnblogs.com/evanyuan/archive/2006/01/13/316982.html</guid><wfw:comment>http://www.cnblogs.com/evanyuan/comments/316982.html</wfw:comment><comments>http://www.cnblogs.com/evanyuan/archive/2006/01/13/316982.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/evanyuan/comments/commentRss/316982.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/evanyuan/services/trackbacks/316982.html</trackback:ping><description><![CDATA[<P><FONT face="Times New Roman" color=#000000 size=3></FONT>&nbsp;</P>
<P><FONT face="Times New Roman" color=#000000 size=3>书我就不多介绍了，在J2EE社区挺热的。看到一半的时候，在JE上放了段话：</FONT><FONT style="FONT-SIZE: 8pt" face="Times New Roman" color=#000000 size=3><SPAN style="COLOR: #000080"></P><FONT face="Times New Roman" color=#000000 size=3><SPAN style="COLOR: #000080"><FONT face="Times New Roman" color=#000000 size=3><SPAN style="FONT-SIZE: 8pt"><FONT face="Times New Roman" color=#000000 size=3><SPAN style="COLOR: #000080">
<P></SPAN></FONT></SPAN></FONT></SPAN></FONT></SPAN></FONT><FONT face="Times New Roman" color=#000000 size=3><SPAN style="FONT-SIZE: 8pt"><FONT style="FONT-SIZE: 8pt; COLOR: #000080" face="Times New Roman" color=#000000 size=3>看了前面几章，有个大大的问号，J2EE without EJB，那为什么不用.NET呢？以前老说.NET上不了企业级，现在看来微软也不用造EJB.NET了。 <BR><BR>在书里面看到说J2EE现在最大的优势是优秀的开源社区的支撑，这倒不假。不过.NET这边发展也很快，首先MS自己会搞很多东西出来，N多的J2EE平台开源框架也有了.NET版本。 <BR><BR>在IDE,UI,Class Library,Cost方面, .NET都有明显的优势，数据库SQLServer2005，集成服务器Biztalk，工作流引擎MS WorkFlow Foundation， AJAX框架Atlas...... <BR><BR>无意挑起任何争端，只想听听各位的分析，在以后的企业级系统方向上，J2EE的优势和机遇。</FONT></SPAN><BR><BR><BR>Robbin对此的答复 ：</P>
<P></P><SPAN style="COLOR: #333399"><SPAN style="FONT-SIZE: 8pt"><SPAN style="COLOR: #333399">
<P>谈谈个人的看法： </P>
<P>Microsoft掌握了dotnet所有的底层技术发展方向，实际上压抑了底层开源框架的发展，可以完全可以想像，一旦Microsoft推出自己的技术，那么相应的开源框架就没有人去用了，前段时间看过一个文章谈到了这些话题。lucene.net项目现在就关门大吉了。看下面的引文： </P>
<P>引用: <BR><SPAN style="COLOR: #666699">Malcom 的文章说，.NET 开发者接受 Microsoft 提供的工具和服务，我想这在很大程度上是对的。.NET 开发者很少花时间，开发持续层方案（persistence layers），web 应用程序框架（web application frameworks）或者缓存解决方案（caching solutions），因为 Microsoft 已经为这些问题提供了 Microsoft 解决方案。但是仅仅是因为 Microsoft 提供了这些工具吗？那为什么 JSF，JDO，NetBeans 不能成为 Java 技术 Blog 站点的主流声音呢？拿 ASP.NET 和 JSF 作一个细致的比较，它们并没有太多的不同，但 ASP.NET 和 Visual Studio 一起被广泛应用，而 JSF 却很少人用并且饱受嘲弄。我认为 Malcom 是对的，的确是思维方式的差异早就了这一切。 </P>
<P>回过头来看看 Lucene.NET 的那群人吧：他们为什么关闭了开源的项目，他们为什么不再继续为这个很优秀的想法贡献他们的时间和精力呢？或许 .NET 社区对他们工作的反响，让他们无法继续维持下去了吧！使用 google 在 weblogs.asp.net 上搜索&#8220;lucene&#8221;只得到了 17 项结果，而在 jroller.com 得到了 2570 项结果。Lucene 已经存在很长时间了，但 Lucene.NET 的那群人们把东西包起来另起门户，其中一个原因可能就是：几乎没有人关注他们的工作：大家都在忙着研究 SQL Server 的全文检索，这才是 Microsoft 提供的解决方案（当然，需要为每个处理器花费成千的美元购买许可）。在 Java 世界，Lucene，Struts，Tomcat 之所以繁荣，也是因为为一个大的开源项目工作，给开发者带来了足够的威望。而当你投身于一个开源项目，却很少人注意时，沮丧的你也许也要寻找另外的动力。在 Lucene.NET 这个事例中，money 是他们的动力，所以他们关闭了项目，转而贩卖他们的个人版本和商业版本。他们或许能得到双倍的美元吧，但我打赌一年以内，不会有多少人谈论 seachblackbox.com 的。 </P></SPAN>
<P>那么我的观点是什么呢？是说 .NET 开发者很贪婪，不关心社区吗？不是这样的。我认为，这两个社区有不同的司机：.NET 开发者盯着 Microsoft，关心 Microsoft 提供的解决方案，如果他们在车窗外看到了好东西并拿来使用，Microsoft 可能会最终进入这个领域，并发布产品或者提出解决方案，这样，以前的工作就完全被否定了。Microsoft 是 .NET 社区的司机。Java 开发者们看了看 Sun 推出的产品和语言规范，扭头去开发他们自己的工具、框架、应用程序。Sun 推出的东西，Java 社区的开发者只有他们确实喜欢才会去使用。Struts 的门庭若市，与 JSF 的门庭冷落，印证了这一点。在 Java 社区，开发者自己是司机。 </P>
<P><BR>在IDE方面，Visual Studio只能说是一个初学者友好的IDE，对于熟练的程序员来说，从编写代码的程序员使用角度来说，它和Eclipse/IDEA差得很远。 </P>
<P>桌面UI方面dotnet有压倒性的优势，不过在服务端领域，完全不涉及桌面UI。 </P>
<P>Class Library方面现在dotnet还远远没有Java那么丰富。 </P>
<P>SQLServer和Oracle相比，综合各个方面来说，不在一个等级上。何况SQL Server实在是Windows平台一大安全漏洞，你能放心去用吗？ </P>
<P>Biztalk没有用过，不知道。 </P>
<P>MS WorkFlow Foundation这玩意现在已经出来吗？有人用过了吗？而Java世界的workflow软件，开源的，商业的不要太多。 </P>
<P>AJAX框架主要还是客户端的JavaScript，atlas服务器端通讯加一个Java实现，不一样拿过来放在Java Web Application里面用吗 </P>
<P>其实我感觉你都没有说到点子上。dotnet的主要优势都不是这些，这些方面也不是dotnet优势。dotnet优势就是一个公司做的，所以提供了一个统一的，一体化的集成解决方案，而且比较易学易用。不像java，官方做出来的标准是阿斗，不争气，上不了台面，大家下面野路子做的东西好是好，就是五花八门，各搞各的，没有一个统一的一体化集成解决方案。你得集成n个框架才能组合出来一个可用的顺手的开发平台，这个开发平台的学习成本就实在可观了。</SPAN></SPAN></SPAN></P>
<P><BR>我把这本书给当前项目的PM看了，PM是J2EE一路走过来的，EJB上面研究得比较深。偶EJB一直没有仔细的理解过，今天下午我们两个都得空一点，把他拉到会议室给我讲了一把EJB，偶决定写几句心得体会，如果下面内容误差比较大，归咎于我的知识和理解的缺陷&nbsp; :-)</P>
<P>老大是从RPC说起的~~~<BR>在XX年代，硬件的性能有限，分布式运用逐渐兴起，RPC逐渐成了Client/Server通信标准<BR>若干年后，为了解决跨平台多语言等问题，COBRA出世了..<BR>不过COBRA有这么几个主要问题：<BR>&nbsp;（1）每家厂商提供的库不一致<BR>&nbsp;（2）CORBR本身没有解决事务、安全等企业级应用方面的问题，每家厂商自己实现，差异就更大了<BR>&nbsp;（3）学习的成本比较高<BR>（这么好的技术感觉被商业利益给害了)</P>
<P>然后，Sun站在COBRA的肩膀上，搞出了J2EE，用统一的标准解决COBRA面临的一些主要问题（还是没有MS狠，连标准带实现都独揽了）。</P>
<P>再回到&lt;&lt;J2EE Without EJB&gt;&gt;，里面反复强调尽量避免分布式的运用，在这个基础上轻量级容器应运而生。我想，当今硬件性能上去了，价格下来了，集群技术发展了，分布式的需求看似没有以前那么迫切了。</P>
<P>先在看来又到了轻量级容器群雄格局的场面了，何时再能统一？相信不会太遥远....&nbsp;</FONT></P><img src ="http://www.cnblogs.com/evanyuan/aggbug/316982.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/><a href="http://job.cnblogs.com/offer/302/" target="_blank">盛大招聘.Net开发工程师 </a><br/><a href="http://www.hjbook.net/product/4041/" target="_blank">经典好书：.NET框架程序设计（修订版）</a><br/>新闻：<a href="http://news.cnblogs.com/n/44365/" target="_blank">Google官方文件证实裁减大量合同工</a><br/>导航：<a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://kb.cnblogs.com" target="_blank">知识库</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://job.cnblogs.com/" target="_blank">招聘</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/group.htm" target="_blank">小组</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://wz.cnblogs.com/" target="_blank">网摘</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item></channel></rss>