﻿<?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>博客园-『 天道酬勤 』   www.LiTianping.com 李天平的博客</title><link>http://www.cnblogs.com/ltp/</link><description>君子之行，静以修身，俭以养德。非淡泊无以明志，非宁静无以致远。</description><language>zh-cn</language><lastBuildDate>Sat, 04 Jul 2009 05:10:19 GMT</lastBuildDate><pubDate>Sat, 04 Jul 2009 05:10:19 GMT</pubDate><ttl>60</ttl><item><title>系统缓存全解析</title><link>http://www.cnblogs.com/ltp/archive/2009/06/30/1514311.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Tue, 30 Jun 2009 14:54:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/30/1514311.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1514311.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/30/1514311.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1514311.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1514311.html</trackback:ping><description><![CDATA[<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp;&nbsp;&nbsp; 有时候总听到网友说网站运行好慢，不知如何是好；有时候也总见到一些朋友写的网站功能看起来非常好，但访问性能却极其的差。没有&#8220;勤俭节约&#8221;的意识，势必会造成&#8220;铺张浪费&#8221;。如何应对这种情况，充分利用系统缓存则是首要之道。</span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left">&nbsp;<span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp;&nbsp; 系统缓存有什么好处呢？举个简单的例子，你想通过网页查询某些数据，而这些数据并非实时变化，或者变化的时间是有期限的。例如查询一些历史数据。那么每个用户每次查的数据都是一样的。如果不设置缓存，<span lang="EN-US">ASP.NET</span>也会根据每个用户的请求重复查询<span lang="EN-US">n</span>次，这就增加了不必要的开销。所以，</span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">可能的情况下尽量使用缓存，<span style="color: black">从内存中返回数据的速度始终比去数据库查的速度快，因而可以大大提供应用程序的性能。</span>毕竟现在内存非常便宜，用空间换取时间效率应该是非常划算的。尤其是对耗时比较长的、需要建立网络链接的数据库查询操作等。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 2.95pt; text-align: left; mso-para-margin-left: .28gd" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">缓存功能是大型网站设计一个很重要的部分。</span><span style="color: black; font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">由数据库驱动的<span lang="EN-US">Web</span>应用程序，如果需要改善其性能，最好的方法是使用缓存功能。</span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 2.95pt; text-align: left; mso-para-margin-left: .28gd" align="left"><span style="color: black; font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"></span><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p>&nbsp;</p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 系统缓存全解析文章索引</span></p>
<ul>
<ul><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl06_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514311.html">系统缓存全解析1：系统缓存的概述</a> </span></div></li><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl05_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514314.html">系统缓存全解析2：页面输出缓存</a></span></div></li><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl04_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514324.html">系统缓存全解析3：页面局部缓存</a></span></div></li><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl03_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514326.html">系统缓存全解析4：应用程序数据缓存</a></span></div></li><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl02_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514327.html">系统缓存全解析5：文件缓存依赖</a> </span></div></li><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl01_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514331.html">系统缓存全解析6：数据库缓存依赖</a> </span></div></li><li>
<div class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl00_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/30/1514333.html">系统缓存全解析7：第三方分布式缓存解决方案 Memcached和Cacheman</a> </span></div></li></ul></ul>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 2.95pt; text-align: left; mso-para-margin-left: .28gd" align="left"></o:p></span><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-size: 12pt; line-height: 250%; font-family: 宋体; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast; mso-bidi-theme-font: minor-fareast"><span style="mso-list: Ignore">15.4.1<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp; </span></span></span></strong><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-size: 12pt; line-height: 250%; font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><span style="mso-spacerun: yes">&nbsp;</span></span></strong><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; line-height: 250%; font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">缓存的分类<span lang="EN-US"><o:p></o:p></span></span></strong></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp;&nbsp;&nbsp; 从分布上来看，我们可以概括为客户端缓存和服务器端缓存。如图<span lang="EN-US">15-1</span>所示：<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 20.8pt" align="center"><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: center" align="center"><span lang="EN-US" style="mso-font-kerning: 0pt; mso-no-proof: yes"><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></v:path><o:lock v:ext="edit" aspectratio="t"></o:lock></v:shapetype></span></p>
<p class="MsoCaption" style="margin: 0cm 0cm 0pt; text-align: center" align="center"><font size="2"><span style="font-family: 黑体; mso-ascii-theme-font: major-latin; mso-ascii-font-family: Cambria"><img alt="" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_15-1.JPG" border="0" /></span></font></p>
<p class="MsoCaption" style="margin: 0cm 0cm 0pt; text-align: center" align="center"><font size="2"><span style="font-family: 黑体; mso-ascii-theme-font: major-latin; mso-ascii-font-family: Cambria">图</span><font face="Cambria"><span lang="EN-US">15-</span><span lang="EN-US"><span style="mso-no-proof: yes">1</span></span><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></font><span style="font-family: 黑体; mso-ascii-theme-font: major-latin; mso-ascii-font-family: Cambria">缓存的分类</span><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><o:p></o:p></span></font></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: center" align="center"><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><o:p>&nbsp;</o:p></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 2.95pt; text-indent: 21.1pt; text-align: left; mso-para-margin-left: .28gd" align="left"><strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">客户端缓存</span></strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&#8212;&#8212; 这点大家都有直观的印象。比如你去一个新的网站，第一次可能要花一阵子时间才能载入整个页面。而以后再去呢，时间就会大大的缩短，原因就在于这个客户端缓存。现在的浏览器都比较智能，它会在客户机器的硬盘上保留许多静态的文件，比如各种<span lang="EN-US">gif,jpeg</span>文件等等。等以后再去的时候，它会尽量使用本地缓存里面的文件。只有服务器端的文件更新了，或是缓存里面的文件过期了，它才会再次从服务器端下载这些东西。很多时候是<span lang="EN-US">IE</span>替我们做了这件事情。</span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 2.95pt; text-indent: 21.1pt; text-align: left; mso-para-margin-left: .28gd" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><span lang="EN-US"><o:p></o:p></span></span>&nbsp;</p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 2.95pt; text-indent: 21.1pt; text-align: left; mso-para-margin-left: .28gd" align="left"><strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">服务器端缓存&#8212;&#8212;</span></strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"> 有些东西没法或是不宜在客户端缓存，那么我们只好在服务器端想想办法了。服务器端缓存从性质上看，又可以分为两种。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 42.05pt; text-indent: -18pt; text-align: left; mso-pagination: widow-orphan; mso-para-margin-left: 2.29gd; mso-list: l2 level1 lfo3; mso-char-indent-count: 0" align="left"><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><span style="mso-list: Ignore">(1)</span></span></strong><strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">静态文件缓存</span></strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"> <span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp;&nbsp; 好多页面是静态的，很少改动，那么这种文件最适于作静态缓存。现在的<span lang="EN-US">IIS 6.0</span>这部分内容是直接存放在<span lang="EN-US">Kernel</span>的内存中，由<span lang="EN-US">HTTP.SYS</span>直接管理。由于它在<span lang="EN-US">Kernel Space</span>，所以它的性能非常的高。用户的请求如果在缓存里面，那么<span lang="EN-US">HTTP.SYS</span>直接将内容发送到<span lang="EN-US">network driver</span>上去，不需要像以前那样从<span lang="EN-US">IIS</span>的<span lang="EN-US">User space</span>的内存<span lang="EN-US">copy</span>到<span lang="EN-US">Kernel</span>中，然后再发送到<span lang="EN-US">TCP/IP stack</span>上。<span lang="EN-US">Kernel level cache</span>几乎是现在高性能<span lang="EN-US">Web server</span>的一个必不可少的特性。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 42.05pt; text-indent: -18pt; text-align: left; mso-pagination: widow-orphan; mso-para-margin-left: 2.29gd; mso-list: l2 level1 lfo3; mso-char-indent-count: 0" align="left"><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><span style="mso-list: Ignore">(2)</span></span></strong><strong><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">动态缓存</span></strong><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp;&nbsp;&nbsp; 动态缓存是比较有难度的。因为你在缓存的时候要时刻注意一个问题，那就是缓存的内容是不是已经过时了。因为内容过时了可能会有很严重的后果。比如网上买卖股票的网站。你给别人提供的价格是过时的，那人家非砍了你不可。缓存如何发现自己是不是过时就是一个非常复杂的问题。</span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体"><span lang="EN-US"><o:p></o:p></span></span>&nbsp;</p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-pagination: widow-orphan" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体">&nbsp;&nbsp;&nbsp; 在<span lang="EN-US">ASP.NET</span>中，常见的动态缓存主要有以下几种手段<span lang="EN-US">:<o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-list: l1 level1 lfo2" align="left"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">&nbsp; &#216;<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">传统缓存方式</span><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-list: l1 level1 lfo2" align="left"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">&nbsp; &#216;<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">页面输出缓存</span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-list: l1 level1 lfo2" align="left"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">&nbsp; &#216;<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">页面局部缓存。</span><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-list: l1 level1 lfo2" align="left"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">&nbsp; &#216;<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast; mso-no-proof: yes">利用<span lang="EN-US">.NET</span>提供的<span lang="EN-US">System.Web.Caching </span>缓存。</span><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt; text-align: left; mso-list: l1 level1 lfo2" align="left"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">&nbsp; &#216;<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">缓存依赖。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.95pt; text-indent: 0cm; text-align: left; mso-para-margin-left: 1.71gd; mso-char-indent-count: 0" align="left"><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p>&nbsp;</o:p></span></strong></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.85pt; text-indent: -17.85pt; line-height: 200%; text-align: left; mso-list: l0 level1 lfo1; mso-char-indent-count: 0" align="left"><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-size: 12pt; line-height: 200%; font-family: 宋体; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast; mso-bidi-theme-font: minor-fareast"><span style="mso-list: Ignore">15.4.2<span style="font: 7pt 'Times New Roman'"> </span></span></span></strong><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-size: 12pt; line-height: 200%; font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><span style="mso-spacerun: yes">&nbsp;</span></span></strong><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; line-height: 200%; font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">传统缓存方式<span lang="EN-US"><o:p></o:p></span></span></strong></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.95pt; text-indent: 0cm; text-align: left; mso-para-margin-left: 1.71gd; mso-char-indent-count: 0" align="left"><span style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-font-kerning: 0pt; mso-bidi-font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast">比如将可重复利用的东西放到<span lang="EN-US">Application</span>或是<span lang="EN-US">Session</span>中去保存。</span><span lang="EN-US" style="font-family: 宋体; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p></o:p></span></p>
<div align="center"></div>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.95pt; text-indent: 0cm; text-align: left; mso-para-margin-left: 1.71gd; mso-char-indent-count: 0" align="left"><strong style="mso-bidi-font-weight: normal"><span lang="EN-US" style="font-family: 宋体; mso-bidi-font-size: 10.5pt; mso-fareast-font-family: 宋体; mso-ascii-theme-font: minor-fareast; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-fareast"><o:p><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman','serif'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-no-proof: yes; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">&nbsp;Session["Style"] = val;<br />&nbsp;Application["Count"] = 0;</span></p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.95pt; text-indent: 0cm; text-align: left; mso-para-margin-left: 1.71gd; mso-char-indent-count: 0" align="left"><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman','serif'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-no-proof: yes; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"></span>&nbsp;</p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.95pt; text-indent: 0cm; text-align: left; mso-para-margin-left: 1.71gd; mso-char-indent-count: 0" align="left"><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman','serif'; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: 宋体; mso-no-proof: yes; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"></span></o:p></span></strong>&nbsp;</p>
<p class="MsoListParagraph" style="margin: 0cm 0cm 0pt 17.95pt; text-indent: 0cm; text-align: left; mso-para-margin-left: 1.71gd; mso-char-indent-count: 0" align="left">（<span style="font-size: 10pt">选自</span><a href="http://book.maticsoft.com/" target="_blank"><span style="font-size: 10pt">《亮剑.NET：.NET深入体验与实战精要》</span></a><span style="font-size: 10pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 10pt">15</span></font></span><span style="font-size: 10pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">章</span>）</p><img src ="http://www.cnblogs.com/ltp/aggbug/1514311.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47970/" target="_blank">19岁天才黑客发布首个iPhone 3GS破解软件</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>趣味理解：三层架构与养猪—《.NET深入体验与实战精要》</title><link>http://www.cnblogs.com/ltp/archive/2009/06/30/1514284.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Tue, 30 Jun 2009 14:05:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/30/1514284.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1514284.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/30/1514284.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1514284.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1514284.html</trackback:ping><description><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;为了更好地让初学者轻松入门，这里仍然采用趣味性的方式聊一些常用技术点，致力于.NET新手们的快速提高！知识都是普通的，关键是学习的思路。技术源于生活，技术原来可以这样学。抛砖引玉而已。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;层次结构在现实社会里随处可见。记得有个笑话讲有个村长得意地向他老婆吹牛：&#8220;全中国只有四个人比我官大，乡长、县长、省长和国务院总理&#8221;。这个笑话也体现了真实社会中分层的现象。社会人群会分层，公司人员结构也会分层，楼房是分层的，甚至做包子的笼屉都是分层的。虽然分层的目的各有不同，但都是为解决某一问题而产生的。所以，分层架构其实是为了解决某一问题而产生的一种解决方案。</span></p>
<h3 style="margin: 12pt 0cm 0pt"><font size="5"><font face="宋体"><span lang="EN-US" style="font-size: 12pt">14.1.1<span style="mso-spacerun: yes">&nbsp; </span></span><span style="font-size: 12pt">常用的三层架构设计</span></font></font></h3>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></span>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;软件系统最常用的一般会讲到三层架构，其实就是将整个业务应用划分为表示层、业务逻辑层、数据访问层等，有的还要细一些，通过分解业务细节，将不同的功能代码分散开来，更利于系统的设计和开发，同时为可能的变更提供了更小的单元，十分有利于系统的维护和扩展。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;常见的三层架构基本包括如下几个部分，如图</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">14-1</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示。</span></p>
<p class="a0" style="margin: 3pt 0cm 0pt"><span lang="EN-US"><v:shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></v:path><o:lock aspectratio="t" v:ext="edit"></o:lock></v:shapetype></span></p>
<p class="a" style="margin: 3pt 0cm 0pt"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
<div align="center"><img height="220" alt="" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_14-1.JPG" width="187" border="0" /></div></span></font>
<p>&nbsp;</p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图</span><font face="Times New Roman"><span lang="EN-US">14-</span><span lang="EN-US"><span style="mso-no-proof: yes">1</span></span><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">常见的三层架构</span></font></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据访问层</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">DAL</span></font></span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：用于实现与数据库的交互和访问，从数据库获取数据或保存数据到数据库的部分。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">业务逻辑层</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">BLL</span></font></span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：业务逻辑层承上启下，用于对上下交互的数据进行逻辑处理，实现业务目标。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表示层</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Web</span></font></span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：主要实现和用户的交互，接收用户请求或返回用户请求的数据结果的展现，而具体的数据处理则交给业务逻辑层和数据访问层去处理。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;日常开发的很多情况下为了复用一些共同的东西，会把一些各层都用的东西抽象出来。如我们将数据对象实体和方法分离，以便在多个层中传递，</span><span style="font-size: 12pt; font-family: 宋体">例如称为</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Model</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。一些共性的通用辅助类和工具方法，如数据校验、缓存处理、加解密处理等，为了让各个层之间复用，也单独分离出来，作为独立的模块使用，例如称为</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Common</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;此时，三层架构会演变为如图</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">14-2</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示的情况。</span></p>
<p class="a0" style="margin: 3pt 0cm 0pt"><a name="tu"><span lang="EN-US"></span></a></p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><img height="221" alt="" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_14-2.JPG" width="301" border="0" /></span></font></p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图</span><font face="Times New Roman"><span lang="EN-US">14-</span><span lang="EN-US"><span style="mso-no-proof: yes">2</span></span><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></font><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">三层架构演变结果</span></font></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">业务实体</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Model</span></font></span></strong><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：</span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用于封装实体类数据结构，一般用于映射数据库的数据表或视图，用以描述业务中客观存在的对象。</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Model</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">分离出来是为了更好地解耦，为了更好地发挥分层的作用，更好地进行复用和扩展，增强灵活性。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通用类库</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Common</span></font></span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：通用的辅助工具类。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;在第</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">5.2</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">节中我们讲过可以将对数据库的共性操作抽象封装成数据操作类（例如</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">DbHelperSQL</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">），以便更好地复用和使代码简洁。数据层底层使用通用数据库操作类来访问数据库，最后完整的三层架构如图</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">14-3</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示。</span></p>
<p class="a0" style="margin: 3pt 0cm 0pt"><span lang="EN-US"></span></p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><a name="OLE_LINK5"><span style="mso-bookmark: OLE_LINK6"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><img height="239" alt="" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_14-3.JPG" width="301" border="0" /></span></font></span></a></p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><span style="mso-bookmark: OLE_LINK6"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图</span><span lang="EN-US"><font face="Times New Roman">14-</font></span></font></span><font size="2"><font face="Times New Roman"><span style="mso-bookmark: OLE_LINK5"><span style="mso-bookmark: OLE_LINK6"><span lang="EN-US"><span style="mso-no-proof: yes">3</span></span></span></span><span style="mso-bookmark: OLE_LINK5"><span style="mso-bookmark: OLE_LINK6"><span lang="EN-US"><span style="mso-spacerun: yes">&nbsp; </span></span></span></span></font><span style="mso-bookmark: OLE_LINK5"><span style="mso-bookmark: OLE_LINK6"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">最后完整的三层架构</span></span></span></font></p><span style="mso-bookmark: OLE_LINK6"></span><span style="mso-bookmark: OLE_LINK5"></span>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21.1pt"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;数据库访问类</span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是对</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">ADO.NET</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的封装，封装了一些常用的重复的数据库操作。如微软的企业库</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">SQLHelper.cs</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，动软的</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">DBUtility/DbHelperSQL</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">等，为</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">DAL</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">提供访问数据库的辅助工具类。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;通过以上分析，我们知道如今常用的三层架构是个什么样子，同时，我们也知道了三层架构在使用过程中的一些演化过程。那么，为什么要这样分层，每层结构到底又起什么作用呢？我们继续往下看。</span></p>
<h3 style="margin: 12pt 0cm 0pt"><font size="5"><font face="宋体"><span lang="EN-US" style="font-size: 12pt">14.1.2<span style="mso-spacerun: yes">&nbsp; </span></span><span style="font-size: 12pt">趣味理解：三层架构与养猪</span></font></font></h3>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></span>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;看新闻报道今年猪肉价格一路高涨，据说有人养猪都发财致富奔小康了，程序员都说写代码没前途了，还不如去养猪，不过，可别认为养猪没有技术含量，比写代码容易，其实养猪也大有学问。为了更好地理解三层架构，就拿养猪来做个例子吧。俗话说：&#8220;没吃过猪肉，还没见过猪跑啊！&#8221;。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;图</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">14-4</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是三层架构化的养猪产业流水线趣味对此图。</span></p>
<p class="a0" style="margin: 3pt 0cm 0pt"><span lang="EN-US"></span></p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><a name="OLE_LINK7"><span style="mso-bookmark: OLE_LINK8"><span style="mso-bookmark: OLE_LINK9"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><img height="239" alt="" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_14-4.JPG" width="301" border="0" /></span></font></span></span></a></p>
<p class="a" style="margin: 3pt 0cm 0pt" align="center"><span style="mso-bookmark: OLE_LINK8"><span style="mso-bookmark: OLE_LINK9"><font size="2"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图</span><span lang="EN-US"><font face="Times New Roman">14-4</font></span></font></span></span><font size="2"><span lang="EN-US"><span style="mso-spacerun: yes"><font face="Times New Roman">&nbsp; </font></span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">三层结构与养猪</span></font></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp; </span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对比图</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">14-3</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">与图</span><font face="Times New Roman"><span lang="EN-US" style="font-size: 12pt">14-</span><span lang="EN-US"><span style="font-size: 12pt; mso-no-proof: yes">4</span></span></font><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，我们可以看出：</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数据库好比猪圈</span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，所有的猪有序地按区域或编号，存放在不同的猪栏里。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">DAL</span></font></span></strong><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好比是屠宰场</span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，把猪从猪圈取出来进行（处理）屠杀，按要求取出相应的部位（字段），或者进行归类整理（统计），形成整箱的猪肉（数据集），传送给食品加工厂（</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">BLL</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）。本来这里都是同一伙人既管抓猪，又管杀猪的，后来觉得效率太低了，就让一部分人出来专管抓猪了（</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">DBUtility</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">），根据要求来抓取指定的猪。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">BLL</span></font></span></strong><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好比食品加工厂</span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，将猪肉深加工成各种可以食用的食品（业务处理）。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Web</span></font></span></strong><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好比商场</span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，将食品包装成漂亮的可以销售的产品，展现给顾客（</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">UI</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">表现层）。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">猪肉好比</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Model</span></font></span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，无论是哪个厂（层），各个环节传递的本质都是猪肉，猪肉贯穿整个过程。</span></p>
<p class="a1" style="margin: 0cm 0cm 3pt 42.25pt; text-indent: 0cm"><span lang="EN-US" style="font-family: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"><span style="font-size: 12pt; mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">通用类库</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">Common</span></font></span></strong><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">相当于工人使用的各种工具，为各个厂（层）提供诸如杀猪刀、绳子、剪刀、包装箱、工具车等共用的常用工具（类）。其实，每个部门本来是可以自己制作自己的工具的，但是那样会使效率比较低，而且也不专业，并且很多工作都会是重复的。因此，就专门有人开了这样的工厂来制作这些工具，提供给各个工厂，有了这样的分工，工厂就可以专心做自己的事情了。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;当然<span style="font-size: 12pt; letter-spacing: 0.1pt">，这里只是形象的比喻，目的是为了让大家更好地理解，实际的情况在细节上会有所不同。这个例子也只是说明了从猪圈到商场的单向过程，而实际三层开发中的数据交互是双向的，可取可存。不过，据说有一种机器，把猪从这头赶进去，另一头就噗噗噜噜地出火腿肠了。如果火腿肠卖不了了，从那头再放进去，这头猪又原原本本出来了，科幻的机器吧，没想到也可以和三层结构联系上。以上只是笑谈，不过也使三层架构的基本概念更容易理解了。</span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"><span style="letter-spacing: 0.1pt"></span></span><span lang="EN-US" style="letter-spacing: 0.1pt"><o:p></o:p></span>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;上面谈了那么多，有人会问，我直接从数据库取出内容直接操作不可以吗？为什么要这么麻烦地用三层架构呢？三层架构到底有什么好处呢？</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">&nbsp;不分层，当然可以，就好比整个过程不分屠宰场、加工场之类的，都在同一个场所（工厂）完成所有的活（屠杀、加工、销售）。但为什么要加工厂和商场呢？因为当规模比较大的时候，管理起来就会变得非常复杂，这样的养殖方式已经无法满足规模化的需要了。并且，从社会的发展来看，社会分工是人类进步的表现</span><span style="font-size: 12pt; color: black; font-family: 宋体; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-size: 10.5pt; mso-bidi-font-family: Arial">。社会分工的优势就是让适合的人做自己擅长的事情，使平均社会劳动时间大大缩短，生产效率显著提高。能够提供优质高效劳动产品的人才能在市场竞争中获得高利润和高价值。人尽其才，物尽其用最深刻的含义就是由社会分工得出的。软件开发也一样，做小项目的时候，分不分层确实看不出什么差别，并且显得更麻烦啰嗦了。但当项目变大和变复杂时，分层就显示出它的优势来了。所以分不分层要根据项目的实际情况而定，不能一概而论<span style="font-size: 12pt; letter-spacing: 0.4pt">。</span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 0cm; mso-char-indent-count: 0"><span lang="EN-US"><span style="mso-tab-count: 1"><font face="Times New Roman">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></span></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">更多详细内容请阅读<a href="http://book.maticsoft.com/" target="_blank"><span style="font-size: 12pt">《亮剑.NET：.NET深入体验与实战精要》</span></a></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">第</span><span lang="EN-US"><font face="Times New Roman"><span style="font-size: 12pt">14</span></font></span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">章</span><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 0cm; mso-char-indent-count: 0"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></span>&nbsp;</p><img src ="http://www.cnblogs.com/ltp/aggbug/1514284.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47970/" target="_blank">19岁天才黑客发布首个iPhone 3GS破解软件</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>《亮剑.NET：.NET深入体验与实战精要》荣升china-pub同类图书排行榜第一名</title><link>http://www.cnblogs.com/ltp/archive/2009/06/28/1512552.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sun, 28 Jun 2009 03:03:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/28/1512552.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1512552.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/28/1512552.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1512552.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1512552.html</trackback:ping><description><![CDATA[<p>《亮剑.NET：.NET深入体验与实战精要》6月17日开始正式发售，仅仅10天即荣升china-pub同类图书排行榜第一名 
<p>&nbsp;
<p><a style="border-right: 0px; border-top: 0px; margin: 0px; border-left: 0px; border-bottom: 0px" href="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_top-1.jpg" target="_blank"><img height="80%" alt="《亮剑.NET：.NET深入体验与实战精要》荣升china-pub同类图书排行榜第一名" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_top.jpg" width="80%" border="0" /></a> 
<p>
<p>
<p>&nbsp;&nbsp;<a href="http://www.china-pub.com/rank/?type=59-05-06&amp;act=day&amp;v=30" target="_blank">网站排行榜地址</a> 
<p>&nbsp;</p> <img src ="http://www.cnblogs.com/ltp/aggbug/1512552.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47969/" target="_blank">新浪邮箱大本营粉墨登场！Sina.cn开放注册</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>《亮剑.NET：.NET深入体验与实战精要》推荐序</title><link>http://www.cnblogs.com/ltp/archive/2009/06/20/1507209.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sat, 20 Jun 2009 00:52:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/20/1507209.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1507209.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/20/1507209.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1507209.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1507209.html</trackback:ping><description><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; line-height: 150%"><span lang="EN-US" style="font-size: 12px; line-height: 150%; font-family: 宋体">.NET</span><span style="font-size: 12px; line-height: 150%; font-family: 宋体">平台已经发展为微软重要的战略平台之一，不仅提供了强大的编程语言，丰富的类库，方便的集成开发工具，同时为我们提供了一整套的软件开发生命周期管理解决方案。我们也非常高兴的看到，越来越多的年轻程序员加入到了<span lang="EN-US">.NET</span>阵营中来。然而很多朋友却在步入<span lang="EN-US">.NET</span>大门之时变得迷惘，感觉学了很多的知识，却不知道如何在实际项目中使用，又或者他们不知道这些知识该用来解决哪类的问题，以至于总觉得自己无法提高，以至于彷徨不前。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">天平兄在软件行业从业多年，具有丰富的开发经验，尤其在<span lang="EN-US">.NET</span>平台上，更是有着深入独到的理解，他愿意把自己的经验总结出来，并行文成书，对于广大<span lang="EN-US">.NET</span>初学者来说，不能不说是一件幸事。本书并不是一个开发指南，也不是针对某一个特定语言或者特定框架的使用介绍，完全是实际项目经验的浓缩与提炼，小到编写代码中的一个技巧，细节决定成败，大到系统设计的原则与技巧，大型网站的性能优化与安全。这些知识恰恰是<span lang="EN-US">.NET</span>初学者朋友所迫切需要掌握的。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">我认识天平兄是大约在三年前，当时博客园上有一款风靡一时的<span lang="EN-US">.NET</span>代码生成器，其作者就是李天平，此后我们虽然在网上有过多次交流，却从未谋面，实为一件憾事。受天平兄的委托，让我为本书作序，在读完本书书稿之后，给我的感觉是本书有点有面，点面俱全，相信读完本书的朋友，一定会有不一样的收获。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">最后，希望广大<span lang="EN-US">.NET</span>程序员朋友，不要再彷徨不前，带上这本《亮剑<span lang="EN-US">.NET</span>：<span lang="EN-US">.NET</span>深入体验与实战精要》，踏上<span lang="EN-US">.NET</span>征途，相信自己的选择，成功就在前面。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: right" align="right"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">资深架构师、博客园专家、微软<span lang="EN-US">MVP&nbsp; <o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: right" align="right"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">李会军&nbsp; <span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: right" align="right"><span lang="EN-US" style="font-size: 12px; line-height: 150%; font-family: 宋体">2009</span><span style="font-size: 12px; line-height: 150%; font-family: 宋体">年<span lang="EN-US">5</span>月于北京&nbsp; <span lang="EN-US"><o:p></o:p></span></span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 24pt; line-height: 150%; mso-char-indent-count: 2.0"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">作为在<span lang="EN-US">Microsoft</span>工作这么多年的老微软人而言，一方面对于<span lang="EN-US">.NET</span>技术得到越来越多国内同行的认可和推崇而颇感欣慰，另一方面也深深觉得，<span lang="EN-US">.NET</span>技术推广的步子还可以迈得更大、更快一些。拥有系统平台资源，强大的产品整合能力，以及成熟研发团队的持续支持，是<span lang="EN-US">.NET</span>毋庸置疑的优势。然而，与微软任一款产品一样，从诞生之日起，针对<span lang="EN-US">.NET</span>开发的诟病也不绝于耳。批评与关注相伴相生，微软、<span lang="EN-US">.NET</span>，还有我，都会继续成长。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%"><span lang="EN-US" style="font-size: 12px; line-height: 150%; font-family: 宋体"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 12px; line-height: 150%; font-family: 宋体">人们常常会议论<span lang="EN-US">.NET</span>不够<span lang="EN-US">OPEN</span>，其实微软对开源从来都不乏热诚，一直在支持相关社区的发展。开源是一种精神，<span lang="EN-US">.NET</span>程序员从不缺这种精神，本书作者就是其中的一个典范。很多人在学习<span lang="EN-US">.NET</span>的过程中受到过他的帮助，其中包括很多我的学生和新同事，他们中的一部分至今还保持着和天平老师交流技术心得的习惯。<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 24pt; line-height: 150%"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">很有幸能先于其他人看到这本图书，随之而来的义务就是要贡献出自己的阅读感受。对于看过不少<span lang="EN-US">.NET</span>图书，特别是外版图书的我来说，这本书显得有些另类。大量<span lang="EN-US">.NET</span>图书像<span lang="EN-US">Microsoft</span>的产品一样结构严谨、次序井然，如同严厉的导师，而这本书则富有野趣，没有过多知识框架的限制，没有教科书中的讲述脉络，有的只是作者本人学习和工作感受的真实记录。做技术的人都知道，一代代人遇到的问题总是惊人的相似，所以天平遇到和被问到的问题，相信会是大多数人已经和即将遇到的问题。在我看来，这就是这本书最大的价值！<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 24pt; line-height: 150%"><span style="font-size: 12px; line-height: 150%; font-family: 宋体">最后有个愿望，书出来后天平能友情送我几本，我用来赠送小师弟，特别是小师妹&#8230;&#8230;<span lang="EN-US"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 24pt; line-height: 150%"><span lang="EN-US" style="font-size: 12px; line-height: 150%; font-family: 宋体"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 24pt; line-height: 150%; text-align: right" align="right"><span lang="EN-US" style="font-size: 12px; line-height: 150%; font-family: 宋体"><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-size: 12px; line-height: 150%; font-family: 宋体">微软亚洲研究院<span lang="EN-US"><span style="mso-spacerun: yes">&nbsp;&nbsp; </span></span>刘晓华&nbsp; </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 24pt; line-height: 150%; text-align: right" align="right"><span style="font-size: 12px; line-height: 150%; font-family: 宋体"><span lang="EN-US">2009</span>年<span lang="EN-US">5</span>月于北京&nbsp; </span></p>
<p>&nbsp;</p>
<p>&nbsp;</p><img src ="http://www.cnblogs.com/ltp/aggbug/1507209.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47968/" target="_blank">IE市场份额首次跌破60%</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>.NET开发中的事务处理大比拼—《.NET深入体验与实战精要》</title><link>http://www.cnblogs.com/ltp/archive/2009/06/17/1505304.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Wed, 17 Jun 2009 12:38:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/17/1505304.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1505304.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/17/1505304.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1505304.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1505304.html</trackback:ping><description><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事务是一组组合成逻辑工作单元的数据库操作，在系统执行过程中可能会出错，但事务将控制和维护每个数据库的一致性和完整性。事务处理的主要特征是，任务要么全部完成，要么都不完成。在写入一些记录时，要么写入所有记录，要么什么都不写入。如果在写入一个记录时出现了一个失败，那么在事务处理中已写入的其他数据就会回滚。事务可能由很多单个任务构成。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">简单事务的一个常见例子：把钱从</span><span lang="EN-US"><font face="Times New Roman">A</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">账户转到</span><span lang="EN-US"><font face="Times New Roman">B</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">账户，这涉及两项任务，即从</span><span lang="EN-US"><font face="Times New Roman">A</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">账户把钱取出来；把钱存入</span><span lang="EN-US"><font face="Times New Roman">B</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">账户。两项任务要么同时成功，要么一起失败，给予回滚，以便保持账户的状态和原来相同。否则，在执行某一个操作的时候</span><span style="font-family: 宋体; mso-ascii-font-family: ˎ̥; mso-hansi-font-family: ˎ̥; mso-bidi-font-size: 10.5pt">可能会因为停电、网络中断等原因而出现故障，所以有可能更新了一个表中的行，但没有更新相关表中的行。如果数据库支持事务，则可以将数据库操作组成一个事务，以防止因这些事件而使数据库出现不一致。</span><span lang="EN-US" style="font-family: 'ˎ̥','serif'; mso-bidi-font-size: 10.5pt"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事务的</span><span lang="EN-US"><font face="Times New Roman">ACID</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">属性如下。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">原子性（</span><span lang="EN-US"><font face="Times New Roman">Atomicity</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）：事务的所有操作是原子工作单元；对于其数据修改，要么全都执行，要么全都不执行。原子性消除了系统处理操作子集的可能性。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一致性（</span><span lang="EN-US"><font face="Times New Roman">Consistency</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）：数据从一种正确状态转换到另一种正确状态。事务在完成时，必须使所有的数据都保持一致。在相关数据库中，所有规则都必须应用于事务的修改，以保持所有数据的完整性。当事务结束时，所有的内部数据结构都必须是正确的。在存款取款的例子中，逻辑规则是，钱是不能凭空产生或销毁的，对于每个（收支）条目必须有一个相应的抵衡条目产生，以保证账户是平的。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">隔离性（</span><span lang="EN-US"><font face="Times New Roman">Isolation</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）：由并发事务所作的修改必须与任何其他并发事务所作的修改隔离。查看数据时数据所处的状态，要么是事务修改它之前的状态，要么是事务修改它之后的状态。简单的理解就是，防止多个并发更新彼此干扰。事务在操作数据时与其他事务操作隔离。隔离性一般是通过加锁的机制来实现的。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">持久性（</span><span lang="EN-US"><font face="Times New Roman">Durability</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">）：事务完成之后，它对于系统的影响是永久性的。已提交的更改即使在发生故障时也依然存在。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对于事务的开发，</span><span lang="EN-US"><font face="Times New Roman">.NET</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">平台也为我们提供了几种非常简单方便的事务机制。无论是在功能上还是性能上都提供了优秀的企业级事务支持。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span lang="EN-US"><font face="Times New Roman">.NET</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">开发者可以使用以下</span><span lang="EN-US"><font face="Times New Roman">5</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">种事务机制：</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span lang="EN-US"><font face="Times New Roman">SQL</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和存储过程级别的事务。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span lang="EN-US"><font face="Times New Roman">ADO.NET</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">级别的事务。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span lang="EN-US"><font face="Times New Roman">ASP.NET</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">页面级别的事务。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">企业级服务</span><span lang="EN-US"><font face="Times New Roman">COM+</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事务。</span></p>
<p class="a" style="margin: 0cm 0cm 3pt 42.25pt"><span lang="EN-US" style="font-family: Wingdings; mso-bidi-font-family: Wingdings; mso-fareast-font-family: Wingdings"><span style="mso-list: Ignore">l<span style="font: 7pt 'Times New Roman'">&nbsp; </span></span></span><span lang="EN-US"><font face="Times New Roman">System.Transactions </font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事务处理。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这</span><span lang="EN-US"><font face="Times New Roman">5</font></span><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">种事务机制有着各自的优势和劣势，分别表现在性能、代码数量和部署设置等方面。开发人员可以根据项目的实际情况选择相应的事务机制。下面就开始分别说明日常开发中5种事务的具体使用。</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></span>&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">1 <a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl04_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/17/1505308.html" target="_blank">.NET开发中的事务处理大比拼 之 SQL和存储过程级别事务</a></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">2 <a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl03_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/17/1505311.html" target="_blank">.NET开发中的事务处理大比拼 之 ADO.NET级别的事务</a> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">3 <a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl02_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/17/1505314.html" target="_blank">.NET开发中的事务处理大比拼 之 ASP.NET页面级别的事务</a></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">4 <a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl01_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/17/1505318.html" target="_blank">.NET开发中的事务处理大比拼 之 企业级服务COM+事务</a></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">5 <a id="homepage1_HomePageDays_DaysList_ctl00_DayItem_DayList_ctl00_TitleUrl" href="http://www.cnblogs.com/ltp/archive/2009/06/17/1505319.html" target="_blank">.NET开发中的事务处理大比拼 之 System.Transactions</a> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 3pt; text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"></span>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 选自<a href="http://book.maticsoft.com/" target="_blank"><font color="#336699">《亮剑.NET. .NET深入体验与实战精要》</font></a> 5.4 节。</p>
<p>&nbsp;</p><img src ="http://www.cnblogs.com/ltp/aggbug/1505304.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47965/" target="_blank">Google App Engine宕机6小时——云的安全在哪里？</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>《亮剑.NET：.NET深入体验与实战精要》互动出版网全国首发销售启动</title><link>http://www.cnblogs.com/ltp/archive/2009/06/16/1504555.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Tue, 16 Jun 2009 11:50:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/16/1504555.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1504555.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/16/1504555.html#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1504555.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1504555.html</trackback:ping><description><![CDATA[<p>最新得到电子出版社飞思官方消息，《亮剑.NET：.NET深入体验与实战精要》互动出版网全国首发销售正式启动，需要购买本书及已经预定过的读者可以正式购买本书啦！全国最低价，免运费！预购从速！</p>
<p>&nbsp;本书官方网站：<a href="http://book.maticsoft.com/">http://book.maticsoft.com/</a>&nbsp; </p>
<p>&nbsp;</p>
<p>购买地址：&nbsp;&nbsp;<a href="http://product.dangdang.com/product.aspx?product_id=20613886" target="_blank">当当网购买</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.amazon.cn/mn/detailApp?qid=1245252493&amp;ref=SR&amp;sr=13-4&amp;uid=480-5305715-5553942&amp;prodid=bkbk958275" target="_blank">卓越网购买</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://www.china-pub.com/195651" target="_blank">china-pub购买</a></p>
<p>&nbsp;</p>
<p><br />电子出版社飞思官方博客：<a href="http://blog.csdn.net/wenjava/archive/2009/06/16/4272693.aspx">http://blog.csdn.net/wenjava/archive/2009/06/16/4272693.aspx</a></p>
<p>电子出版社飞思官方博客：<a href="http://www.cnblogs.com/haoxia/">http://www.cnblogs.com/haoxia/</a><br /></p>
<p>&nbsp;</p><img src ="http://www.cnblogs.com/ltp/aggbug/1504555.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47961/" target="_blank">微软新推社交网站Windows Live Planet</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>《亮剑.NET：.NET深入体验与实战精要》内容简介</title><link>http://www.cnblogs.com/ltp/archive/2009/06/14/1502894.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sun, 14 Jun 2009 01:19:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/14/1502894.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1502894.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/14/1502894.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1502894.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1502894.html</trackback:ping><description><![CDATA[<p><strong><font color="#008000" size="4">&nbsp;&nbsp;&nbsp;&nbsp; 内容简介<br /></font></strong>&nbsp; &nbsp; &nbsp; 本书作者身为从事.NET一线开发的资深开发专家，常年耕耘技术博客，惠及无数.NET新进。此次将长期的思考、感悟，多年的系统开发、设计和团队管理经验，以及深入分析众多项目实战的宝贵成果和盘托出，力求将编程思想与具体实践融为一体，提炼出适于广大读者快速理解和彻底掌握.NET软件开发的最佳学习路线。本书既考虑到实际开发中经常遇到的困惑和难题，也分析了解决问题的思路和方法，更总结出项目开发中不可或缺的技术点及其思想。读者可以在欣赏一个个有趣例子的过程中，不知不觉具备开发真正商业项目的能力。<br />&nbsp; &nbsp; &nbsp; 本书集实用性、思想性、趣味性为一体，内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分，随书所附光盘收录大量代码实例及独家披露的商业系统，供读者参考学习。<br />&nbsp; &nbsp; &nbsp; 本书适合于.NET初、中级开发人员参考学习，特别有助于.NET从业者进入实战层次，也可作为相关培训机构的参考教材，还可以作为高等院校相关专业师生的参考书。<br /></p>
<p><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://files.cnblogs.com/ltp/contents.pdf" target="_blank" mce_href="http://files.cnblogs.com/ltp/contents.pdf"><strong style="font-size: 14pt">本书目录下载</strong></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://book.maticsoft.com/old/1_5.htm" target="_blank"><strong style="font-size: 14pt">目录在线阅读</strong></a></p>
<p><br /><br /><font size="4"><font color="green"><strong>&nbsp;&nbsp; 出版信息</strong></font></font><br />&nbsp; <img border="0" alt="" src="http://book.litianping.com/images/book.jpg" /><br />&nbsp; 亮剑.NET. .NET深入体验与实战精要／李天平编著. &#8212;北京：电子工业出版社，2009.6<br />&nbsp; （.NET开发专家）<br />&nbsp; ISBN 978-7-121-08494-2<br />&nbsp; 开&nbsp; &nbsp; 本：787&#215;1092&nbsp; 1/16&nbsp; 印张：49.5&nbsp; 字数：1267.2千字<br />&nbsp; 印&nbsp; &nbsp; 次：2009年6月第1次印刷<br />&nbsp; 定&nbsp; &nbsp; 价：79.00元（含光盘1张） </p>
<p>&nbsp;</p>
<p>china-pub.com 网上预订享受最低折扣：<a href="http://www.china-pub.com/195651">http://www.china-pub.com/195651</a></p>
<p>&nbsp;</p><img src ="http://www.cnblogs.com/ltp/aggbug/1502894.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47960/" target="_blank">火狐3.5版被指推出太匆忙：存在50多个漏洞</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>《亮剑.NET：.NET深入体验与实战精要》诞生记</title><link>http://www.cnblogs.com/ltp/archive/2009/06/10/1500082.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Tue, 09 Jun 2009 17:14:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/10/1500082.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1500082.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/10/1500082.html#Feedback</comments><slash:comments>56</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1500082.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1500082.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img height="264" alt="《亮剑.NET：.NET深入体验与实战精要》" src="http://images.cnblogs.com/cnblogs_com/ltp/46234/o_book.jpg" width="186" border="0" /></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; mso-char-indent-count: 2.0"><span style="font-size: 10.5pt; font-family: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; mso-char-indent-count: 2.0">从开始搞.NET开发至今已经有六、七年了，从当初对.NET一无所知，到现在领导研发团队进行各种项目的开发和架构设计，几年里经历了各种沟沟坎坎，无论是技术上的，还是管理上的。这些经历和经验就像一笔财富，为自己积累了更多有价值的东西，让自己继续前进和发展成为可能。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 虽然每天身处技术，却有时也在考虑如何让自己超脱技术的捷径，常听人都说程序员是&#8220;技术民工&#8221;，因为我们每天都会做一些机械重复的劳动，用我们勤劳的双手创造着一个又一个伟大的项目，但却像一个幕后的英雄给别人编织着软件的未来。<br /><br />&nbsp; &nbsp; &nbsp; 所以，几年前我决定写一个让程序员可以解脱的工具，让程序员从机械重复的工作中解脱出来，把时间留出来去思考一些更有价值的事情，发挥更多潜能，创造更大的价值。即使少加点班去多陪陪自己家人都是一件多么令人欣喜的事情。<br /><br />&nbsp; &nbsp; &nbsp; 所以，诞生了动软.Net代码生成器，从2003年第一个版本(原名：LTP.Net代码生成器)至今，动软.Net代码生成器经历了无数版本的更新和完善，也经历了无数个日日夜夜和通宵达旦，其中的辛苦只有自己知道。为了不断优化软件，曾牺牲了无数的节假日和深夜来完善软件的BUG和功能。期望能给自己和众多的同行程序员们提供好用的软件，节省更多的时间。值得欣慰的是，这些付出没有白费，得到众多网友们的反馈和不断支持，从而让这些劳动体现了它的价值，也才让动软一直坚持到了今天。虽然由于各方面的精力原因，它还不是很完美，但我们一直在努力。<br /><br />&nbsp; &nbsp; &nbsp; 随着动软.NET代码生成器的普及，期间遇到众多学习.NET开发的朋友的问题和疑惑，虽然很多朋友来信说，是通过&#8220;动软&#8221;让他走上了.NET开发之路，学会了三层架构，学会了面向对象。然而，很多基础知识终究无法通过一个软件可以全部释惑的，它仅仅是个工具而已。加之工作太忙，也确实没有精力去回复那么多网友的提问和学习.NET的过程中的疑惑。<br /><br />&nbsp; &nbsp; &nbsp; 在2008年底的时候，应电子出版社张春雨的邀请，开始了写作.NET开发实践方面一书的想法，目的在于将过去这些年所积累的项目经验，技术总结，以及思考、感悟到东西记录下来，方便更多学习.NET开发的朋友快速进入这个门槛，避开自己过去所走过的各种弯路，节省学习的成本和时间。所以，通过几个月的努力全书已全部完成，书名为《.NET深入体验与实战精要》。该书并非作为一般普遍的基础系统教程而作，而是积日常开发项目实践的所得，重在实用与提高，而非说教。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; 这本书包括了三大部分内容，共19章。<br />&nbsp; &nbsp; &nbsp; &nbsp; 第一部分，讲解了基础知识总结，系统分析了各种.Net概念要点，常见概念区别，ASP.NET网站开发和C#（WinForm）开发案例，数据库操作技巧，XML和WebService，Ajax，Windows Service等各种技术应用的实践总结。着重解析了初学者最容易迷惑的一些技术要点。<br />&nbsp; &nbsp; &nbsp; &nbsp; 第二部分，透彻系统地讲解了面向对象的思想和项目应用，系统设计的基本思想和思维模式，分层架构开发的理解和实践，以及大型网站系统考虑的性能优化和安全。用通俗形象的语言、典型翔实的例子和对照比较，阐述了系统架构设计的一些思想，为初学者进一步职业提升奠定基础。<br />&nbsp; &nbsp; &nbsp; &nbsp; 第三部分，通过实际项目案例的方式重点讲解了日常开发中最常用的通用类库源码，网友询问最多的权限角色管理系统源码，单点登录系统(SSO)等完整的解决方案的设计和实现，还有日常开发必备的一些.NET开发工具介绍。以期融会贯通，学以致用。<br />&nbsp; &nbsp; &nbsp; &nbsp; 同时为了让更多在金融危机中求职的朋友能更快的找到工作，里面结合了自己在日常招聘过程中的一些问题和技巧，谈了一些看法，还在每篇篇首用一个寓言故事讲述一个职场中的道理，寓教于乐；每章篇尾提取了此章有可能出现的面试题，供读者在阅读的时候重点思考。<br />&nbsp; &nbsp; &nbsp; &nbsp; 作为每篇首尾的职业指南的内容，其实也隐含着三部分内容：<br />&nbsp; &nbsp; &nbsp; &nbsp; 第一部分，提供求职的哲理小故事和一些常见的面试过程技巧，以便使读者可以做到有备而战。<br />&nbsp; &nbsp; &nbsp; &nbsp; 第二部分，主要分析初入职场的一些为人处事，职业发展与规划，以及自我完善提高的建议。<br />&nbsp; &nbsp; &nbsp; &nbsp; 第三部分，分享了作为技术人员的职业发展和晋升之道。<br /><br />&nbsp; &nbsp; &nbsp; &nbsp; 历经数月，该书终成，由于精力和时间仓促，很多细节并没有做到非常的完美，但已基本囊括了实际项目开发中的要点。不奢望它是什么开发圣经或技术宝典，只希望能给学习.NET中的朋友有那么一点帮助，我已满足，也希望能与读该书的朋友一起切戳交流、学习进步、成为朋友。<br /></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; mso-char-indent-count: 2.0">&nbsp;</p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; mso-char-indent-count: 2.0">本书官方网站：<a href="http://book.maticsoft.com/">http://book.maticsoft.com/</a></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 21pt; mso-char-indent-count: 2.0">&nbsp;</p>
<p>&nbsp;</p> <img src ="http://www.cnblogs.com/ltp/aggbug/1500082.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47959/" target="_blank">Google对手机搜索进行优化升级</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>基于三层架构的MVC模式应用示例源码</title><link>http://www.cnblogs.com/ltp/archive/2009/06/07/1498069.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sun, 07 Jun 2009 05:59:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/07/1498069.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1498069.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/06/07/1498069.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1498069.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1498069.html</trackback:ping><description><![CDATA[<p>ASP.NET MVC是微软官方提供的开源MVC框架. 在经过了漫长的preview和2个RC版本后, 终于发布了1.0正式版本。自从微软发布ASP.NET MVC框架1.0正式版，对于MVC的讨论就不绝于耳。<br />今日闲来无事做一个基于三层架构的MVC模式应用的完整示例项目，开放源码。<br /><strong>该项目涉及如下几项要点应用：</strong><br />&nbsp;1) 整个解决方案基于标准的三层结构。<br />&nbsp;2) 表示层采用MVC模式。<br />&nbsp;3) 数据的增、删、改、查操作示例。<br />&nbsp;4) 基于MVC的列表数据显示及分页处理。<br />&nbsp;5) Linq的应用等。</p>
<p><br /><strong>搭建MVC开发环境：</strong></p>
<p>.NET Framework 3.5 SP1&nbsp; 下载地址：<br /><a href="http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&amp;FamilyID=ab99342f-5d1a-413d-8319">http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&amp;FamilyID=ab99342f-5d1a-413d-8319</a></p>
<p>-81da479ab0d7</p>
<p>VS.NET 2008 SP1&nbsp; 下载地址：<br /><a href="http://www.microsoft.com/downloads/details.aspx?familyid=27673C47-B3B5-4C67-BD99">http://www.microsoft.com/downloads/details.aspx?familyid=27673C47-B3B5-4C67-BD99</a>-</p>
<p>84E525B5CE61&amp;displaylang=zh-cn</p>
<p>ASP.NET MVC框架1.0正式版下载地址：<br /><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=53289097-73ce-43bf-b6a6">http://www.microsoft.com/downloads/details.aspx?FamilyID=53289097-73ce-43bf-b6a6</a>-</p>
<p>35e00103cb4b&amp;displaylang=en</p>
<p>微软MVC官方网站：<a href="http://www.asp.net/mvc/">http://www.asp.net/mvc/</a></p>
<p>&nbsp;</p>
<p><strong>通过对MVC的学习，我们可以看到MVC有如下特点：<br /></strong>1) 业务处理与显示分离：ASPX页面与CS代码彻底分离。更好的复用和维护。<br />2) 服务器端的表单控件不再被提倡使用，取而代之使用传统的input，或直接让Html.TextBox生成控件标签。<br />3) 没有了事件驱动模型。在ASP.NET MVC中，当某个按钮被点击，你不要再习惯性想到应该在相应的aspx.cs中有</p>
<p>个Click处理方法，你应该想到的是该有某个Controller中有个Action来处理这个事件。<br />4) 没有了数据绑定。如果你习惯了GridView的数据绑定，在ASP.NET MVC中则需要改变思路，你自己动手解决。<br />5) 增加了地址重写。MVC的Routing组件让我们可以很好的进行URL路由处理。<br />6) 总体来看，可以理解MVC是基于Web Form的一种编程方式模型扩展，是一种表示层的编程模型方案。</p>
<p>&nbsp;</p>
<p>基于三层架构的MVC模式应用的<a href="http://files.cnblogs.com/ltp/CodematicDemoMVC.rar" target="_blank">完整示例项目源码下载</a>：</p>
<p>&nbsp;</p>
<p>&nbsp;</p> <img src ="http://www.cnblogs.com/ltp/aggbug/1498069.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47958/" target="_blank">风声又起 Windows 7 RTM版7月13日完成</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>动软.Net代码生成器 发布 2.3 版本</title><link>http://www.cnblogs.com/ltp/archive/2009/06/03/1495715.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Wed, 03 Jun 2009 14:23:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/06/03/1495715.html</guid><description><![CDATA[<p>1.增加了一个新建带有基本管理功能的三层项目。<br />2.修正了数据库注册服务器报错问题。<br />3.修正了Access数据库字段排序问题。<br />4.修正了右键代码生成的报错问题。<br />5.增加了几个数据访问的方法。<br />6.增加了支持Access 2007格式的数据库。<br />7.优化了左边数据库树的加载体验。 </p>
<p>官方下载地址：<a href="http://www.maticsoft.com/Download.aspx">http://www.maticsoft.com/Download.aspx</a></p>  <img src ="http://www.cnblogs.com/ltp/aggbug/1495715.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47957/" target="_blank">乔布斯和埃利森</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>IBatisNet开发使用小结 之二</title><link>http://www.cnblogs.com/ltp/archive/2009/05/03/1448082.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sun, 03 May 2009 04:00:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/05/03/1448082.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1448082.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/05/03/1448082.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1448082.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1448082.html</trackback:ping><description><![CDATA[摘要: 续IBatisNet开发使用小结 之一四． IBatisNet组件使用1. DomSqlMapBuilderDomSqlMapBuilder，其作用是根据配置文件创建SqlMap实例。可以通过这个组件从Stream, Uri, FileInfo, or XmlDocument instance 来读取sqlMap.config文件。2. SqlMapSqlMapper是IBatisnet的核心组件&nbsp;&nbsp;<a href='http://www.cnblogs.com/ltp/archive/2009/05/03/1448082.html'>阅读全文</a><img src ="http://www.cnblogs.com/ltp/aggbug/1448082.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47956/" target="_blank">Xbox Live将投放Silverlight广告</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>IbatisNet开发使用小结 之一</title><link>http://www.cnblogs.com/ltp/archive/2009/03/05/1404258.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Thu, 05 Mar 2009 14:45:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2009/03/05/1404258.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1404258.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2009/03/05/1404258.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1404258.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1404258.html</trackback:ping><description><![CDATA[摘要: 一． 介绍 平常做企业级应用，需求变化是经常的事，而很多基础代码重复也是很让人头疼的问题。所以很多人会使用一些ORM框架来增强项目的可维护性、可扩展性。IBatis.Net就是一个比较易用的ORM框架，使用起来较为方便、灵活。IBatis.Net是从Ibatis的Java版本移植过来的.NET版本。iBATIS作为一种独特的Data Mapper，使用SQL映射的方式将对象持久化至关系型数据库。简&nbsp;&nbsp;<a href='http://www.cnblogs.com/ltp/archive/2009/03/05/1404258.html'>阅读全文</a><img src ="http://www.cnblogs.com/ltp/aggbug/1404258.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47951/" target="_blank">Debian无视GNU创始人警告 接受Mono</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>技术以外的功夫</title><link>http://www.cnblogs.com/ltp/archive/2008/12/31/1366360.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Wed, 31 Dec 2008 14:45:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/12/31/1366360.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1366360.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/12/31/1366360.html#Feedback</comments><slash:comments>33</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1366360.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1366360.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 记得看过冯仑的&#8220;赚钱以外的功夫&#8221;有感而发，写写我们IT人技术以外的功夫。<br />
&nbsp;&nbsp;&nbsp;&nbsp;有时候发现做技术做长了，很多的人的性格都会发生变化，变得内向，变得封闭。有的会发现市场团队的开会，大家都你一言我一语，踊跃发言，争相斗艳。而有的时候程序员开会要么一声不吭，要么就会变成牢骚会，这需求不好，那个做法不对。<br />
&nbsp;&nbsp;&nbsp; 我们为何不换个角度看问题或者处理问题呢：我觉得如果这么做可能更好，如果那么做可以避免这样的问题。开放式的摆平心态讨论问题。当然也许这只是一少部分现象，也许并不普遍。因为很多心态开放，积极思考的人多半最后都会走的很好，而那些只会牢骚的人，多年以后仍在别的公司发着同样的牢骚。这就是不同!<br />
&nbsp;&nbsp;&nbsp; 我发现一个非常有趣的现象，某些人在工作的时候，许多人都比他技术高经验多，但后来那些技术高的人不见了，而这些人却一路高升。比尔盖茨创业的时候，比他钱多的人也很多，但盖茨今天成了首富。中国许多企业家也是如此。为什么？<br />
就像你驾驶一辆汽车在高速公路上要并线转弯，既要车不能翻，还要保持速度，这非常难。这时候的问题不在于汽油，而在于司机的技巧，这个技巧就是技术以外的东西。技术以外的能力究竟是什么能力？我讲四种。</p>
<p><strong>一. 摆平心态<br />
</strong>&nbsp;&nbsp;&nbsp; 技术以外的能力之一是做人的能力，特别是做人的心态。我发现凡是真正技术高超的人，反倒都善于把自己的心态放得很平和，在中国文化里这叫谦虚，就是你得尊重别人。凡是刚开始做技术的时候，他们的心态都很重要，就是很谦恭、谦虚、谦卑。我们圈里肯定也有这种人，技术稍微好一些（所谓的好一些就是指在他所在的几个人中好一些）就牛的了不得，对别人不屑理睬，对主管牛气冲天。<br />
&nbsp;&nbsp;&nbsp; 还有的人，一遇到问题，嘴一裂，&#8220;这没法弄，根本没法实现。&#8221;&#8220;那个bug跟我没有关系，是谁谁的问题&#8221;，&#8220;人家谁谁拿多少工资，我才这么点&#8221;&#8220;人家什么什么公司多么多么好，你瞧咱这破公司哪哪都不好&#8221;<br />
&nbsp;&nbsp;&nbsp; 许多人的晋升，并不完全由于能力，更多是因为成熟的心态与心胸。积极的表达方式：不说&#8220;我无能为力&#8221;，而是说&#8220;尽力尝试有无其他可能性&#8221;。不说&#8220;他使我怒不可遏&#8221;，而是说&#8220;我可以控制自己的情绪&#8221;！<br />
&nbsp;&nbsp;&nbsp; 还有的人不爱参与集体活动，开会也不愿发表个人的建议，甚至不愿任何给自己展示机会的场合，觉得那些跟自己没有关系，但又反过来觉得自己怀才不遇抱怨漫天。其实，人生是个大舞台，职场是个小舞台，想在舞台上扮演主角，要在游戏中获胜，就得先登上舞台，先加入游戏。不要去做&#8220;看客&#8221;。否则，你永远都是个旁观者。突破&#8220;看客&#8221;困境，要做主角，第一步就是得去争取有戏可演，哪怕一开始只是个跑龙套的。</p>
<p><strong>二. 做事的方法<br />
</strong>&nbsp;&nbsp; 技术以外的第二个能力是做事的方法。做事的方法是我们提高效率，少走弯路的手段。你之所以先做这个而不先做那个，之所以这么做而不是那么做，就是做事的方法。古人云：&#8220;只要功夫深，铁棒磨成针&#8221;。勤劳的美德在历来都被奉高尚的美誉。但同样的努力同样的付出而结果却不同，这就是为什么有些人能够成功，有些人不能够成功。<br />
&nbsp;&nbsp;&nbsp; 做事的方法，就是在你心里看待人，事，物的关系的时候，你出发的角度，个人素养和情商，所展现出来的一种决策逻辑。你拿这个逻辑来判断问题，而这个东西会引导你采用不同的方式来执行。例如，我们看马云，不要看马云成功的故事，而应该看马云是怎样在微观决策的时候，判断细小的是非。比如马云在上市的时候，他只拿了5％的股份，这就是价值观。还有一些人，忙活了半天没见什么成效，甚至适得其反。做事的方法确实会导致很多的人生不同和结局。<br />
&nbsp;&nbsp;&nbsp; 人的一生会遇到千千万万的事情，而在面对这些事情的时候其实有个很关键的原则：选择正确的事去做。<br />
&nbsp;&nbsp;&nbsp; (1) 做正确的事情比正确地做事情要重要得多，也有效的多。<br />
&nbsp;&nbsp;&nbsp; (2) 成功人士也许做不成很多事情，但却能够集中精力做成一件事情。而事实上，这一件事往往就足以改变一个人的命运。<br />
&nbsp;&nbsp;&nbsp; (3) 必须放弃或减少那些与重要的事无关的东西，必须忍住不为小事所缠。如果一个人过于努力想把所有事都做好，他就不会把最重要的事做好。<br />
&nbsp;&nbsp;&nbsp; (4) 成功者大都深知：&#8220;太专注于小事的人通常会变得对大事无能&#8221;，并能清楚&#8220;抓住大事，小事自会照顾好自己&#8221;的道理。<br />
&nbsp;&nbsp;&nbsp; (5) 事情来了先别急着做，先想想能否不做。这也是很多技术人员常有的习惯，遇到问题恨不能马上动手写出代码实现看看，其实你会发现无形中做了很多的无用功，浪费了很多时间，当然，你也许得到了一种满足感！</p>
<p><strong>三. 责任感和担当<br />
</strong>&nbsp;&nbsp; 还有就是一个人在生活中和工作中表现出来的责任感和担当。因为如果你没有责任感就不可能委以重任，如果没有那份担当就没有一种勇气和魄力来征服挫折和困难。所有人想成功必须面对两个问题，承担更大责任，带领大家征服未来的魄力。偷奸耍滑只能快活一时，唯唯诺诺则难成大器。<br />
&nbsp;&nbsp;&nbsp; 在工作也是这样，如果我们做事有很强的责任心，交到我们手上的工作会认认真真，保证质量的完成，让领导放心，得组织信任，你觉得是不是会让你负责更重要的项目呢？如果我们遇事懂得积极解决问题，碰到困难敢于面对，你觉得是不是会对你负责未来的项目有充分的信心呢？有了这样的责任和担当，就有了一个领导者最基本的品质。 </p>
<p><strong>四. 目标与定位<br />
</strong>&nbsp;&nbsp;&nbsp; 无论是人生在世，还是闯荡职场，总要有个目标和定位。目标对人生有巨大的导向性作用。成功，在事业起步的时候仅仅是一种选择，你选择什么样的目标，就会有什么样的人生。不少朋友最大的痛苦就是不知道自己适合做什么，该干什么，该走什么路，不满于现状之余又不得不沉沦于现实。<br />
&nbsp;&nbsp;&nbsp; 所以，先认清&#8220;正确的结果&#8221;，根据正确的结果去设计你的过程。当一个人具有明确目标，会对有助于实现目标的蛛丝马迹都特别敏感，做事情相应也就会很有目的性，而不是稀里糊涂。所以，就容易到达自己的目的。如果没有目标，就算是天上真有神仙，如果你不能明确地说明自己想要什么，神仙也不知道该给你什么。<br />
&nbsp;&nbsp;&nbsp; 职业规划就是要搞清楚自己的优势在什么地方，自己最适合做什么。它的目的不是要你变成另外一个人，而是变成最好的你自己。当有了自己坚定的目标和定位，打工就不再是为别人卖命，而是为了自己的目标在奋斗！用这样的标准来衡量自己的成长和进步，那样的人生会变得更轻松，更快乐。</p>
<p>&nbsp;&nbsp;&nbsp; 如果你自认为你得技术还不错，但一直没有晋升的话，我想你有必要想想这些技术以外的功夫了。<br />
&nbsp;&nbsp; （作者：<a href="http://www.litianping.com/">李天平</a>&nbsp; 转载请注明）<br />
</p>
  <img src ="http://www.cnblogs.com/ltp/aggbug/1366360.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47950/" target="_blank">iPhone 3GS首发日创AT&T多项纪录</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>创业公司的“四不五缺”! </title><link>http://www.cnblogs.com/ltp/archive/2008/12/20/1360077.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sat, 20 Dec 2008 13:36:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/12/20/1360077.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1360077.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/12/20/1360077.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1360077.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1360077.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">对创业公司的发展有时也在思考和总结，成绩虽然有，但发展到今天没有更快速的成长，你是否也想过也许还有很多做的不足的地方需要改进。是否也犯过这样那样的错误？是否想过&#8220;四不五缺&#8221;？</span><span lang="EN-US" xml:lang="EN-US">&nbsp;<wbr></span></p>
