<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feeds.feedsky.com/styles/temp01.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feeds.feedsky.com/csdn.net/mattwin" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feeds.feedsky.com/csdn.net/mattwin" type="application/rss+xml"></fs:self_link><lastBuildDate>Tue, 15 Apr 2008 16:41:00 GMT</lastBuildDate><title>温海波的专栏</title><link>http://blog.csdn.net/mattwin/</link><item><title>缓存AOP编程的文摘（java例子），数据缓存切入编程的文章。【截取】</title><link>http://blog.csdn.net/mattwin/archive/2008/04/15/2294399.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2294399.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2294399.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2294399</trackback:ping><description>另一个关于横切关注点的典型例子是缓存数据。增加缓存的主要目的是改进性能，特别是当获取数据是高代价操作的时候。大多数在最后一章讨论的框架都有他们自己的缓存解决方案，然而缓存是很实际的横切关注点。
 
       由于你引入缓存的动机是提高性能，可以增加一个测试类UserManagerTest测试UserManagerImpl的性能。把下面的代码加到test/org/appfuse/service/UserManagerTest.java中。
 注意
测试中的StopWatch是一个记录任务时间的实用类。
 
public void testGetUserPerformance() {
user = new User();
user.setFirstName(&quot;Easter&quot;);
user.setLastName(&quot;Bunny&quot;);
 
user = mgr.saveUser(user);
 
String name = &quot;getUser&quot;;
StopWatch sw = new StopWatch(name);
sw.start(name);
log.d&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2294399.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Wed, 16 Apr 2008 00:41:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/15/2294399.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/15/2294399.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>一篇关于AOP的文章</title><link>http://blog.csdn.net/mattwin/archive/2008/04/15/2294320.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2294320.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2294320.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2294320</trackback:ping><description>软件开发领域一直一来的一个核心问题就是如何能够更好地满足Dijkstra所提出的separation of concerns原则。这个原则表达了代码和开发过程的一个最为重要的特性，但是遗憾的是它只是一个原则，其中并没有告诉我们如何做才能满足这一原则。人们在寻求能够满足这一原则的实现技术上进行了很多的探索，也取得了许多成就。其中，AOP(Aspect-Oriented Programming)就是这方面的一项最新技术。AOP的概念最初是由Xerox PARC研究中心的研究人员首先提出的，其目标是通过提供一些方法和技术，把问题领域分解成一系列的functional component和一系列横跨多个functional component的aspect，然后组合这些component和aspect，获得系统的实现。
 在AOP提出很长一段时间内，基本上都处于一种学术研究和试验阶段。不过，近几年来，情况发生了改变。由于企业应用复杂度的不断提高，对软件开发技术提出了新的挑战。如何才能使得应用开发者仅仅关注于业务逻辑本身的开发，而不用纠缠于那些诸如安全、事务、日志等和业务逻辑无关但又是系统有效&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2294320.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Wed, 16 Apr 2008 00:23:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/15/2294320.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/15/2294320.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>企业管理软件平台架构内幕揭秘</title><link>http://blog.csdn.net/mattwin/archive/2008/04/12/2284251.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2284251.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2284251.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2284251</trackback:ping><description>我上一篇文章《用友 U9 SOA Ready》写完后，有朋友说里面的企业管理软件平台架构讲的非常好，可惜被用友的内容给遮盖了，希望我能独立成篇，真正把企业管理软件平台架构讲透。于是就成了这篇博文的动笔之因。

企业管理软件，由于进入门坎低，各行各业各层次企业都需要，做面向企业应用比做面向个人应用要赚钱多，好销售，所以中国内地有相当大部分的程序员在从事着企业管理软件的开发。

尤其是接项目的软件公司，这类公司往往在中国当前软件行业占很多。3-4个或5-6个程序员，老板拉来什么项目就做什么项目，进销存、费用报销、销售管理、客服维修工单、请假考勤管理等等为大部分单子内容。

有朋友留言：就10来万的单子，就1-2个程序员，从调研到设计到开发到测试到打包到实施安装到培训到推动上线到支持，全活儿。哪来的精力再去开发平台。再说了，都是10来万的单子，开发平台就大才小用了，什么设计模式，什么OO，什么界面和代码分离，什么代码重构，都扯淡，往界面拖控件，用ADO连数据库，OK。费那精神干嘛，把钱快速赚到才是真理。

其实，你发现没，你做的管理软件（叫它MIS也行，你爱戴高帽就叫它ERP&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2284251.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Sat, 12 Apr 2008 17:14:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/12/2284251.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/12/2284251.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>十个习惯让你精通新的开发技术</title><link>http://blog.csdn.net/mattwin/archive/2008/04/12/2284231.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2284231.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2284231.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2284231</trackback:ping><description>这篇文章，是从我的《高效开发人员的五个特征》一文中抽出的一个观点。从我自身的事业和习惯中，我考虑了很多方式怎么样才能有效地学习。

1. 要看书。在成千上万的编程图书中，可能很大一部分根本毫无用处。但是仍然有很多图书对你的(编程)能力有很大的提升。我一直坚持，相比在网络上查找很多有用信息，在同类图书中查找要来得更容易更快捷。阅读技术图书可心更好地抓住核心内容。对于理论，架构和设计等方面来说，图书也一样很有帮助。只不过要找到高质量的、权威的信息，就不如网络上可供查找的范围广。

2. 读代码。这也是我很喜欢的一种方式。如果我并没有几年的专业编程工作经验，在学习之初我并不会去读很多复杂的代码。如果我要是早些开始学习，我将是一个比现在更好的程序员。但是，开始时我会从一些开源项目里，去学习那些源代码(当然，这些代码不能与我的工作有关，也不是我自己写的)。要从自己会使用到的，或者自己感兴趣的程序开始这项工作。我是从 Paint.net 这个网站里开始学习的，而且已经积累了很多关于 .NET 的编程技术。

读别人的代码可以为你提供更多不同的工作思路，这比你完全凭自己思考得到的工作方式&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2284231.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Sat, 12 Apr 2008 17:00:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/12/2284231.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/12/2284231.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>ASP.NET2.0里的web.config配置接口API(转)</title><link>http://blog.csdn.net/mattwin/archive/2008/04/10/2279560.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2279560.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2279560.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2279560</trackback:ping><description>ASP.NET2.0里的配置接口API
ASP.NET2.0里的配置API接口函数允许我们读/写配置文件----包括对web.config和machine.config的读写。您可以读写您自己应用程序里的配置文件，也可以读写同一机器上其它应用程序的配置文件，您甚至可以读写不同服务器上的应用程序配置文件。本文我们将以ASP.NET开发人员的角度看一下ASP.NET2.0的新亮点，这其中包括如何加密和解密配置文件。
 
AppSettings 和 Connection 字符串
 在ASP.NET开发中，两个常规任务是从配置文件里读取应用程序的设置和数据库链接字符串。在ASP.NET2.0中，这些设置分别驻留在和配置节。一个web.config示例看起来应该类似如下：


 
    
 
 
 
    
    
     
 
    
      
      
      
 

 
ASP.NET提供的API接口函数是以WebConfigurationManager类开始的，该类在System.Web.Configuration命名空&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2279560.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Fri, 11 Apr 2008 04:30:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/10/2279560.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/10/2279560.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>完整的Flash Object参考</title><link>http://blog.csdn.net/mattwin/archive/2008/04/08/2261473.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2261473.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2261473.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2261473</trackback:ping><description>　　这篇参考翻译自Adobe官方网站提供的技术说明（点击到官方参考）。并在文末添加了文中未指明的重要信息。

　　内容如下：

　　涵盖的内容：一、必须的属性；二、可选的属性；三、活动内容JavaScript脚本（因为不太实用而忽略）。

　　本文档列出了为了发布Adobe Flash影片，object标签以及embed标签所“必须的”以及“可选的”属性。

　　要查看这些属性的特定用法信息，您可以参考“使用Flash”手册中“关于使用object和embed标签”的有关章节（确切的标题根据手册版本不同可能不同）。您也可以参考 &quot;Adobe Flash OBJECT and EMBED tag syntax&quot; (TechNote tn_4150)中的相关信息.

一、必须的属性

　　当添加一个Flash影片到HTML页面中的时候，下面的属性是object或embed标签所必须的。

　　object和embed标签都需要的：

　　width - 指定影片的宽度，使用像素或者浏览器窗口的百分比。
　　height - 指定影片的高度，使用像素或者&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2261473.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Wed, 09 Apr 2008 03:57:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/08/2261473.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/08/2261473.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>Smart Client智能客户端技术初探</title><link>http://blog.csdn.net/mattwin/archive/2008/04/07/2256598.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2256598.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2256598.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2256598</trackback:ping><description>一、      Smart Client是什么
简而言之，Smart Client智能客户端就是这样一种一个可扩展的能集成不同应用的桌面应用程序：它可以无接触部署、即需即装、动态加载，XCopy即可运行而无须修改注册表，可以动态升级、自动更新，可以方便的经Web运行而不用担心防火墙问题并可以方便的离线运用，方便的连接WebServices的Windows应用程序

二、      Smart Client的特点
1.      动态加载，即需即装
应用程序的各个构件之间的相互调用并不采用直接引用的方式，而是采用动态加载，即需即装的方式，有效地降低了对系统资源的消耗。应用软件开发商可根据企业应用系统的公共接口进行开发，然后将应用组件发布在企业的服务器上，客户端应用程序将自动发现并加载该应用组件。

2.      更松散的耦合
由于上面第一点所言构件之间的相互调用并不采用直接引用方式，这样系统实现的更松散的耦合，为应用程序升级更新提供了方便。

3.      进一步的模块化
由于应用程序的松散耦合特性，使得系统的进一步模块化成为了可能，新功能、新特性的加入只需要开&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2256598.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 07 Apr 2008 20:09:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/07/2256598.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/07/2256598.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>外观模式（Façade Pattern）</title><link>http://blog.csdn.net/mattwin/archive/2008/04/07/2256485.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2256485.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2256485.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2256485</trackback:ping><description>外观模式（Façade Pattern）
——.NET设计模式系列之十二

Terrylee，2006年3月

概述


在软件开发系统中，客户程序经常会与复杂系统的内部子系统之间产生耦合，而导致客户程序随着子系统的变化而变化。那么如何简化客户程序与子系统之间的交互接口？如何将复杂系统的内部子系统与客户程序之间的依赖解耦？这就是要说的Façade 模式。



意图

为子系统中的一组接口提供一个一致的界面，Facade模式定义了一个高层接口，这个接口使得这一子系统更加容易使用。[GOF 《设计模式》]



示意图

门面模式没有一个一般化的类图描述，下面是一个示意性的对象图：



图1 Façade模式示意性对象图

生活中的例子

外观模式为子系统中的接口定义了一个统一的更高层次的界面，以便于使用。当消费者按照目录采购时，则体现了一个外观模式。消费者拨打一个号码与客服代表联系，客服代表则扮演了这个&quot;外观&quot;，他包含了与订货部、收银部和送货部的接口。 



图2使用电话订货例子的外观模式对象图

Facade模式&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2256485.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 07 Apr 2008 19:34:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/07/2256485.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/07/2256485.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>好友列表利用率越高，社区越失败</title><link>http://blog.csdn.net/mattwin/archive/2008/04/07/2256265.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2256265.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2256265.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2256265</trackback:ping><description>1、互动流通的活跃度是社区网站的关键，产品设计者大都需要在此猛下药。
facebook有利用率最高的minifeed，myspace有“好友的更新”以及“谁来过”等，豆瓣有“友邻正在关注的图书”等。
这样通过简单或高智商手段促进“产品情商”的做法是社区的精华，几乎每个成功的社区都具备多个这样的经典设计，无论是自创还是借鉴。几乎每个抄袭的社区也都在不加思索的直接照搬这些适用或不适用的设计。

2、通过人与人之间的互动，内容与内容之间的互动，促进每个点之间的关联和流通，是每个社区运营的核心任务。
几乎所有的社区经营者网站在上线后做的第一件事就是“运营”，意图通过事件或者话题等手段促进互动。比如，“空间中的设计师”，“TIANANMEN广场千人定格”，“奥运火炬接力”，“迎奥运同城好友见面”，“看看你和哪个明星最像”等等。这样的运营很有必要，既可以促进用户对于使用产品的“创意”动力也可以促进产品的利用率，大多可以迅速看到效果。
但这种“运营手段”始终无法作为2.0网站的核心依靠。我认为2.0社区最好的运营并非通过“事件或者话题”，而是通过“产品”。类似minifeed、好友更新、&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2256265.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 07 Apr 2008 18:35:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/07/2256265.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/07/2256265.aspx</guid><dc:creator>小飞侠</dc:creator></item><item><title>指南：IT各个专业认证逐个瞧[转]</title><link>http://blog.csdn.net/mattwin/archive/2008/04/07/2256216.aspx</link><wfw:comment>http://blog.csdn.net/mattwin/comments/2256216.aspx</wfw:comment><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/mattwin/comments/commentRss/2256216.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=2256216</trackback:ping><description>「前言」 

　　IT专业技术认证是进入IT行业的“敲门砖”。由国际著名IT企业颁发的的职业证书，证明了你具有某种专业IT技能，为国际承认并通用。这些国际著名 IT企业为：Microsoft、Oracle、Cisco、Sun、Novell等。就拿微软公司来说，它在全球范围内所推行的证书主要有微软网络工程师(MCSE)、微软开发专家(MCSD)、微软数据库专家(MCDBA)等，其中，MCSE是广受全球业界重视的计算机网络专家，一个Mcse证书的含金量不亚于一个本科文凭的含金量。 

　　「正文」 

　　IT专业技术认证是进入IT行业的“敲门砖”。由国际著名IT企业颁发的的职业证书，证明了你具有某种专业IT技能，为国际承认并通用。这些国际著名 IT企业为：Microsoft、Oracle、Cisco、Sun、Novell等。就拿微软公司来说，它在全球范围内所推行的证书主要有微软网络工程师(MCSE)、微软开发专家(MCSD)、微软数据库专家(MCDBA)等，其中，MCSE是广受全球业界重视的计算机网络专家，一个Mcse证书的含金量不亚于一个本科文凭的含金量。美国著名的计算机公&lt;img src =&quot;http://blog.csdn.net/mattwin/aggbug/2256216.aspx&quot; width = &quot;1&quot; height = &quot;1&quot; /&gt;</description><pubDate>Mon, 07 Apr 2008 18:23:00 +0800</pubDate><author>小飞侠</author><comments>http://blog.csdn.net/mattwin/archive/2008/04/07/2256216.aspx#Feedback</comments><guid isPermaLink="false">http://blog.csdn.net/mattwin/archive/2008/04/07/2256216.aspx</guid><dc:creator>小飞侠</dc:creator></item></channel></rss>