<p class="MsoNormal" style="text-indent: 24.1pt"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">不务实</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">：目标过大，动不动就是搞个概念要去拿风投，要上市，预想自己的开盘目标就能挣个上千</span><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">万。作为一个刚起步的互联网公司，不知道在做一些决策和目标的时候有没有充分的市场依据，有没有必要的市场调研和数据分析。不要总说我们的产品市场前景足够大，有几亿几亿的市场，我们只要做到</span><span lang="EN-US" xml:lang="EN-US">10%</span><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">，就可以达到多少多少了。关键的问题是自己能做到多大？如何才能做到那么大？什么时间能做那么大？在这个时间段内市场是否已经发生了变化？太虚幻的目标只能会让我们好高骛远，追大求全。从而忽视了身边的各种小的商机。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">不精简</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">：一开始团队就按着黄金团队的模式在打造，一个萝卜一个坑，各就其位。关键是前期是不是真的有必要有那个坑，那个坑是不是有必要有个萝卜。如果不是每个人都能发挥百分之百的效能那就是浪费资源。创业团队其实应该轻和精。中国人做事其实有时候不是人越多越好。正所谓：一个和尚挑水吃，两个和尚抬水吃，三个和尚没水吃。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">不专业</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">：一种情况是做的业务不是自己最擅长的业务和领域。二是创业期间，在团队用人上多以感情做基础委以重任，而非&#8220;因岗设人，能力对口&#8221;&#8220;专业的人干专业的事&#8221;。存在着很大的不专业性，这一切往往为以后的发展埋下了隐患。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">不聚焦</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">：有些创业公司业务规划不清晰，总是走走看，走不通了换方向。多个产品线并行，外带飞单项目开发。可以想象如此分散精力，怎能挖透那口井。现在竞争激烈的市场需要差异化细分和具有核心竞争力的产品，需要选准一个点，做专做精才有出头，否则，根本轮不到你出头。如果为了现金流做一些副业供养生计，但做副业是为了养主业，做副业的同时主业也应该有进展和进步才可以。否则，整个精力都在做副业，主业会荒废了，当优势不再是优势我们就已经落伍了。因为社会在发展不进步就是后退。如果实在因为资金压力做不下去，我们就需要考虑学会放弃一部分，继续细分只做其中一个点或一个环节。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;<wbr></span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><span style="font-size: 14pt"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">缺成本控制</span></strong></span>：</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">很多企业刚开始也许是拿到了一部分资金，然后就开始膨胀，最后揭不开锅了。如果前期成本控制的好一些，后期不至于很被动，甚至因为资金链断裂而完蛋。而现实中这样的例子还在不断的重演，不断的发生，然而总是有人还是在不断的犯错。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US"><wbr></span></p>
<p class="MsoNormal" style="text-indent: 24.1pt"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><span style="font-size: 12pt"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><span style="font-size: 14pt"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><span style="font-size: 14pt"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><strong style="mso-bidi-font-weight: normal"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">缺信任</strong></strong></span></span></strong></span></span></strong></span></strong></span></span></strong></span></span></strong></span></span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">：缺信任往往体现在对公司的发展思路上，而原因往往是在利益分配上。有时候会在思路上发生很多争执，而最关键的是争执之后留在每个人心里的那个结。从而形成各自的小算盘。创业团队如果不能做到</span><span lang="EN-US" xml:lang="EN-US">"</span><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">万众一心</span><span lang="EN-US" xml:lang="EN-US">"</span><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">，拥有共同的价值观，成功起来是很难的。创业公司的文化中不应该带有太多心结，办公室政治不应该属于创业团队。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><span style="font-size: 12pt"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">缺信心</span></strong></span>：</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">创业的艰难是有目共睹的，特别是创业到了后期遇到困难和资金紧张，大家就开始缺乏信心，因为各种征兆表明现实不容乐观，是否要做？有多大价值？作为领导人如果没有信心走出困境，不能给大家以前进的动力和信心，失败就已经开始了。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><span style="font-size: 12pt"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 14pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">缺愿景</span></strong></span>：</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">其实，愿景并不是就是上市。金钱只是一种表现形式。因为上了市的公司仍然需要有他的愿景。对共 产 党而言，也许共产主义就是一种愿景。我们的愿景是什么呢？有什么东西能让我们齐心协力，万众一心的往前走呢？很多时候，我们缺少对大家未来目标和期望值的一种构思和梦想。</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><a href="http://www.cnblogs.com/ltp/archive/2008/03/23/1118958.html" target="_blank"><strong style="mso-bidi-font-weight: normal"><span style="font-size: 12pt; font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin"><font style="font-size: 14pt" color="#5e4830">缺坚持</font></span></strong></a>：</span></strong><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">很多公司的失败往往并不是因为业务不好，而是没有坚持下来。在黎明前的头一天晚上倒下了。创业是一件很艰苦的事情，没有坚持，很难成功！</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span></p>
<p class="MsoNormal" style="text-indent: 21pt"><span style="font-family: 宋体; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: 宋体; mso-fareast-theme-font: minor-fareast; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin">在这个寒冷的冬天，你是否遇到了这些问题？</span></p>
<p class="MsoNormal" style="text-indent: 21pt">&nbsp;</p>
<p class="MsoNormal" style="text-indent: 21pt"><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><span lang="EN-US" xml:lang="EN-US">&nbsp;</span><span lang="EN-US" style="font-size: 10pt; line-height: 130%" xml:lang="EN-US">&nbsp;<wbr></span><span style="font-size: 9pt; line-height: 130%">（作者：<a href="http://blog.sina.com.cn/ltp2008" target="_blank"></a><a href="http://www.litianping.com/" target="_blank"><span lang="EN-US" xml:lang="EN-US"><span lang="EN-US" xml:lang="EN-US"><font color="#5e4830">李天平</font></span></span></a></span><span lang="EN-US" xml:lang="EN-US">&nbsp;<wbr>&nbsp;<wbr></span>转载请注明）</p>
<p class="MsoNormal" style="text-indent: 21pt">&nbsp;</p>
<img src ="http://www.cnblogs.com/ltp/aggbug/1360077.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47949/" target="_blank">Silverlight开发大赛奖金高达10000美元</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>动软.Net代码生成器 发布2.17 版</title><link>http://www.cnblogs.com/ltp/archive/2008/10/01/1302689.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Tue, 30 Sep 2008 16:11:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/10/01/1302689.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1302689.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/10/01/1302689.html#Feedback</comments><slash:comments>23</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1302689.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1302689.html</trackback:ping><description><![CDATA[1.增加了高效连接模式：适合大量表的情况下，启用此项实现快速连接。详见：<a href="http://bbs.maticsoft.com/showtopic-382.aspx" target="_blank">http://bbs.maticsoft.com/showtopic-382.aspx</a><br />
2.增加对MySQL数据库的支持。详见：<a href="http://bbs.maticsoft.com/showtopic-381.aspx" target="_blank">http://bbs.maticsoft.com/showtopic-381.aspx</a><br />
3.根据sql语句直接生成SQL脚本的拼接代码，这样提供更灵活的数据层代码生成。<br />
4.根据sql查询结果生成数据脚本,而不是整个表的数据脚本。详见：<a href="http://bbs.maticsoft.com/showtopic-383.aspx" target="_blank">http://bbs.maticsoft.com/showtopic-383.aspx</a><br />
5.基于sql方式DAL代码生成，add方法增加字段空值插入的判断<br />
6. BLL增加public List&lt;&gt; GetModelList()方法，返回list&lt;&gt;数据。<br />
7.记录错误日志信息。<br />
8.发布BLL层代码模板组件源码。<br />
9.发布Web层代码生成组件源码。<br />
10.发布Model代码生成组件源码。下载：<a href="http://bbs.maticsoft.com/showtopic-37.aspx" target="_blank">http://bbs.maticsoft.com/showtopic-37.aspx</a><br />
<br />
免费下载：<a href="http://www.maticsoft.com/softdown.aspx" target="_blank">http://www.maticsoft.com/softdown.aspx</a> 
 <img src ="http://www.cnblogs.com/ltp/aggbug/1302689.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47947/" target="_blank">微软告攒机商第一案胜诉</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>没有风投的创业法则 </title><link>http://www.cnblogs.com/ltp/archive/2008/08/08/1264136.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Fri, 08 Aug 2008 15:37:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/08/08/1264136.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1264136.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/08/08/1264136.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1264136.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1264136.html</trackback:ping><description><![CDATA[<p style="text-indent: 20pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">有人曾经对我说，一个创业者得到风险投资的几率如同在一个晴天下站在游泳池里被闪电击中一样。但是在我看来，这种比喻还是过于乐观了。<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">在现在这个热钱涌动的商业<clk>社会，好的<nobr oncontextmenu="return false" onmousemove="kwM(5)" id="clickeyekey5" onmouseover="kwE(event,5, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,5)" onmouseout="kwL(event,this)">企业</nobr>从来不缺投资，当然前提必须是这是一家优秀的企业，至少也得是看起来有前途的企业。在这些企业的门口，是排着长队的投资者，资本的富足已经宠坏了这些企业，只要他们开口，资金是大大的有。但是对于大多数刚刚起步的新兴企业来说，这一切的美好都与之无关，投资者在他们面前完全是另外一副嘴脸，盛气凌人自不必说，有钱就是大爷的他们可能以种种借口拒绝投资你的企业：你们不是一个&#8220;令人信服&#8221;的团队，没有&#8220;高人一等&#8221;的技术，不在一个&#8220;前景广阔&#8221;的市场里；或者你的<nobr oncontextmenu="return false" onmousemove="kwM(0)" id="clickeyekey0" onmouseover="kwE(event,0, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,0)" onmouseout="kwL(event,this)">公司</nobr>根本就不具备&#8220;风险投资的潜质&#8221;——也就是说没有可能上市或者被巨资收购；再或者你的组织受到太多政府或环境因素的干扰，如此等等，让人既郁闷又泄气，自己辛辛苦苦经营的企业似乎还没开始就已经失败了。<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">那么如果拿不到任何风险投资，你是否应该放弃呢？答案是<span lang="EN-US">NO</span>！坚定而决绝的回答，一如投资者拒绝你时那样。<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">我可以举出例子来说明，对于许多公司来说，太多的钱比太少的钱更糟糕——这并不是说我不想有一天能运行ＮＦＬ超级碗那样的商业活动。但是直到那天成为现实之前，要想成功还必须脚踏实地从零开始。而下面我就将告诉你一些白手起家的艺术：<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">注重现金流而不是盈利性</span></strong><span lang="EN-US" style="font-size: 10.5pt; line-height: 130%"><o:p></o:p></span></p>
<p style="text-indent: 24pt; line-height: 130%"><clk><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">理论上讲，利润是生存的关键。问题是，理论不能用来付账单。在现实中，你是用现金来付账单的，所以请把重点放在现金流上。如果你要从零开始，那么你的业务应该具备这些特点：必需的资金要少，销售周期和付款期要短，以及具有可重复增加的收入。这意味着你要放弃那些需要<span lang="EN-US">12</span>个月的<nobr oncontextmenu="return false" onmousemove="kwM(1)" id="clickeyekey1" onmouseover="kwE(event,1, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,1)" onmouseout="kwL(event,this)">时间</nobr>来完成定单、发货和收账的大单。现金对于创业者来说，就是一切。<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">自底向上的预测</span></strong><span lang="EN-US" style="font-size: 10.5pt; line-height: 130%"><o:p></o:p></span></p>
<p style="text-indent: 24pt; line-height: 130%"><clk><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">很多创业者进行自顶向下的预测：&#8220;美国有<span lang="EN-US">1</span>亿<span lang="EN-US">5</span>千万辆<nobr oncontextmenu="return false" onmousemove="kwM(4)" id="clickeyekey4" onmouseover="kwE(event,4, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,4)" onmouseout="kwL(event,this)">汽车</nobr>。就算在第一年里只有<span lang="EN-US">1</span>％的汽车装了我们的卫星收音系统，那就是<span lang="EN-US">150</span>万套系统。&#8221;而自底向上的预测是这样的：&#8220;在第一年里，我们能够开设<span lang="EN-US">10</span>个安装点。每个安装点平均每天安装<span lang="EN-US">10</span>套系统的话，第一年的销售量将是<span lang="EN-US">2.4</span>万套。&#8221;<span lang="EN-US">2.4</span>万套和自顶向下中声称的<span lang="EN-US">150</span>万套保守估计显然相去甚远。你们觉得哪一个更有可能实现呢？<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">先发货，再测试</span></strong><span lang="EN-US" style="font-size: 10.5pt; line-height: 130%"><o:p></o:p></span></p>
<p style="text-indent: 24pt; line-height: 130%"><clk><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">我已经听到批评的声音了：&#8220;你怎么能够建议发送那些并不完美的货品呢？&#8221;等等，再等等。&#8220;完美&#8221;是&#8220;足够好&#8221;的敌人。当你的<nobr oncontextmenu="return false" onmousemove="kwM(6)" id="clickeyekey6" onmouseover="kwE(event,6, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,6)" onmouseout="kwL(event,this)">产品</nobr>或服务足够好时，尽快向客户提交他们，以获得现金的流入。而且，花费更多的时间并不能保证产品的完美，只会产生更多不需要的<nobr oncontextmenu="return false" onmousemove="kwM(3)" id="clickeyekey3" onmouseover="kwE(event,3, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,3)" onmouseout="kwL(event,this)">功能</nobr>。发货后，你也能了解到客户需要你真正解决什么问题。当然，这需要在你的信誉和现金流中做一个折衷：你当然不能向客户发送一堆垃圾，但也不能等待你的产品变得完美无瑕。注意：那些同生命科学有关的公司，请忽略这一条建议。<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">忘掉所谓&#8220;令人信服&#8221;的团队</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><clk><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">令人信服的团队要求太高——特别是大多数人把这定义为一群在过去十年里为超级大公司<nobr oncontextmenu="return false" onmousemove="kwM(2)" id="clickeyekey2" onmouseover="kwE(event,2, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,2)" onmouseout="kwL(event,this)">工作</nobr>的人们。这些人，习惯了某种特定的生活方式，但绝不是白手起家的生活方式。聘用那些年轻、便宜、渴望工作的人，那些上手快但并不一定有全面经验的人吧。当你实现了可观的现金流后，再聘用那些资深的管理者。在那之前，你最好还是使用那些你能够负担得起的人为妙，并把他们培养成优秀的雇员，<nobr oncontextmenu="return false" onmousemove="kwM(7)" id="clickeyekey7" onmouseover="kwE(event,7, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,7)" onmouseout="kwL(event,this)">效果</nobr>嘛，一点不差。<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">从服务开始做起</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><clk><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">假如你的想法是要最终成立一个<nobr oncontextmenu="return false" onmousemove="kwM(8)" id="clickeyekey8" onmouseover="kwE(event,8, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,8)" onmouseout="kwL(event,this)">软件</nobr>公司，让人们花钱买你的软件，这当然是一个很清晰的业务并且有完善的商业模式。但是，在完成你的软件之前，你还可以提供基于你的中期产品的咨询服务等。这样做有两个好处：你可以立即获得收入并让真正的客户来测试你的产品。一旦你的软件经受住了各种各样的测试和考验，你就可以把公司转换为产品型了。<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">注重功能而不是形式</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">我喜欢好的&#8220;形式&#8221;。苹果笔记本、格拉夫冰鞋、鲍尔滑雪板、百年灵腕表。你还可以举出很多。但是顾客们在买东西时，注重的是功能而不是形式。上面那些形式，相对应的功能分别是：计算、滑冰、滑雪、了解时间。这些功能并不要求那些昂贵的形式。椅子就是用来让你的屁股坐在上面的；它并不需要看上去属于哪个现代艺术的博物馆。你要设计高贵的东西，但是要卖便宜的东西。<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">有选择地战斗</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">创业者们有选择地战斗。他们不会在所有的战线上开战，因为他们承担不起。如果你要开设一所新的教堂，你真的需要一套<span lang="EN-US">10</span>万美金的多媒体视听系统吗？还是从一座讲台上发出的福音？如果你要建设一个靠广告收入的网站，你需要自己写客户广告发布软件吗？我不这样认为。<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">雇用尽可能少的员工</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">许多创业者为可能发生的最好情况而储备雇员。&#8220;保守的估计（自顶向下），第一年卫星收音系统的销售量会是<span lang="EN-US">150</span>万套。我们最好开设一个<span lang="EN-US">24</span>小时营业的客户支持中心。&#8221;结果怎样？你根本就不可能销售<span lang="EN-US">150</span>万套系统，但你的确为此雇用了<span lang="EN-US">200</span>个员工培训他们，并且把他们安置在一个<span lang="EN-US">5</span>万平方英尺的电子化市场中心里。创业者们应该雇用尽可能少的员工，因为他们知道任何糟糕的情况都可能发生。人手不足，按照在硅谷的说法，属于一个&#8220;良性问题&#8221;。相信我，当一个创业者因为销售激增而打电话要求更多的资金时，任何一个风险投资家都会对此惊喜若狂。而惊喜之所以称为惊喜，正是因为它们很少发生。<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">采用直销方式</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><clk><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">在创业者和他的客户之间最好不要有第三方存在。的确，商店提供了接触消费者的途径，批发商们提供了货品分发的途径。但是上帝发明了电子商务，从而使你可以<nobr oncontextmenu="return false" onmousemove="kwM(9)" id="clickeyekey9" onmouseover="kwE(event,9, this)" style="color: #6600ff; border-bottom: #6600ff 1px dotted; background-color: transparent; text-decoration: underline" onclick="$cE.defer(this);kwC(event,9)" onmouseout="kwL(event,this)">直销</nobr>你的商品并实现更高的边际利润。上帝的聪明之处还在于，通过直销，你能够了解更多的客户需求。商店和批发商们是用来满足需求的，他们并不创造需求。如果你能够创造足够的需求，你稍后总能找到办法来满足它；如果你不能创造足够的需求，那么所谓世界范围内的分发渠道对你来说毫无意义。<span lang="EN-US"><o:p></o:p></span></font></span></clk></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">用业界的领先者来做比</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">没有钱来做长篇大论的广告吗？没关系。用业界的领先者来做比好了。丰田是这样推销雷克萨斯的：花一半的价钱，买奔驰的品质。丰田用不着解释什么是&#8220;奔驰的品质&#8221;。想想看，这能为他们节省多少广告费！其他的像&#8220;便宜的<span lang="EN-US">iPod</span>&#8221;和&#8220;属于大众的<span lang="EN-US">Bose</span>无噪音耳机&#8221;，都有同样的效果。<span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 24pt; line-height: 130%"><strong><span style="font-size: 10.5pt; line-height: 130%; font-family: 宋体; mso-bidi-font-family: 宋体">直面惨淡的真相</span></strong><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体"> <span lang="EN-US"><o:p></o:p></span></font></span></p>
<p style="text-indent: 20pt; line-height: 130%"><span style="font-size: 10.5pt; line-height: 130%"><font face="宋体">正如<span lang="EN-US">Neo</span>在《黑客帝国》里做的决定一样。红色药丸会让你知道整个真相；而蓝色药丸则会使你像是醒来时觉得只是做了一场噩梦。创业者们没有那种奢侈去选择蓝色药丸。他们每天都在忙于知道真相——这个兔子洞到底有多深。一个简单的计算公式是：现金总数除以烧钱的速度。因为这可以告诉你到底还可以活多久。就像我的朋友<span lang="EN-US">Craig Johnson</span>喜欢说的：&#8220;钱花光时你就玩完儿了，大多数的创业公司都是这样死掉的。&#8221;只要你手里还有钱，你就没有出局。<span lang="EN-US"> (</span>本文来源：《商界评论》杂志 作者：车库科技创投公司主席 盖伊&#8226;卡瓦萨基 翻译<span lang="EN-US">/</span>赵嘉<span lang="EN-US">)&nbsp; <o:p></o:p></span></font></span></p>
  <img src ="http://www.cnblogs.com/ltp/aggbug/1264136.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47946/" target="_blank">Mono这只猴子招惹了谁？</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>赢在中国 - 史玉柱经典语录 </title><link>http://www.cnblogs.com/ltp/archive/2008/04/20/1162910.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sun, 20 Apr 2008 13:34:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/04/20/1162910.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1162910.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/04/20/1162910.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1162910.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1162910.html</trackback:ping><description><![CDATA[<p><img height="104" alt="" src="http://www.cnblogs.com/images/cnblogs_com/ltp/01.JPG" width="548" border="0" /><br /><br />
1.要重视建立销售手册<br />
2.凡是先做试点，风险才低。<br />
3.找到自己的细分市场。<br />
4.不要总想着同竞争对手对立，而是要想办法让自己弥补竞争对手的不足。<br />
5. 如果没有价格上的优势与技术上的绝对优势，千万不要进入红海市场，否则你会必输无疑！<br />
6.抓住关键环节，重点抓好市场调研。<br />
7.与其改变消费者固有的想法，不如在消费者已熟悉的想法上去引导消费者。<br />
8.要改变消费者固有的想法，比登太阳还难；但不是不可能的。 <br />
9.对普通员工，首先考虑其利益，然后才是社会价值。<br />
10.我在我的公司只管一件事——市场调研。<br />
11.公司在小的时候，尽量要股权集中。<br />
12.要花大的精力建立一个连最基层的员工可以看明白及易于操作的手册，尤其是《管理手册》和《营销手册》；<br />
13.要重视建设团队，核心团队一般不超过7人。<br />
14.要脚踏实地的从小做起，团队重于个人作用。<br />
15.要注意广告的法律限制。<br />
16.90%的困难你现在想都没有想到，你都不知道那是困难。<br />
17.首先一定要建立、运营第一家店，并根据其写成一个&#8220;傻瓜手册&#8221;,做成功一个店之后离你大的成功就不远了，首先就是脚踏实地、集中精力做成功一个。<br />
18.试销市场慢跑，快不得；全国市场快跑，慢不得！<br />
&nbsp;&nbsp; 做全国性市场，一定要先做一个试销市场，要一点点来，快不得；<br />
&nbsp;&nbsp; 做成了，真到做全国市场时，要快半步，慢不得！<br />
19.不要只看塔尖，二三线市场比一线的更大。 <br />
20.失败是很重要的财富，我们要好好的利用它。<br />
&nbsp;&nbsp; 作为我们曾经失败过，至少有过失败经历的人，应该经常从里面学点东西。人在成功的时候是学不到东西的，人在顺境的时候，在成功的时候，沉不下心来，总结的东西自然是很虚的东西。只有失败的时候，总结的教训才是深刻的，才是真的。<br />
21.关系不是核心竞争力；关系是最靠不住的东西! <br />
22.广告靠吸引比靠强迫更难。<br />
23.不要为改变而改变，主要看改变的商业模式能提升什么样的价值。<br />
24.创业过程中很重要的在于制度建设。<br />
25.要让公司全部人员知道——管理无情,人有情，公司制度是无价的；<br />
26.在公司只有功劳，没有苦劳。<br />
27.当战略定好后，关键在于执行力，细节决定成败。<br />
28.在下班后，可以将员工当成伙伴，但上班时员工就是员工。<br />
29. 团队核心成员有人要提出辞职时，不要挽留，既然提出了，他迟早是要走的。<br />
30.所谓人才，就是你交给他一件事情，他做成了；你再交给他一件事情，他又做成了。<br />
31.最痛苦的时候，压力最大的时候，脑子里面只有一件事儿的时候，我把全国分公司经理招到荒山脚下北大门那个地方.招待所里面，然后在那个地方闭门开批判会。大家批判我，批判了三天三夜，我觉得那个就很有用。 <br />
32.如果脑白金无效，就请告诉身边一百个人 <br />
33 创造事件营销让媒体自觉报道<br />
&nbsp;&nbsp;&nbsp; 我先找到差异化，我的产品和其它的产品差异在哪儿？<br />
&nbsp;&nbsp;&nbsp; 营销里面有个叫第一法则。你到哈佛去学的时候，他会说一个案例。对美国人来说，谁第一个飞越大西洋的人？一般都能回答得出来，但是问谁是第二个飞越的，就没人能回答出来了。谁是第三个飞越的？记得了。为什么？第三个是第一个女性飞越，她拥有了个第一。<br />
&nbsp;&nbsp;&nbsp; 你一定要在你的品牌建设里面，把你的第一给挖出来，猛宣传那一点。<br />
&nbsp;&nbsp;&nbsp; 宣传用什么手段呢？我建议别上来上电视。第一、报纸，第二个、创造事件营销，让媒体作为新闻自觉去报道你，这样很省钱。 </p> <img src ="http://www.cnblogs.com/ltp/aggbug/1162910.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47945/" target="_blank">Firefox 3.5本月晚些时候即首次升级</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>产品的价值是否就是满足用户需求？</title><link>http://www.cnblogs.com/ltp/archive/2008/04/07/1141053.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Mon, 07 Apr 2008 13:50:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/04/07/1141053.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1141053.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/04/07/1141053.html#Feedback</comments><slash:comments>21</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1141053.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1141053.html</trackback:ping><description><![CDATA[<p><font face="Verdana">从事开发这个行业，经常遇到需求变化是在所难免的，很多时候都是为了迎合客户的需要而对系统进行不断的修改和变化。关于对产品的需求变化和系统修改，个人有一点看法写出来交流一下。<br />
&nbsp;&nbsp;&nbsp; 很多时候我们都是在不断的满足用户的需求来获取订单（当然，为了生存也许是不得已）。系统需求的不断变化定制开发，在给用户带来满足的同时，不断变化的需求也导致系统的庞大而复杂。<br />
我其实也在想一个问题，满足用户需求是否就是提高产品的价值？ 原理上讲这句话是没有错的，产品的价值就是为满足需求，为用户创造价值。但这里面有一个条件，产品的价值并不是满足所有人的需求。也不可能满足所有人的需求，任何一个产品都是如此。<br />
&nbsp;&nbsp;&nbsp;&nbsp; 那我们就需要考虑一个问题，我们满足谁的需求？谁才是我们真正的那部分目标用户？<br />
&nbsp;&nbsp;&nbsp;&nbsp; 产品在市场，就像一个人在社会，总要有一个原则和标准。这样的产品才受人尊重，实现目标。市场上很多大品牌的产品（如Sony,IBM,Motorola），功能反而很简单。并无法满足我们各种各样的需求。倒是那些&#8220;山寨机&#8221;各种功能齐全，应有仅有。这些现象说明什么呢？<br />
</font><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp; 一个产品不能满足所有用户需求。不同的用户有不同的需求，同一用户在不同的条件下也有不同的需求，所以指望一个产品能满足所有用户的需求也不太可能。因此，任何产品都只能满足大部分用户的主要需求，企图满足所有需求的产品最后往往是一个大杂烩，什么都有，但什么都没有的感觉。<br />
</font><font face="Verdana">&nbsp;&nbsp;&nbsp;&nbsp; 从另一个层面讲，当我们获得大部分用户的主要需求以后，我们一方面需要把它们融入到产品设计里面——满足用户的主要需求；另一方面我们还要提升产品的设计——超越用户自身的需求。也就是不但要考虑产品的实用性，还要考虑产品的易用性和趣味性（附加的价值）；就像服装一样，同是为了保暖（当然，夏天的功能应该是为了防止走光吧:)）；但是具有品牌价值的名牌可以卖到上千上万的好价钱，而普通衣服只能卖个几十元，而且还令很多人对这些品牌趋之若鹜。 <br />
&nbsp;&nbsp;&nbsp;&nbsp; 曾经有个形象的例子，不知道有人是否看过斯诺克，如果大家看得话，不难发现职业选手和日常业余玩家有非常大的区别。那就是业余玩家往往希望一杆把所有球打进，一杆下去，母球四处横飞，每个球都在变化位置，结果也无法估计每个球的运动轨迹和停留点，目标球没有进，下一杆又没有好位置；而职业选手每次永远只打一个目标球，目标就是把目标球打进的同时母球有一个很好的停留点来打下一杆球，其中把母球的整个运动轨迹算得清清楚楚。其实产品设计也是一样，专业人员设计的产品永远只满足用户最主要的一个需求，其余的辅助就是为了帮助用户实现唯一的需求和为满足用户下一个需求做准备。<br />
</font><font face="Verdana">当你在为了客户要求不断修改产品的时候，是否问过我们的原则和标准是什么，我们的定位是什么，我们的品牌是什么？<br />
<br />
</font></p>
 <img src ="http://www.cnblogs.com/ltp/aggbug/1141053.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47944/" target="_blank">Google App Engine出现故障宕机6小时</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>贵在坚持 </title><link>http://www.cnblogs.com/ltp/archive/2008/03/23/1118958.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Sun, 23 Mar 2008 15:30:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/03/23/1118958.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1118958.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/03/23/1118958.html#Feedback</comments><slash:comments>34</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1118958.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1118958.html</trackback:ping><description><![CDATA[<p>很早毛主席他老人家说过：人一辈子做一件好事不难，难得是一辈子做好事不做坏事。<br />
就说明了这样一个道理，坚持是多么难的一件事。</p>
<p>互联网创业也同样贵在坚持! <br />
马云因为坚持，把阿里巴巴送上了市，造就了中国的电子商务时代，而更重要的是跟随他10年的18罗汉竟然没有一个离开，一直坚持跟随他，一直坚持把着件事做好。他们成功了！<br />
马云说过：今天很残酷，明天更残酷，后天很美好，大部分人死在明天晚上，看不到后天的太阳。&#8221; </p>
<p>金山的成功的背后也是不断自我颠覆，自我否定，自我选择，自我创新的艰难历程。<br />
金山的坚持不但是为了活下去，而且是在残酷的竞争，甚至是死亡中坚持。最终金山终于实现上市的光荣与梦想。而为了这一切雷军坚持了18年！</p>
<p>冯仑总说，&#8220;伟大是熬出来的&#8221;，他认为对信念的执着不能靠一时的小聪明。在遇到困难时，多数人是再选择而不是将原来的选择坚持到底，&#8220;成功者与常人的差别并不是智商而是一种毅力&#8221;</p>
<p>创业如此，职场也是如此，一个开发人员经常换语言或开发工具的人往往哪个也学不精，因为没有专业积累。一个频繁换工作的人往往也很难有提升，因为没有行业积累。</p>
<p>人做事往往会前紧后松，刚开始做的时候很积极，很认真，时间长了，就慢慢松懈了。<br />
人的心态如果能始终如一坚持一种积极进取和激情，一如既往的保持一种状态，想不成功都难！<br />
人需要一种持之以恒的精神，<br />
坚持是一种能力，坚持是一种智慧，坚持是一种风度,<br />
坚持就会胜利！&nbsp;</p>
<p><span style="font-size: 9pt">（作者：<a href="http://www.litianping.com/" target="_blank"><font color="#a59fad">李天平</font></a>&nbsp;</span><span style="font-size: 9pt">&nbsp;</span><span style="font-size: 9pt">转载请注明）</span></p>
 <img src ="http://www.cnblogs.com/ltp/aggbug/1118958.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47943/" target="_blank">消息称Facebook今年营收将达5.5亿美元</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item><item><title>人才是培养的吗？</title><link>http://www.cnblogs.com/ltp/archive/2008/03/20/1115504.html</link><dc:creator>李天平</dc:creator><author>李天平</author><pubDate>Thu, 20 Mar 2008 15:24:00 GMT</pubDate><guid>http://www.cnblogs.com/ltp/archive/2008/03/20/1115504.html</guid><wfw:comment>http://www.cnblogs.com/ltp/comments/1115504.html</wfw:comment><comments>http://www.cnblogs.com/ltp/archive/2008/03/20/1115504.html#Feedback</comments><slash:comments>27</slash:comments><wfw:commentRss>http://www.cnblogs.com/ltp/comments/commentRss/1115504.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/ltp/services/trackbacks/1115504.html</trackback:ping><description><![CDATA[摘要: 上段时间和朋友谈到一个人的职业发展问题，人总是想向上走，也想不搞技术，也想管理，也想创业，也想发财。其实我想有些是不适合的，以前听人说，想起老家的一句话：“别人教的曲唱不得”，意思就是：有些东西不是别人教就能会的，我还有些诧异，甚至不以为然&nbsp;&nbsp;<a href='http://www.cnblogs.com/ltp/archive/2008/03/20/1115504.html'>阅读全文</a><img src ="http://www.cnblogs.com/ltp/aggbug/1115504.html?type=1" width = "1" height = "1" /><br/><br/>--------------------------<br/>新闻：<a href="http://news.cnblogs.com/n/47937/" target="_blank">微软8月25日开始通过WSUS推送IE8</a><br/>网站导航: <a href="http://www.cnblogs.com" target="_blank">博客园首页</a>&nbsp;&nbsp;<a href="http://news.cnblogs.com" target="_blank">新闻</a>&nbsp;&nbsp;<a href="http://dotnet.cnblogs.com" target="_blank">.NET频道</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com" target="_blank">社区</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/q/" target="_blank">博问</a>&nbsp;&nbsp;<a href="http://space.cnblogs.com/ing/" target="_blank">闪存</a>&nbsp;&nbsp;<a href="http://zzk.cnblogs.com" target="_blank">找找看</a>]]></description></item></channel></rss>