﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-『一只小蚂蚁』的专栏-随笔分类-Other</title><link>http://www.blogjava.net/qixiangnj/category/14811.html</link><description>&lt;strong&gt;生命不息，拼搏不止。&lt;/strong&gt;</description><language>zh-cn</language><lastBuildDate>Thu, 22 Nov 2007 07:58:52 GMT</lastBuildDate><pubDate>Thu, 22 Nov 2007 07:58:52 GMT</pubDate><ttl>60</ttl><item><title>【转载】你的时间在那里，成就就在那里</title><link>http://www.blogjava.net/qixiangnj/archive/2007/11/22/162337.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Thu, 22 Nov 2007 04:16:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/11/22/162337.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/162337.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/11/22/162337.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/162337.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/162337.html</trackback:ping><description><![CDATA[原文地址：http://dhlmtzx.edudh.net/oblog/article.asp?id=1718<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 40岁以前，大部份的人是相同的，升学读书升学读书&#8230;&#8230;，建立自己基础。在父母亲友，社会价值观影响及误打误撞的情况下完成基本教育。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;选择读书，应该一鼓作气，在您尚未进入产业时，能读多高就多高，毕竟何时进 入产业，您都是社会新鲜人。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;但是一旦您已经有工作经验而又有心进修，当然管道很多，相对的挣扎也多。因为您不知现在的年纪、条件、资历&#8230;&#8230;再去做进修这样的投资是否值得？如果，您认定一辈子要当上班族，学历对您而言相信是很重要的，否则，时间宝贵，不容许您再走错路。 <br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>20 ~ 25岁，您要懂得掌握与规划自己的未来，决定了就是一条无悔的不归路。</strong><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;刚得到法律付予您的种种权力，相对的您要尽您的义务及学习面对责任的承担。这时候的您，是「喜悦」、「矛盾」与「痛苦」交战，「喜悦」来自于开始被赋予一些自主权，「矛盾」来自于与父母割不断的脐带关系，「痛苦」的是开始要尝试错误 。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;您要开始为自己的未来规划，如升学、就业、感情&#8230;&#8230;拿回自己对人生的主控权，而非一直受人左右影响的去摇摆自己的未来。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">学会人际关系，多认识积极的朋友，十年后这些朋友都将是产业的中坚</span>】 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>25 ~ 30岁，您像一块海绵，努力吸收也甘心被压榨，为的只是自我的成长。</strong><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这时候的您，应是工作取向，薪水待遇。升迁调职您应该是斤斤计较。因为唯有努力付出，相对的您才敢积极争取，社会新鲜人的动力应该让您冲出自己的一片天，也因为没有经验，所以不懂挫折。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;因为资源不多，所以 一切尽人事，听天命。现在的您：领取别人的薪水，学习别人的经验，付出 自己的青春，建构自己的未来。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">学会累积经验，接触机会，良师益友的提携更是提升您成长的大利器</span>】 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>30 ~ 35岁，您要学习判断机会、掌握机会，不能再有尝试错误的心态。</strong> <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这时候的您，应是事业取向和家庭取向，工作应该从体力转换为脑力。您应该看到的是远景，而非现况，面对的是宽广人生，而非局限于自我。<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;结婚是许多人面临人生第一次的重大抉择，面对婚姻，很多人以为结婚就是一个责任的结束，殊不知正是学习的开始。就像一些刚上市的公司，以为目标达成了，忘了自己的企业责任，忽略本业。反而是一个恶梦的开始。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;人的本业不就是经营自己的家庭，赚钱的目的不就希望给家人更好的生活，但这可不能成为忽略家人的借口，一个经营不好家庭的人，纵使赚到全世界，他得到的只是表面的掌声，在他人生的这个圆，永远有一个缺口。家应该是您最大的精神支柱。动力来源和坚强后盾！<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">时间管理，转化心境；转化用头脑去工作，不要用身体去工作</span>】 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>35 ~ 40岁，您要享受给人希望，功德无量的格局。</strong> <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这时候的您，应是企业取向，工作只是一种休闲，更可转化为对他人的责任。如果您专注于研究，您应该不只穷毕生之力。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;24
小时不眠不休的去做苦力您应该有成立研究机构，带领一群人做更多研发的雄心壮志。如果您是企业主管，您应该不只停留在汲汲营营，斤斤计较，您应该有能力担
负主导周遭的员工、家人，带领他们享受更好的生活。格局的大小，会影响您成就的多少，做一个有影响力的人，而非被影响的人。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">不论目前您多风光。多有成就，在您心中是否画得出十年后的你？</span>】 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;静心思考!我们现在所有努力的目的不就是为了父母、另一半、小 孩&#8230;&#8230;？ <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;工作，不应该等于是人生，更不应该是需要经营一辈子的事。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;试问「健康」、「财富」、「自我成长」、「人际关系」和「时间自由」，什么是您努力工作的动力？我相信没有人愿意放弃任何一点。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这些正是促使我们年轻人前进的动力。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;十年后，您是提早完成它？还是提早放弃它？<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">宁可因梦想而忙碌，不要因忙碌而失去梦想</span>】 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我看周遭有太多优秀甚于我数倍的朋友，可惜的是终日汲汲营营，投入更多的时间、精神、资源，却没有享受到应得的代价，原因无他，努力错方向 ，找错机会，拒绝机会而己。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;乔丹打了一辈子的篮球，是很难在棒球场上找到自己的舞台。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;不要让忙碌蒙蔽了您的双眼再回头：「廉颇老矣，尚能饭否？」 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">你的时间在那里，成就就在那里</span>】 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当您一个人成功，您只享受到一个人的快乐！ <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;懂得分享与付出，真正的快乐来自于：周遭的亲友因您的成长而提升，不论是精神或物质。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;真正的成功来自于：周遭的亲友因您付出获得改善，给人希望功德无量。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我们不是在做慈善事业，尚没有能力普渡众生，但是，我们可以发挥一己之力，对亲友，对那些有缘相遇的陌生朋友。 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;伸出您的手，在他们需要的时候! <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;太多人在等生命中的贵人，聪明如您，何不先从帮助他人开始？ <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;【<span style="color: Red;">有人4、50岁了，还喜欢说出自某某名校， 我觉得奇怪，他们把学校的那几年当成生命的巅峰，其实他出了校门便已开始走下坡路了。</span>】——张忠谋 <br />
<br />
<img src ="http://www.blogjava.net/qixiangnj/aggbug/162337.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-11-22 12:16 <a href="http://www.blogjava.net/qixiangnj/archive/2007/11/22/162337.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>web2.0最全的国外API应用集合</title><link>http://www.blogjava.net/qixiangnj/archive/2007/10/31/157280.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Wed, 31 Oct 2007 11:22:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/10/31/157280.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/157280.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/10/31/157280.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/157280.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/157280.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 原文地址：http://www.buguat.com/post/98.html2.0时代，越来越多的API被大家广泛应用，如果你还不了解API是何物，请看这里的介绍。下面是由techmagazine总结出的国外API应用，涵盖了30大类，相当全面了~不难发现，虽然都是英文的居多，但有很多已经推出了中文版本，而且我们也在应用中。广告                    ...&nbsp;&nbsp;<a href='http://www.blogjava.net/qixiangnj/archive/2007/10/31/157280.html'>阅读全文</a><img src ="http://www.blogjava.net/qixiangnj/aggbug/157280.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-10-31 19:22 <a href="http://www.blogjava.net/qixiangnj/archive/2007/10/31/157280.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】我最恐惧的事情是竞争力的丧失</title><link>http://www.blogjava.net/qixiangnj/archive/2007/10/17/153524.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Wed, 17 Oct 2007 04:06:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/10/17/153524.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/153524.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/10/17/153524.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/153524.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/153524.html</trackback:ping><description><![CDATA[原文地址：http://blog.donews.com/liuren/archive/2007/10/16/1219871.aspx<br />
<ol goog_docs_charindex="7">
    <li goog_docs_charindex="8">慎重选择。好的结果源自好的选择。
    <ol goog_docs_charindex="26">
        <li goog_docs_charindex="27">不急着做决定； </li>
        <li goog_docs_charindex="37">听大多数人意见和少数人商量； </li>
        <li goog_docs_charindex="54">将决定写出来，拆细分析； </li>
        <li goog_docs_charindex="54">选可以兼顾和修正的方案，避免孤注一掷。宁愿慢点，也不错。</li>
    </ol>
    </li>
    <li goog_docs_charindex="70">沿着一个方向积累。
    <ol goog_docs_charindex="81">
        <li goog_docs_charindex="82">你能，不是你比别人聪明，是你比别人用的时间多； </li>
        <li goog_docs_charindex="105">修正、提高；再修正、再提高。如此往复。温故而知新，不亦乐乎？创新太难，从旧的基础出发，一样可以提高。</li>
    </ol>
    </li>
    <li goog_docs_charindex="123">不在错误的人、错误的事上浪费时间。
    <ol goog_docs_charindex="142">
        <li goog_docs_charindex="143">不招惹不相关的人； </li>
        <li goog_docs_charindex="143">只对很少的事情感兴趣； </li>
        <li goog_docs_charindex="155">不可能完成的任务，提早放弃。</li>
    </ol>
    </li>
    <li goog_docs_charindex="173">装备自己。人能打败狮子，是因为人会用武器。
    <ol goog_docs_charindex="195">
        <li goog_docs_charindex="196">多去书店，多买书； </li>
        <li goog_docs_charindex="196">多读哲学和历史。思想的高度决定实践的高度。&nbsp; </li>
        <li goog_docs_charindex="208">买最快的计算机、手机和更多的数码产品； </li>
        <li goog_docs_charindex="227">多用Google的产品。</li>
    </ol>
    </li>
    <li goog_docs_charindex="243">多沟通。信任源于沟通。机会源于沟通。
    <ol goog_docs_charindex="263">
        <li goog_docs_charindex="264">多打电话。 </li>
        <li goog_docs_charindex="272">多写邮件。 </li>
        <li goog_docs_charindex="280">多用IM。 </li>
        <li goog_docs_charindex="288">多写文档。</li>
    </ol>
    </li>
    <li goog_docs_charindex="297">坚守底线。有操守才能被信任。信任能降低成本。 </li>
    <li goog_docs_charindex="322">尊重偏好。发自心地地喜欢各种文化，各种个性。这样才能团结人，和人合作。</li>
</ol>
<p class="MsoListParagraphCxSpLast" style="margin: 0cm 0cm 10pt 21pt; text-indent: -21pt;"><font size="3"><span style="font-family: 宋体;"><span style="font-family: 宋体;"><span style="font-family: 宋体;"><span style="font-size: 12pt; color: black; font-family: 宋体;"><span style="color: black; font-family: 宋体;">本文由</span><span style="color: black; font-family: 'Verdana','sans-serif';" lang="EN-US"><a href="http://www.eootv.com/"><span style="font-family: 宋体;" lang="EN-US"><span lang="EN-US"><font color="#4169e1">亚洲商港</font></span></span></a></span><span style="color: black; font-family: 宋体;">独家冠名赞助。</span></span></span></span></span></font></p>
<img src ="http://www.blogjava.net/qixiangnj/aggbug/153524.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-10-17 12:06 <a href="http://www.blogjava.net/qixiangnj/archive/2007/10/17/153524.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】Web2.0@China！</title><link>http://www.blogjava.net/qixiangnj/archive/2007/09/28/149331.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 28 Sep 2007 11:02:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/09/28/149331.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/149331.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/09/28/149331.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/149331.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/149331.html</trackback:ping><description><![CDATA[原文地址：http://www.showeb20.com/?p=585<br />
<br />
<p>简单整理出了下面的清单，本土的web2.0服务，未来会联合投票帮、爱唠叨、9Fav、Mywowo以及其他一些Web2.0团队联合举办一次完
全草根的&#8220;我最喜爱的WEB2.0服务&#8221;的投票活动，下面这个清单是我临时整理出来的，算是一个草稿吧。可以肯定的，还有很多优秀的服务没有出现在下面列
表中。发动长尾的力量，欢迎大家在下面更帖补充某一个分类的内容或者增加分类来完善这个列表吧，也欢迎所有的创业团队毛遂自荐啦，只要是属于中国本土的互
联网服务（未来可能会加入一些本地化比较彻底的服务，例如Pageflakes、<font size="-1">Jimdo、Mister Wong、Last.fm等等</font>）都应该出现在下面 <img src="http://www.showeb20.com/wp-includes/images/smilies/icon_smile.gif" alt=":-)" class="wp-smiley" /> </p>
<p><strong>社会性书签类</strong>：<a href="http://shuqian.qq.com/">QQ书签</a>，<a href="http://cang.baidu.com/">百度收藏</a>，<a href="http://myweb.cn.yahoo.com/">雅虎收藏</a>，<a href="http://www.9fav.com/">就喜欢</a>，<a href="http://www.chouti.com/">抽屉</a>，<a href="http://www.leshou.com/">乐收</a>，<a href="http://www.inu.cc/">易游</a>，<a href="http://www.tolib.com/">统录</a>、<a href="http://www.hemidemi.com/">黑米</a>、<a href="http://www.otag.cn/">标签公社</a>、</p>
<p><strong>视频分享类：</strong><a href="http://www.tudou.com/">土豆</a>，<a href="http://www.56.com/">56</a>，<a href="http://www.youku.com/">优酷</a>，<a href="http://www.6.cn/">六间房</a>，<a href="http://www.hupo.tv/">琥珀</a>，<font><a href="http://www.bobouni.com/">播播</a>，<a href="http://www.mofile.com/">Mofile</a>，<a href="http://www.uume.com/">UUMe</a></font> ，<font size="-1"><a href="http://video.qq.com/">QQ播客</a>，</font></p>
<p><strong>Digg类：</strong><a href="http://diglog.com/">Diglog</a>、<a href="http://www.20ju.com/">草根网</a>、<a href="http://www.digbuzz.com/">我挖</a>、<a href="http://www.mytaoke.com/">淘客</a>、</p>
<p><strong>音乐分享网站：</strong><a href="http://www.8box.cn/">八音盒</a>、<a href="http://www.icoobo.com/">爱酷播</a>、<a href="http://www.yobo.com/">友播</a>、<a href="http://weazone.com/">维众</a>、<a href="http://www.songtaste.com/">SongTaste</a>、<a href="http://www.mybale.com/">八乐</a>、<a href="http://www.lifepop.com/">Lifepop</a>、<a href="http://www.ubox.com.cn/">Ubox</a>、<a href="http://music.aobo.com/">AoBo音乐盒</a>、<a href="http://www.musicpaw.com/">乐泡</a>、<a href="http://www.9sky.com/">九天</a></p>
<p><strong>博客托管服务商：</strong><a href="http://yo2.cn/">Yo2</a>、<a href="http://72pines.com/">72pines</a>、 <a href="http://lifesterblog.com/">Lifesterblog</a>、<a href="http://blogcn.com/">Blogcn</a>、51、新浪、搜狐、网易、百度、Qzone、Bokee、BlogBus、Donews blog、</p>
<p><strong>微型博客系统：</strong><a href="http://www.fanfou.com/">饭否</a>、<a href="http://www.jiwai.de/">唧歪de</a>、<a href="http://www.ilaodao.cn/">爱唠叨</a>、<a href="http://www.laigula.com/">来咕拉</a>、<a href="http://www.taotao.com/">腾讯滔滔</a>、</p>
<p><strong>RSS周边：</strong><a href="http://www.zhuaxia.com/">抓虾</a>、<a href="http://www.xianguo.com/">鲜果</a>、<a href="http://365bloglink.com/">365Bloglink</a>、<a href="http://www.anothr.com/">Anothr</a>、<a href="http://rss.com.tv/">看天下</a>、<a href="http://www.potu.com/">周伯通</a>、<a href="http://www.opml.cn/">OPML</a>、<a href="http://www.emailrss.cn/">RSS邮天下</a>、<a href="http://rss.modim.cn/">胖葫芦</a>、<a href="http://feed.aobo.com/">Aobo</a>、<a href="http://funp.com/">FunP</a></p>
<p><strong>图片分享：</strong><a href="http://www.yupoo.com/">又拍</a>，<a href="http://www.bababian.com/">巴巴变</a>，<span style="font-size: 12px; font-family: '宋体';" lang="EN-US"><a href="http://www.dpdp.net/" target="_blank">多拍</a>，</span><span style="font-size: 12px; font-family: '宋体';" lang="EN-US"><a href="http://www.jetphoto.cn/" target="_blank">捷拍</a>，</span><span style="font-size: 12px; font-family: '宋体';" lang="EN-US"><a href="http://www.qudoo.net/" target="_blank">趣多</a></span>，<a href="http://www.886.cn/">拍拍乐</a>，<a href="http://www.fotolog.com.cn/">Fotolog</a>，<a href="http://www.fotoky.com/">Fotoky</a>，<a href="http://www.qiezi.com/">茄子</a>，</p>
<p><strong>地图服务</strong>：百度地图、雅虎地图、<a href="http://www.city8.com/">城市吧</a>、<a href="http://www.edushi.com/">E都市</a>、</p>
<p><strong>在线应用程序：</strong><a href="http://www.xiaoi.com/">小i</a>，<a href="http://mojiti.com/">魔击体</a>，<a href="http://www.picidea.net/">Picidea</a>，<a href="http://www.sayjoy.com/">Sayjoy</a>，</p>
<p><strong>个性化主页</strong>：<a href="http://www.swode.com/">是我的</a>， <a href="http://www.googsc.com/">咕谷</a>，<a href="http://www.yatrack.cn/">雅客</a>，<a href="http://www.hoozone.com/">火柴</a>，<a href="http://www.woyong.com/">我用</a>，<a href="http://p.cn/">P.cn</a>，</p>
<p><strong>社会性网络：</strong>校内、花名册、占座、9公寓、亿聚、<a href="http://www.linkist.com/">联络家</a>、UUzone、若邻网络、<a href="http://www.365ju.com/">网聚</a>，<a href="http://www.qoodou.com/">酷兜</a>， <a href="http://www.fzone.cn/">拍客地带</a>，<a href="http://www.ipart.cn/">爱情公寓</a>，<a href="http://www.mytupa.com/">图葩</a>，<a href="http://www.babytree.com/">宝宝树</a></p>
<p><strong>评论分享：</strong><a href="http://www.douban.com/">豆瓣</a>、<a href="http://www.koubei.com/">口碑</a>、<a href="http://www.fantong.com/">饭桶</a></p>
<p><strong>网络电视：</strong>PPlive、QQlive、PPstream 、MySee、</p>
<br />
<br />
<img src ="http://www.blogjava.net/qixiangnj/aggbug/149331.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-09-28 19:02 <a href="http://www.blogjava.net/qixiangnj/archive/2007/09/28/149331.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】正确地做事与做正确的事同样重要</title><link>http://www.blogjava.net/qixiangnj/archive/2007/09/26/148177.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Wed, 26 Sep 2007 00:30:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/09/26/148177.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/148177.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/09/26/148177.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/148177.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/148177.html</trackback:ping><description><![CDATA[原文地址：http://dev.csdn.net/author/CXXSoft/87178bb27ef94fee9df34b384a52bed5.html<br />
<br />
<div class="con_sample">
<p>&#8220;又是一年毕业时&#8221;，看到一批批学子离开人生的象牙塔，走上各自的工作岗位；想想自己也曾经意气
风发、踌躇满志，不觉感叹万千&#8230;&#8230;本文是自己工作6年的经历沉淀或者经验提炼，希望对所有的软件工程师们有所帮助，早日实现自己的人生目标。本文主要是关
于软件开发人员如何提高自己的软件专业技术方面的具体建议，前面几点旨在确定大的方向，算是废话吧。</p>
</div>
<div class="con_all">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><font size="3"><strong><span style="line-height: 150%; font-family: 宋体;">正确地做事与做正确的事同样重要</span></strong><strong><span style="line-height: 150%;" lang="EN-US"><o:p></o:p></span></strong></font></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">一位软件工程师的</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">6</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年总结</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;"><span style="font-size: 9pt; font-family: 宋体;">作者：成晓旭</span></span></strong><strong><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">(</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">声明：欢迎转载，请保证文章的完整性</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">)<o:p></o:p></font></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">&#8220;又是一年毕业时&#8221;，看到一批批学子离开人生的象牙塔，走上各自的工作岗位；想想自己也曾经意气风发、踌躇满志，不觉感叹万千</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">&#8230;&#8230;</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">本文是自己工作</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">6</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年的经历沉淀或者经验提炼，希望对所有的软件工程师们有所帮助，早日实现自己的人生目标。本文主要是关于软件开发人员如何提高自己的软件专业技术方面的具体建议，前面几点旨在确定大的方向，算是废话吧。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">谨以此文献给那个自己为你奉献</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">3</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年青春与激情的开发团队。还有团队成员：</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">PPL</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">YT</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">YK </font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">TYF</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">LGL</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">CHL</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">CDY</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">CB</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">DPD</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><o:p></o:p></font></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">1、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">分享第一条经验：<strong><span style="color: blue;">&#8220;学历代表过去、能力代表现在、学习力代表未来。&#8221;</span></strong>其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很重要：&#8220;<font color="#ff0000"><strong>重要的道理明白太晚将抱憾终生！&#8221;</strong></font>所以放在每一条，让刚刚毕业的朋友们早点看到哈！</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">2、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">一定要确定自己的发展方向，并为此目的制定可行的计划。</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">不
要说什么，&#8220;我刚毕业，还不知道将来可能做什么？&#8221;，&#8220;跟着感觉走，先做做看&#8221;。因为，这样的观点会通过你的潜意识去暗示你的行为无所事事、碌碌无为。一
直做技术，将来成为专家级人物？向管理方向走，成为职业经理人？先熟悉行业和领域，将来自立门户？还是先在行业里面混混，过几年转行做点别的？这很重要，
它将决定你近几年、十年内&#8220;<font color="#ff0000"><strong>做什么事情才是在做正确的事情！</strong></font>&#8221;。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span><span><font face="Times New Roman">3、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;<font color="#0000ff">&nbsp; </font></span></font></span><strong><font color="#0000ff">软件开发团队中，技术不是万能的，但没有技术是万万不能的！</font></strong></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;"><font color="#0000ff">在</font>技术型团队中，技术与人品同等重要，当然长相也比较重要哈，尤其在</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">MM</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">比较多的团队中。<font color="#ff0000"><strong>在软件项目团队中，技术水平是受人重视和尊重的重要砝码。</strong></font>无论你是做管理、系统分析、设计、编码，还是产品管理、测试、文档、实施、维护，多少你都要有技术基础。算我孤陋寡闻，我还真没有亲眼看到过一个外行带领一个软件开发团队成功地完成过软件开发项目，哪怕就一个，也没有看到。倒是曾经看到过一个&#8220;高学历的牛人&#8221;</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">(</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">非技术型</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">)</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">带一堆人做完过一个项目，项目交付的第二天，项目组成员扔下一句&#8220;再也受不了啦！&#8221;四分五裂、各奔东西。那个项目的&#8220;成功度&#8221;大家可想而知了。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">4、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">详细制定自己软件开发专业知识学习计划，并注意及时修正和调整</span></strong><strong><span style="font-size: 9pt; color: blue; line-height: 150%;" lang="EN-US"><font face="Times New Roman">(</font></span></strong><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">软件开发技术变化实在太快</span></strong><strong><span style="font-size: 9pt; color: blue; line-height: 150%;" lang="EN-US"><font face="Times New Roman">)</font></span></strong><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">。</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">请牢记<strong><font color="#ff0000">：&#8220;如果一个软件开发人员在</font></strong></span><strong><font color="#ff0000"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">1</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2</font></span></font></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;"><strong><font color="#ff0000">年内都没有更新过自己的知识，那么，其实他已经不再属于这个行业了。&#8221;</font></strong>不要告诉自己没有时间。来自时间管理领域的著名的&#8220;三八原则&#8221;告诫我们：另外的那</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">8</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">小时如何使用将决定你的人生成败！本人自毕业以来，平均每天实际学习时间超过</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">1.5</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">小时。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">本人毕业</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">6</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年来主要的学习计划、资料：</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p>
</p>
<table class="MsoNormalTable" style="border: medium none ; margin: auto auto auto 5.4pt; width: 423pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0" width="564">
    <tbody>
        <tr style="height: 23.25pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 23.25pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">时间</span></strong><strong><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></strong></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 23.25pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">目标</span></strong><strong><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></strong></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 23.25pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%; text-align: center;" align="center"><strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体-方正超大字符集;">经典书籍<span lang="EN-US"><o:p></o:p></span></span></strong></p>
            </td>
        </tr>
        <tr style="height: 3.5pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 3.5pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2000</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 3.5pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">学习工作需要的</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">C</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">C++</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Delphi<o:p></o:p></font></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 3.5pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">C++</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">编程思想、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Delphi4</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">开发大全</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
        </tr>
        <tr style="height: 37pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 37pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2001</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 37pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">学习</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">操作系统原理、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">程序设计</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">(SDK)</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">知识、系统学习信息安全、密码学知识</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 37pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">打开</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">这扇窗、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">操作系统原理、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">核心编程、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">网络编程技术、加密与解密、应用密码学、密码编码和密码分析：原理与方法</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
        </tr>
        <tr style="height: 20.85pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 20.85pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2002</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 20.85pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">学习软件工程、软件系统分析、设计、测试，统一软件开发方法及</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Rose<o:p></o:p></font></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 20.85pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">UML</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">和模式应用、统一软件开发、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Rose</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">从入门到精通、软件工程</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">:</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">实践者的研究方法、系统分析与设计、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
        </tr>
        <tr style="height: 21.75pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 21.75pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2003</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 21.75pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">学习</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Java</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">语言及技术、设计模式、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 21.75pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">设计模式、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">JAVA 2</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">编程指南、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">J2EE</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">数据库开发指南、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Master EJB</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">EJB</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">应用指南（第</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">版）</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
        </tr>
        <tr style="height: 21pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 21pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2004</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2005</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 21pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">工作原因技术毫无进步</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 21pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">用极有限的时间了解心理学、社会学、经济、教育等领域的知识</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
        </tr>
        <tr style="height: 28.5pt;">
            <td style="padding: 0cm 5.4pt; width: 45pt; height: 28.5pt; background-color: transparent;" valign="top" width="60">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2006</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 162pt; height: 28.5pt; background-color: transparent;" valign="top" width="216">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">重学</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Java</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">相关技术、软件开发方法论</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
            <td style="padding: 0cm 5.4pt; width: 216pt; height: 28.5pt; background-color: transparent;" valign="top" width="288">
            <p class="MsoNormal" style="margin: 0cm 0cm 0pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">重构、敏捷软件开发</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">(</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">原则、模式与实践</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">)</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、代码大全、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Spring In Action</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">J2EE without EJB</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Spring</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">框架高级编程</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
            </td>
        </tr>
    </tbody>
</table>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p><font face="Times New Roman">&nbsp;</font></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">5、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">书籍是人类进步的阶梯，对软件开发人员尤其如此。</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">书籍是学习知识的最有效途径，不要过多地指望在工作中能遇到&#8220;世外高人&#8221;，并不厌其烦地教你。对于花钱买书，我个人经验是：千万别买国内那帮人出的书！我买的那些家伙出的书，</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">!00%</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">全部后悔了，无一本例外。更气愤的是，这些书在二手市场的地摊上都很难卖掉。&#8220;拥有书籍并不表示拥有知识；拥有知识并不表示拥有技能；拥有技能并不表示拥有文化；拥有文化并不表示拥有智慧。&#8221;只有将书本变成的自己智慧，才算是真正拥有了它。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span><span><font face="Times New Roman">6、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span><strong><font color="#0000ff">不要仅局限于对某项技术的表面使用上，哪怕你只是偶尔用一、二次。</font></strong></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;"><font color="#ff0000"><strong>&#8220;对任何事物不究就里&#8221;是任何行业的工程师所不应该具备的素质。</strong></font>开发</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">应用程序，看看</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">程序的设计、加载、执行原理，分析一下</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">PE</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">文件格式，试试用</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">SDK</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">开发从头开发一个</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">应用程序；用</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">VC</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">＋＋、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Delphi</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Java</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">.Net</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">开发应用程序，花时间去研究一下</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">MFC</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">VCL</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">J2EE</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">.Net</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">它们框架设计或者源码；除了会用</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">J2EE</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">JBoss</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Spring</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Hibernate</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">等等优秀的开源产品或者框架，抽空看看大师们是如何抽象、分析、设计和实现那些类似问题的通用解决方案的。试着这样做做，你以后的工作将会少遇到一些让你不明就里、一头雾水的问题，因为，很多东西你&#8220;知其然且知其所以然&#8221;！</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">7、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">在一种语言上编程，但别为其束缚了思想。</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">&#8220;代码大全&#8221;中说<strong><font color="#ff0000">：&#8220;深入一门语言编程，不要浮于表面&#8221;。</font></strong>深入一门语言开发还远远不足，任何编程语言的存在都有其自身的理由，所以也没有哪门语言是&#8220;包治百病&#8221;的&#8220;灵丹妙药&#8221;。编程语言对开发人员解决具体问题的思路和方式的影响与束缚的例子俯拾皆是。我的经验是：用面对对象工具开发某些关键模块时，为什么不可以借鉴</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">C</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">C51</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、汇编的模块化封装方式？用传统的桌面开发工具</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">(</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">目前主要有</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">VC++</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Delphi)</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">进行系统体统结构设计时，为什么不可以参考来自</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Java</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">社区的</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">IoC</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">AOP</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">设计思想，甚至借鉴像</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Spring</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Hibernate</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">JBoss</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">等等优秀的开源框架？在进行类似于实时通信、数据采集等功能的设计、实现时，为什么不可以引用来自实时系统、嵌入式系统的优秀的体系框架与模式？为什么一切都必须以个人、团队在当然开发语言上的传统或者经验来解决问题？？？&#8220;<font color="#ff0000"><strong>他山之石、可以攻玉&#8221;。</strong></font></span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">8、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">养成总结与反思的习惯，并有意识地提炼日常工作成果，形成自己的个人源码库、解决某类问题的通用系统体系结构、甚至进化为框架。</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">众
所周知，对软件开发人员而言，有、无经验的一个显著区别是：无经验者完成任何任务时都从头开始，而有经验者往往通过重组自己的可复用模块、类库来解决问题
（其实这个结论不应该被局限在软件开发领域、可以延伸到很多方面）。这并不是说，所有可复用的东西都必须自己实现，别人成熟的通过测试的成果也可以收集、
整理、集成到自己的知识库中。但是，最好还是自己实现，这样没有知识产权、版权等问题，关键是自己实现后能真正掌握这个知识点，拥有这个技能。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">9、<span style="font-family: &quot;Times New Roman&quot;; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">&nbsp;&nbsp; </span></font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">理论与实践并重，内外双修</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">。<font color="#ff0000"><strong>工程师的内涵是：以工程师的眼光观察、分析事物和世界</strong></font>。一个合格的软件工程师，是真正理解了软件产品的本质及软件产品研发的思想精髓的人<strong><span style="color: red;">（个人观点、欢迎探讨）</span></strong>。
掌握软件开发语言、应用语言工具解决工作中的具体问题、完成目标任务是软件工程师的主要工作，但从软件工程师这个角度来看，这只是外在的东西，并非重要
的、本质的工作。学习、掌握软件产品开发理论知识、软件开发方法论，并在实践中理解、应用软件产品的分析、设计、实现思想来解决具体的软件产品研发问题，
才是真正的软件工程师的工作。<strong><font color="#ff0000">站在成熟理论与可靠方法论的高度思考、分析、解决问题，并在具体实践中验证和修正这些思想与方式，最终形成自己的理论体系和实用方法论。</font></strong></span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span><span><font face="Times New Roman">10、</font></span><strong><font color="#0000ff">心态有多开放，视野就有多开阔。</font></strong></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;"><font color="#ff0000"><strong>不要抱着自己的技术和成果，等到它们都已经过时变成垃圾了，才拿出来丢人现眼。</strong></font>请及时发布自己的研究成果：开发的产品、有创意的设计或代码，公布出来让大家交流或者使用，你的成果才有进化和升华的机会。想想自己</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">2000</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年间开发的那些</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">系统工具，</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">5</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">、</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">6</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">年之后的今天，还是那个样子，今天流行的好多</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">Windows</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">系统工具都比自己的晚，但进化得很好，且有那么多用户在使用。<font color="#ff0000"><strong>并且，不要保守自己的技术和思想，尽可能地与人交流与分享，或者传授给开发团队的成员</strong></font>。&#8220;与人交换苹果之后，每个人还是只有一个苹果；但交换思想之后，每个人都拥有两种思想&#8221;，道理大家都懂，但有多少人真正能做到呢？</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">11、</font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">尽量参加开源项目的开发、或者与朋友共同研制一些自己的产品，千万不要因为没有钱赚而不做</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">。网络早已不再只是&#8220;虚拟世界&#8221;，网上有很多的开源项目、合作开发项目、外包项目，这都是涉猎工作以外的知识的绝好机会，并且能够结识更广的人缘。不要因为工作是做</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">ERP</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">，就不去学习和了解嵌入式、实时、通信、网络等方面的技术，反过来也是一样。如果当他别人拿着合同找你合作，你却这也不会，那也不熟时，你将后悔莫及。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">12、</font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">书到用时方恨少，不要将自己的知识面仅仅局限于技术方面。</span></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">诺贝尔经济学奖得主西</span><st1:personname productid="蒙"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">蒙</span></st1:personname><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">教授的研究结果表明：</span><span style="font-size: 9pt; line-height: 150%;"><font face="Times New Roman"> </font></span><strong><font color="#ff0000"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">&#8220;对于一个有一定基础的人来说，他只要真正肯下功夫，在</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">6</font></span></font></strong><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;"><strong><font color="#ff0000">个月内就可以掌握任何一门学问。&#8221;</font></strong>教育心理学界为感</span><st1:personname productid="谢西蒙"><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">谢西蒙</span></st1:personname><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">教授的研究成果，故命名为西蒙学习法。可见，掌握一门陌生的学问远远没有想想的那么高难、深奥。多方吸取、广泛涉猎。极力夯实自己的影响圈、尽量扩大自己的关注圈。财务、经济、税务、管理等等知识，有空花时间看看，韬光养晦、未雨绸缪。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; text-indent: -18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><span><font face="Times New Roman">13、</font></span></span><strong><span style="font-size: 9pt; color: blue; line-height: 150%; font-family: 宋体;">本文的总结与反思：</span></strong><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">A</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">：<u><em><strong>不要去做技术上的高手，除非你的目标如此。</strong></em></u>虽然本文是关于提高软件开发知识的建议，做技术的高手是我一向都不赞同的。你可以提高自己的专业知识，但能胜任工作即止。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">B</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">：<strong><em><u>提高软件知识和技术只是问题的表面，本质是要提高自己认识问题、分析问题、解决问题的思想高度。</u></em></strong>软件专业知识的很多方法和原理，可以很容易地延伸、应用到生活的其它方面。</span><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt 18pt; line-height: 150%;"><span style="font-size: 9pt; line-height: 150%;" lang="EN-US"><font face="Times New Roman">C</font></span><span style="font-size: 9pt; line-height: 150%; font-family: 宋体;">：<strong><em><u>在能胜任工作的基础上，立即去涉猎其它领域的专业知识，丰富自己的知识体系、提高自己的综合素质，</u></em></strong>尤其是那些目标不在技术方面的朋友。</span></p>
</div>
<br />
<br />
<img src ="http://www.blogjava.net/qixiangnj/aggbug/148177.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-09-26 08:30 <a href="http://www.blogjava.net/qixiangnj/archive/2007/09/26/148177.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】你必须要有一样拿得出手</title><link>http://www.blogjava.net/qixiangnj/archive/2007/09/24/147876.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Mon, 24 Sep 2007 11:32:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/09/24/147876.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/147876.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/09/24/147876.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/147876.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/147876.html</trackback:ping><description><![CDATA[原文地址：http://www.dapenti.com/blog/more.asp?name=xilei&amp;id=7799<br />
<br />
<span class="oblog_text">
<p>&nbsp;&nbsp;&nbsp; 我的一位商界朋友，45岁的时候，移居去了美国。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 大凡去美国的人，都想早一点拿到绿卡。他到美国后三个月，就去移民局申请绿卡。一位比他早先到美国的朋友好心地提醒他：&#8220;你要有耐心等。我申请都快一年了，还没有批下来．&#8221;<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 他笑笑说：&#8220;不需要那么久，三个月就可以了。&#8221;朋友用疑惑的目光看着他，以为他在开玩笑。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 三个月后，他去移民局，果然获得批准，填表盖章，很快，邮差给他送去绿卡。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 他的朋友知道后，十分不解：&#8220;你年龄比我大，钱没有我多，申请比我晚，凭什么比我先拿绿卡?&#8221;他微微一笑，说：&#8220;因为钱。&#8221;<br />
</p>
<p>&nbsp;&nbsp;&nbsp; &#8220;你来美国带了多少钱?&#8221;&#8220;10万美元。&#8221;&#8220;可是我带了100万美元，为什么不给我批反而给你批呢?&#8220;<br />
</p>
<p>&nbsp;&nbsp;&nbsp; &#8220;在我到美国的三个月内，我的10万美元，一部分用于消费，一部分用于投资，一直在使用和流动。这在我交给移民局的税单上已经显示出来了。而你的100万美元，一直放在银行里，没有消费变化，所以他们不批准你的申请。&#8221;原来如此。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 美国是一个十分注重效率和功利的国家，你要对美国的社会经济发展有益，美国才能接纳你。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 在美国拿绿卡，只有两种人可以：一种是来美国投资或消费；还有一种人，就是有技术专长。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 这位朋友前不久回国，给我讲了一件他在美国移民局亲睹的事，使我更深刻地了解了美国。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 他在美国移民局申请绿卡时，遇到过一位中年妇女，从她被晒成古铜色的皮肤看，可以断定是一住户外工作者。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 出于好奇，他上前和她搭话，一问才知，她来自中国北方农村，因为女儿在美国，才申请来美。她只读完小学，汉语都表达不好。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 可就是这样一位英语只会说&#8220;你好&#8221;&#8220;再见&#8221;的中国农村妇女，也在申请绿卡．她申报的理由是有&#8220;技术专长&#8221;。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 移民官看了她的申请表，问她：&#8220;你会什么?&#8221;她回答说：&#8220;我会剪纸画．&#8221;说着，她从包里拿出一把剪刀，轻巧地在一张彩色亮纸上飞舞。不到三分钟，就剪出一群栩栩如生的各种动物的图案。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 美国移民官瞪大眼睛，像看变戏法似地看着这些美丽的剪纸画，竖起拇指，连声赞叹。这时，她从包里拿出一张报纸，说：&#8220;这是中国《农民日报》刊登的我的剪纸画。&#8221;</p>
<p>&nbsp;&nbsp;&nbsp; 美国移民官员一边看，一边连连点头，说：&#8220;OK&#8221;。&nbsp;<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 她就这么OK了。旁边和她一起申请而被拒绝的人又羡慕又嫉妒。<br />
</p>
<p>&nbsp;&nbsp;&nbsp; 这就是美国。你可以不会管理。你可以不懂金融，你可以不会电脑，甚至，你可以不会英语。但是，你不能什么都不会!你必须得会一样，你要竭尽全力把它做到极限。这样，你就会永远OK了。</p>
<p>&nbsp;摘自《海外文摘》</p>
</span><br />
<br />
<img src ="http://www.blogjava.net/qixiangnj/aggbug/147876.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-09-24 19:32 <a href="http://www.blogjava.net/qixiangnj/archive/2007/09/24/147876.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】Interesting Resources For Java SE/EE Developers</title><link>http://www.blogjava.net/qixiangnj/archive/2007/09/09/143766.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sun, 09 Sep 2007 05:44:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/09/09/143766.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/143766.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/09/09/143766.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/143766.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/143766.html</trackback:ping><description><![CDATA[原文地址：http://adam-bien.com/roller/page/abien?entry=interesting_resources_for_java_ee<br />
<br />
<p class="title"><a href="http://adam-bien.com/roller/page/abien?entry=interesting_resources_for_java_ee">Interesting Resources For Java SE/EE Developers</a></p>
Some interesting links for (motivated) Java developers, programmers, architects and leaders:<br />
<br />
http://www.infoq.com<br />
http://www.theserverside.com<br />
http://www.javablogs.com<br />
http://www.java.net<br />
http://www.javasoft.com<br />
http://blogs.sun.com especially http://blogs.sun.com/roumen/, http://blogs.sun.com/geertjan/, http://blogs.sun.com/theaquarium/<br />
http://www.ibm.com/developerworks<br />
http://www.onjava.com/<br />
http://www.developer.com/java/<br />
http://www.javaworld.com/<br />
http://www.java.com/<br />
http://www.netbeans.org/kb/index.html<br />
http://www.eclipse.org<br />
http://www.oracle.com/technology/tech/java/index.html<br />
http://www.javaranch.com<br />
http://www.javablackbelt.com<br />
http://www.jugcologne.org<br />
http://www.dzone.com<br />
<br />
Enjoy! ...but don't forget programming :-)<br />
<img src ="http://www.blogjava.net/qixiangnj/aggbug/143766.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-09-09 13:44 <a href="http://www.blogjava.net/qixiangnj/archive/2007/09/09/143766.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】认真是一种可怕的力量</title><link>http://www.blogjava.net/qixiangnj/archive/2007/09/07/143532.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 07 Sep 2007 14:01:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/09/07/143532.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/143532.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/09/07/143532.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/143532.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/143532.html</trackback:ping><description><![CDATA[原文地址：http://www.reportweek.com/2007/08/blog-post_31.html<br />
<br />
认真是一种可怕的力量<br />
<br />
楚流湘<br />
<br />
1944年冬，盟军完成了对德国的铁壁合围，法西斯第三帝国覆亡在即。整个德国笼罩在一片末日的气氛里，经济崩溃，物资奇缺，老百姓的生活陷入严重困境。<br />
<br />
对普通平民来说，食品短缺就已经是人命关天的事，更糟糕的是，由于德国地处欧洲中部，冬季非常寒冷，家里如果没有足够的燃料的话，根本无法捱过漫长的冬天。在这种情况下，各地政府只得允许让老百姓上山砍树。<br />
<br />
你能想像帝国崩溃前夕的德国人是如何砍树的吗？在生命受到威胁时，人们非但没有去哄抢，而是先由政府部门的林业人员在林海雪原里拉网式地搜索，找到老
弱病残的劣质树木，做上记号，再告诫民众：如果砍伐没有做记号的树，将要受到处罚。在有些人看来，这样的规定简直就是个笑话：国家都快要灭亡了，谁来执行
处罚？<br />
<br />
当时的德国，由于希特勒做垂死挣扎，几乎将所有的政府公务人员都抽调到前线去了，看不到警察，更见不到法官，整个国家简直就是
处于无政府状态。但令人不可思议的是，直到第二次世界大战彻底结束，全德国竟然没有发生过一起居民违章砍伐无记号树木的事，每一个德国人都忠实地执行了这
个没有任何强制约束力的规定。 <br />
<br />
这是著名学者季羡林先生在回忆录《留德十年》里讲的一个故事。当时他在德国留学，亲眼目睹了这一幕，所以事隔五十多年，他仍对此事感叹不已，说，德国人"具备了无政府的条件却没有无政府的现象"。<br />
<br />
是一种什么样的力量使得德国人在如此极端糟糕的情况下，仍能表现出超出一般人想像的自律？答案只有两个字：认真。因为认真是一种习惯，它深入到一个人的
骨髓中，融化到一个人的血液里。因了这两个字，德意志民族在经历了上个世纪初中叶两次毁灭性的世界大战之后，又奇迹般地迅速崛起。 <br />
<br />
再讲一个关于德国人认真的小故事。<br />
<br />
熟悉柴油机制造业的人都知道有这样一个说法：中国制造的柴油机，噪音在数公里外都听得见，柴油机周围数十平方米都是油迹；而德国人生产的柴油机则可以放在办公室的地毯上工作，根本不会影响隔壁房间的人办公。<br />
<br />
于是，1984年，武汉柴油机厂聘请德国退休企业家格里希任厂长。<br />
<br />
格里希上任后开的第一个会议，市有关部门领导也列席参加了。没有任何客套，格里希便单刀直入，直奔主题："如果说质量是产品的生命，那么，清洁度就是气
缸的质量及寿命的关键。"说着，他当着有关方面领导的面，在摆放在会议桌上的气缸里抓出一大把铁砂，脸色铁青地说："这个气缸是我在开会前到生产车间随机
抽检的样品。请大家看看，我都从它里面抓出来了些什么？在我们德国，气缸杂质不能高于50毫克，而我所了解的数据是，贵厂生产的气缸平均杂质竟然在五千毫
克左右。试想，能够随手抓得出一把铁砂的气缸，怎么可能杂质不超标？我认为这决不是工艺技术方面的问题，而是生产者和管理者的责任心问题，是工作极不认真
的结果。"一番话，把坐在会议室里的有关管理人员说得坐立不安，尴尬之极。 <br />
<br />
两年后，格里希因种种原因卸职时，武汉柴油机厂生产的
气缸杂质已经下降到平均一百毫克左右。回国后，格里希有几次来中国，每次都要到武汉柴油机厂探望。在厂里，他有时拿着磁头检查捧发现气缸有未清除干净的铁
粉时，忘了自己已经不是厂长，仍然生气地向周围陪同的人大声咆哮："你们怎么能这么不认真！"<br />
<br />
如果说强大的德意志是一个可怕的民族，
那么，认真也是一种可怕的力量，它大能使一个国家强盛，小能使一个人无往而不利。我们实在该好好学习德国人认真得近乎刻板的精神，将认真贯彻到自己点点滴
滴的行为中。一旦认真二字也深入到自己的骨髓，融化进自己的血液，你也会焕发出一种令所有的人，包括自己，都感到害怕的力量。 <br />
<br />
作者MSN：iseekwhatiseek(at)hotmail.com<br />
<br />
作者简介：湘籍。1991年毕业于武汉大学中文系。曾在《独生子女》、《良友》杂志供职。现为自由撰稿人。<br />
<br />
<img src ="http://www.blogjava.net/qixiangnj/aggbug/143532.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-09-07 22:01 <a href="http://www.blogjava.net/qixiangnj/archive/2007/09/07/143532.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】如何制作漂亮的Excel表格</title><link>http://www.blogjava.net/qixiangnj/archive/2007/08/29/141055.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Wed, 29 Aug 2007 10:58:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/08/29/141055.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/141055.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/08/29/141055.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/141055.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/141055.html</trackback:ping><description><![CDATA[<p class="copyright"><strong>版权声明</strong>：可以任意转载，但转载时必须标明原作者charlee、原始链接<a  href="http://tech.idv2.com/2007/08/29/make-beautiful-excel-sheet/">http://tech.idv2.com/2007/08/29/make-beautiful-excel-sheet/</a>以及本声明。</p>
<p><!-- begin Pukiwiki generated code--></p>
<p>网上有很多关于如何制作漂亮的幻灯片的教程，而对Excel的美化则寥寥无几。
实际上Excel不仅仅是一个电子表格软件，它的单元格容易控制样式，操作方便，
因此使用Excel制作仅供阅读的电子文档也十分合适。
这就要求文档制作者必须懂得一些基本技巧，以制作出赏心悦目的电子文档来。</p>
<p>下面是我制作Excel格式电子文档时的一些经验，分享给大家。
希望大家都能够制作出漂亮的文档。</p>
<!-- end Pukiwiki generated code--><!-- begin Pukiwiki generated code-->
<p>1. <strong>选择合适的显示比例</strong>。</p>
<p>中文字体通常使用宋体，而宋体在默认的100%状态下并不好看（如下图）。
相比而言，85%的比例就舒服很多。75%的比例略嫌小，不过当你有大量的数据时，或者制作文字较多的文档时，
75%的显示比例就比较合适。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-01.png" alt="make-beautiful-excel-sheet-01.png" title="make-beautiful-excel-sheet-01.png" height="316" width="420"></div>
<p>85%的比例很容易调节，只需在默认的100%状态下<strong>按住Ctrl键并向上滚动滚轮一次</strong>即可。
75%需要手动输入比例。比75%再小的显示比例会使文字变形，不宜使用。</p>
<p>另外Excel工作表保存后显示比例也会一起被保存，可以保证阅读者与你看到同样的效果。</p>
<p>2. <strong>背景网格线的取舍</strong>。</p>
<p>Excel默认情况下会显示灰色的网格线，而这个网格线会对显示效果产生很大的影响。
如下图，同一张表格在有无网格线的情况下给人的感觉就完全不同——
有网格线时给人一种&#8220;这是一张以数据为主的表格&#8221;的心理暗示，
而去掉网格线则会使重点落到工作表的内容上，削弱表格的作用。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-02.png" alt="make-beautiful-excel-sheet-02.png" title="make-beautiful-excel-sheet-02.png" height="200" width="400"></div>
<p>因此，以表格为主的工作表可以保留网格线，而以文字说明为主的工作表则最好去掉网格线。</p>
<p>去掉网格线可以在<strong>工具-&gt;选项</strong>中<strong>视图</strong>选项卡中去掉<strong>网格线</strong>，
但这种方法依赖于阅读者的设置，所以最好选择另外一条路：<strong>全选所有单元格(Ctrl-A)并设置白色背景</strong>。</p>
<p>3. <strong>设置适当的线宽</strong>。</p>
<p>表格线宽度也会极大地影响阅读者的心理。要<strong>搭配使用粗细线</strong>。
最简便易行的方法就是<strong>细内线+粗边框</strong>（只需使用格式工具栏中的边框按钮两次即可做到）。
全用粗线仿佛你在大喊大叫一样，感觉很粗鲁；而完全用细线又无法体现出表格的概念；
而不用边线会让人觉得你的数据未经过精雕细琢。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-03.png" alt="make-beautiful-excel-sheet-03.png" title="make-beautiful-excel-sheet-03.png" height="430" width="400"></div>
<p>另外，大片的小单元格聚集时表格线会干扰阅读者的视线，这时可尝试将小单元格的边线换成虚线。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-04.png" alt="make-beautiful-excel-sheet-04.png" title="make-beautiful-excel-sheet-04.png" height="220" width="400"></div>
<p>4. <strong>适当使用粗体，但别太过分</strong>。</p>
<p>毋庸置疑，表头当然要用粗体。对于表格内的数据，原则来说不应当使用粗体，以免喧宾夺主。
但也有特例，当数据稀疏时，可以将其设置为黑体，起到强调的作用。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-05.png" alt="make-beautiful-excel-sheet-05.png" title="make-beautiful-excel-sheet-05.png" height="240" width="400"></div>
<p>粗体的使用也不宜泛滥，当一屏文字大部分都是粗体时，你就应当考虑考虑阅读者的感受了。</p>
<p>5. <strong>给标题单元格加上背景色</strong>。</p>
<p>毋庸置疑，单元格背景色按钮的最下一排颜色天生就是用作单元格背景的（下图中的红框部分）。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-06.png" alt="make-beautiful-excel-sheet-06.png" title="make-beautiful-excel-sheet-06.png" height="177" width="200"></div>
<p>我通常的配色习惯是：横向表头-淡蓝色，纵向表头-浅绿色，普通单元格-白色，
特殊单元格(如自动计算的单元格)-浅黄色，如下图所示。
这样就能将各个单元格的功能区分开。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-07.png" alt="make-beautiful-excel-sheet-07.png" title="make-beautiful-excel-sheet-07.png" height="90" width="370"></div>
<p>6. <strong>尽量少用单元格结合</strong>。</p>
<p>单元格结合的两个缺点：第一，在结合过的单元格前后插入新行时，新行的单元格不会自动结合，
导致每一行的结合方式不一致；第二，有些情况下结合过的单元格中无法粘贴数据，带来不必要的麻烦。
因此，当你制作收集数据的表格时，尽量不要使用单元格结合功能。</p>
<p>那么想要一个宽点的格子怎么办？实际应用中我发现，好多人使用单元格结合，其实只是想要一个大一点的格子而已。
其实拖动单元格标题可以改变单元格大小的，这个功能好多人都不知道么？</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-08.png" alt="make-beautiful-excel-sheet-08.png" title="make-beautiful-excel-sheet-08.png" height="106" width="278"></div>
<p>7. <strong>标注的方法</strong>。</p>
<p>给单元格做标注有两种方法。一种是右键单击单元格<strong>插入批注</strong>，编辑完成后再次右击<strong>显示批注</strong>即可。
优点是使用方便，缺点是无法自定义样式。另一种方法就是自己画图形，我喜欢使用圆角矩形，
设置背景色为浅色，并用同种深颜色作为边框色。</p>
<div class="img_margin" style="text-align: left;"><img  src="http://tech.idv2.com/wp-content/uploads/2007/08/make-beautiful-excel-sheet-09.png" alt="make-beautiful-excel-sheet-09.png" title="make-beautiful-excel-sheet-09.png" height="268" width="400"></div><img src ="http://www.blogjava.net/qixiangnj/aggbug/141055.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-08-29 18:58 <a href="http://www.blogjava.net/qixiangnj/archive/2007/08/29/141055.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】专访孟岩：如何理解SOA与Enterprise Web2.0</title><link>http://www.blogjava.net/qixiangnj/archive/2007/08/28/140373.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Tue, 28 Aug 2007 03:45:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/08/28/140373.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/140373.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/08/28/140373.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/140373.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/140373.html</trackback:ping><description><![CDATA[原文地址：http://news.csdn.net/n/20070828/108019.html<br><br>
<p><strong>记者：请问你是怎么理解<nobr><strong class="kgb" onclick="'javascript:window.open("http://s4.17luntan.com/ClickPortal/WebClick.aspx?id=-100407&k=SOA&siteid=0098295a-e262-40f7-ae50-7a6fbbdb678b&url=http%3A//news.csdn.net/n/20070828/108019.html&gourl=http%3A//ibm.csdn.net/ISN_J.aspx%3Faction%3DJMP%26pointid%3D1898&parm=A128CF0B4FD52327F3EEA2C961E2F30BD777CD35D51EE43C&alliedsiteid=0");'" onmouseout="isShowAds = false;isshowads2 =" false"" onmouseover="'isShowAds" = true;isshowads2 =" true;ads.move(this,"","6%u67089%u300112%u300116%u65e5%u5728%u5317%u4eac%u3001%u5927%u8fde%u3001%u6df1%u5733%u4e09%u5730%u6d3b%u52a8%u73b0%u5728%u5f00%u59cb%u62a5%u540d%uff01","-100407","soa","%u514d%u8d39%u53c2%u52a0ibm%20soa%u6d3b%u52a8","http%3a//ibm.csdn.net/isn_j.aspx%3faction%3djmp%26pointid%3d1898"," event)' style="color: #0000ff; font-weight: normal; text-decoration: underline;">SOA</strong></nobr>的？</strong></p>
<p><br>
孟岩：我这个理解来说下来就是，有这么大概几个过程，也分成这么几个阶段。最早就是03年左 右，我刚到CSDN的时候，那个时候呢，SOA有一段的这个宣传的这种高潮，各大公司，包括微软、IBM、Oracle、BEA啊，都在打SOA，所以当 时我们作为<nobr><strong class="kgb" onclick="'javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=BrXLaK5LTRpHcEILQuAP1zI30AZvrxySP1OXJAsCNtwGQvwUQBBgEIJmu8QkoFDgAUMD_vtD7_____wFgnaHVgbQFmAHk2sQJmAGpn4wqqgEKMjAwMDAxMjA0NLIBDW5ld3MuY3Nkbi5uZXTIAQHaAStodHRwOi8vbmV3cy5jc2RuLm5ldC9uLzIwMDcwODI4LzEwODAxOS5odG1sqQIAbE2PCcCBPsgC29vZAqgDAegD_QLoA5YC&num=4&adurl=http://www.energyfirst-sh.com/z2.htm&client=ca-pub-5384462698219144");GgKwClickStat("技术","www.energyfirst-sh.com","afc","2000012044");'" onmouseout="'isShowGg" = false;intextads_gglayer="_u6280_u672F"' onmouseover="'isShowAds" = false;isshowads2 =" false;isshowgg" = true;intextads_gglayer="_u6280_u672F";ads.ShowGgAds(this,"_u6280_u672F",event)' style="border: 0px none ; margin: 0px; padding: 0px; color: #0000ff; font-weight: normal; text-decoration: underline;">技术</strong></nobr>媒体，不得不了解一下SOA是什么东西，在那个时候，我们是很模糊的。</p>
<p>所以我的第一个阶段呢，我就认为在技术上，我认为SOA是一个用 Web Services来做<nobr><strong class="kgb" onclick="'javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=BcojxK5LTRpHcEILQuAP1zI30AZTwnC2g07yOBMCNtwGQvwUQAhgCIJmu8QkoFDgAUO2jzJQHYJ2h1YG0BZgB5NrECZgBqZ-MKqAB_ILP_AOqAQoyMDAwMDEyMDQ0sgENbmV3cy5jc2RuLm5ldMgBAdoBK2h0dHA6Ly9uZXdzLmNzZG4ubmV0L24vMjAwNzA4MjgvMTA4MDE5Lmh0bWyAAgGpAgBsTY8JwIE-yALs7qABqAMB6AP9AugDlgI&num=2&adurl=http://www.bestsapchina.com/offers.asp%233?srcid=googlecontentTXT3_AG59_Offer&client=ca-pub-5384462698219144");GgKwClickStat("企业","www.SAP.com.cn","afc","2000012044");'" onmouseout="'isShowGg" = false;intextads_gglayer="_u4F01_u4E1A"' onmouseover="'isShowAds" = false;isshowads2 =" false;isshowgg" = true;intextads_gglayer="_u4F01_u4E1A";ads.ShowGgAds(this,"_u4F01_u4E1A",event)' style="border: 0px none ; margin: 0px; padding: 0px; color: #0000ff; font-weight: normal; text-decoration: underline;">企业</strong></nobr>应
用的，这么一个想法，所以本质上我只是觉得这东西没什么大不了得，因为在03年的时候，Web Services
这个概念已经火了两三年了，所以我觉得，SOA没有什么了不起的。
之后不久呢，通过跟企业接触，企业告诉我们呢，也是一个误解，现在来看也就是一个误解，就是SOA是一个新一代的企业应用集成这样的一种<nobr><strong class="kgb" onclick="'javascript:window.open("http://s4.17luntan.com/ClickPortal/WebClick.aspx?id=-100408&k=%u67B6%u6784&siteid=0098295a-e262-40f7-ae50-7a6fbbdb678b&url=http%3A//news.csdn.net/n/20070828/108019.html&gourl=http%3A//ibm.csdn.net/ISN_J.aspx%3Faction%3DJMP%26pointid%3D1898&parm=A128CF0B4FD52327F3EEA2C961E2F30BD777CD35D51EE43C&alliedsiteid=0");'" onmouseout="isShowAds = false;isshowads2 =" false"" onmouseover="'isShowAds" = true;isshowads2 =" true;ads.move(this,"","6%u67089%0a%0e%u65e5%u5728%u5317%u4eac%u3001%u5927%u8fde%u3001%u6df1%u5733%u4e09%u5730%u6d3b%u52a8%u73b0%u5728%u5f00%u59cb%u62a5%u540d%uff01","-100408","架构","%u514d%u8d39%u53c2%u52a0ibm%20soa%u6d3b%u52a8","http%3a//ibm.csdn.net/isn_j.aspx%3faction%3djmp%26pointid%3d1898"," event)' style="color: #0000ff; font-weight: normal; text-decoration: underline;">架构</strong></nobr>，也就是 EAI的下一代，当时我们就这么看的一个问题。</p>
<p>有人提出来说，中国是不是不太适合SOA，因为在中国EAI在企业没有特别多成熟的运用系统，主要依靠新
建，所以呢，当时也比较困惑这个问题。后来SOA呢，进入了一段相对不是那么热闹的一个阶段，可以说进入了一个具体实施的一个时期，各家的认识和经验都在
积累，我们的思想也处在一个相对来说比较稳定的一个状态。</p>
<p>那么再过一段时间，当这个一些实施成果上来以后，包括我们去采访一些SOA实施，有了实践经验以
后的这些人，我们作为媒体来讲，得到一个新的认识，就是因为SOA是一种新的企业的IT基础架构的，这么一种风格，一种架构，其中流行的一种东西就是一个
ESB，即总线，然后很多Services通过根据总线相连接，简化之间的交互，达到松耦合等等。</p>
<p>所以当时，我们那个时候，大概一年以前的时候，我对这件
事情的认识呢，进化到它是一个风格，它是一种架构，它架构也可以具体实例化成一种技术，一个产品，这是我当时的一个认识。
那么到现在，到今天，又经过一段时间的演化，又经过了跟一些企业的交流，跟一些这个行里的大师，或者行业里的领导人物的交流，我最后，我觉得我现在的认
识，相对可能比较接近1996年Gartner提出来SOA的概念，这SOA是指什么呢，SOA是一种新的建构企业应用和企业IT基础架构，主要是企业
IT基础架构的思想、方法、风格、工具的一个总称，所以SOA现在的这个思想，比较泛，就是说比较宽广，就是说含义比较宽广。</p>
<p>甚至我发明了一个顺口溜，说
&#8220;SOA是个筐，什么都可以往里装&#8221;，只要你这些新方法，是符合企业IT基指架构发展的下一个潮流，一个阶段，那么现在很多人都把它会往SOA里去装，但
是呢，SOA还是有它确切的含义和它明确的价值，所以，我刚才说的这个含义呢，其实是我现在的一个认识。 </p>
<p><strong>记者：我也知道你在前段时间去了美国，去参加一个IBM组织的SOA大会，然后也接触了很多国外的SOA专家，我想问一下，国外的那个技术人员对SOA的理解和国内的人对SOA的理解，有什么区别吗？&nbsp;</strong> </p>
<p>孟岩：恩，说实话，在这一点上，我不能说我知道的很清楚。我是跟国外的技术人员就这方面交流的并不多，但是呢，从国外的一些文章，网站上的一些文
章，还从有限的一些交流来看的话，SOA这个概念即使在美国，这仍然是一个引起很多争议，引起很多的误会的这个概念。尤其是在开发者，在很技术的人员当
中，SOA是一个招人讨厌的，或者说是不被人理解的，或者是别人觉得，你就是个叫Hip，这么一个东西。</p>
<p>也有很多不同的认识跟理解，可是我觉得，如果要是
正本溯源的话，还是应该去向Gartner这个提出SOA的这个组织，像IBM，像BEA，Oracle，包括微软，他们技术的决策者，技术方向的决策
者，到那里去SOA的真经，如果我们到那里去问的话，我觉得，他们那里的SOA的思路跟我们国内目前一般开发人员，一般技术管理者的认识水平，那还是不太
一样的，就是还是有，他们还是比我们要领先很多的。 </p>
<p><strong>记者：但是另外一种观点就是说，SOA是从国外开始兴起的，主要是去解决一些，去整合遗留的系统，但是我们国内的IT历史并不是特别长，你认为SOA对我们国内的IT界有什么作用？&nbsp;</strong> </p>
<p>孟岩：我需要指出的是，你刚才的那个Statement就不对，首先它是从国外来的，这是对的，我们所有的东西差不多都是从国外来的。但是说它只是
为了整合遗留系统，这句话就有问题。因为SOA要做的第一件事情不是整合，第一件事情，当然还是重新梳理你的业务流程，把它SOA把它Service化，
但是呢，在着手进行改造，第一件事情，打散你的业务，先破再立，不是简单的把过去的业务进行整合。</p>
<p>我们如果运气好，你过去的业务系统呢，正好能被完整的包 装成一个<nobr><strong class="kgb" onclick="'javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=B3aQpK5LTRpHcEILQuAP1zI30Ab6FkB6Ws8DjAsCNtwHw1xwQARgBIJmu8QkoFDgAUJvd8EtgnaHVgbQFmAHk2sQJmAGpn4wqqgEKMjAwMDAxMjA0NLIBDW5ld3MuY3Nkbi5uZXTIAQHaAStodHRwOi8vbmV3cy5jc2RuLm5ldC9uLzIwMDcwODI4LzEwODAxOS5odG1sqQIAbE2PCcCBPsgC3rf9AagDAegD_QLoA5YC&num=1&adurl=http://www.upw.cn/ywly.htm&client=ca-pub-5384462698219144");GgKwClickStat("服务","www.upw.cn","afc","2000012044");'" onmouseout="'isShowGg" = false;intextads_gglayer="_u670D_u52A1"' onmouseover="'isShowAds" = false;isshowads2 =" false;isshowgg" = true;intextads_gglayer="_u670D_u52A1";ads.ShowGgAds(this,"_u670D_u52A1",event)' style="border: 0px none ; margin: 0px; padding: 0px; color: #0000ff; font-weight: normal; text-decoration: underline;">服务</strong></nobr>，那当然好了，但是如果你过去的业务系统，不好被完整的包装成一个服务，那就需要先把它打开，给张三的给张三，给李四的给李四，把它包装配成 一个服务，这个是要纠正的。</p>
<p>所以就是说，即使从国外的企业来讲，它也不纯粹是一个整合的概念，它确实是一个以服务为导向，重新规划系统的这么一个过程，而
对中国呢，我讲过了刚才的观点，如果说国外呢，是改建为主，就是我的房子已经盖好了，我要改建，我一定要把它该拆的拆，该破的破，该打通的打通，对吧，但
是它毕竟都属于改建；中国的情况呢，则是新建、改建、扩建并行，我们大量的系统，大量的企业，到现在还在怀疑IT的价值，它没有进行第一代的IT化的建
设，还有一些企业已经进行了第一代的IT建设，还有很多的企业正在进行第二代的，第三代的IT建设。</p>
<p>
从2003年开始，中国IT建设70%的投资是二次建设，所以你可以想像一下，做IT的公司才多少？大量的公司，大量的企业还没有做IT，还没有认真的把
IT放到自己的这个管理中间来，包括还有一些非企业性质的，政府、学校和一些社会组织，都还没有把IT纳入自己的业务管理的过程当中，所以潜力是很大的。
对于它们来说，一个主要的考虑就是，说白了，领导说话算不算话，这个很重要，领导说话要算话你就必须要让IT系统足够灵活。</p>
<p>我们中国的企业是有这样的特
点，和我们国家国情比较接近，我们喜欢突变，我们可能会在某一个水平线上，某一个状态上维持一个比较长的时间，然后突然一下发生巨大变化，这个时候就是要
求我们IT系统非常灵活，其实我个人认为，我们中国的企业在国际市场上获得一些成果一个很重要的原因，我们以外国人想象不到的速度在改变自己。</p>
<p>所以呢，这
是我刚才上一个问题讲到的，中国的企业绝不会允许自己损失机动性，损失敏锐性，因为这是我们赖以生存的一个根本，所以如果你上一个IT系统，让我把这个敏
锐性给损失掉了，我就不会上，也不会要的。
反映在很多现实当中，开发人员给我们无耐地摇头解释说，中国没法做IT，那领导人拍脑袋就变，你还非得听他的不可。这就说明一个问题，领导人拍脑袋就变，
这可不一定是坏事，这可能是这个企业竞争力的源泉之一。</p>
<p>所以我们在中国做企业的话，要支持这种东西，要足够灵活，要让IT系统能够跟随决策者的思想变化而
变化。IT的意义本身在于使你的管理规范化，流程化，效率提高，严格，这样一个避免人为因素，降低对人力素质的要求，这样的一个特点。所以我们，还是刚才
说的，我们中国的IT，目前在SOA要解决的问题就是不损失灵活性的情况下，提高管理水平、有效性、管理的效果。 </p>
<p><strong>记者：那么在实施SOA的过程中你认为应该注意哪些问题，有哪些难点存在？&nbsp;</strong> </p>
<p>孟岩：在实施SOA的过程当中，第一个难点，我觉得是要改变一些思维，改变一些传统的思维方式。传统的思维方式是把这种，从业务到IT系统，这种运
作过程看成是一种魔术的，要靠培养巨牛无比的人，这个既要具有极强的面向对象这些基础的软件和IT基础的这种知识和技能，通过多年的磨炼，能够规避各种各
样的风险；然后还要懂这个业务，要善于沟通，要用有效的方法来帮它及时地找到和发现自己的错误，这是非常难做到的事情。</p>
<p>那么首先要改变观念就是说，我们现 在一个层面是业务，一个层面是技术，所以我们在中间加一个层面，叫Service，这个Service是一个贴近技术，贴近业务，又可以被<nobr><strong class="kgb" onclick="'javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=BrXLaK5LTRpHcEILQuAP1zI30AZvrxySP1OXJAsCNtwGQvwUQBBgEIJmu8QkoFDgAUMD_vtD7_____wFgnaHVgbQFmAHk2sQJmAGpn4wqqgEKMjAwMDAxMjA0NLIBDW5ld3MuY3Nkbi5uZXTIAQHaAStodHRwOi8vbmV3cy5jc2RuLm5ldC9uLzIwMDcwODI4LzEwODAxOS5odG1sqQIAbE2PCcCBPsgC29vZAqgDAegD_QLoA5YC&num=4&adurl=http://www.energyfirst-sh.com/z2.htm&client=ca-pub-5384462698219144");GgKwClickStat("技术支持","www.energyfirst-sh.com","afc","2000012044");'" onmouseout="'isShowGg" = false;intextads_gglayer="_u6280_u672F_u652F_u6301"' onmouseover="'isShowAds" = false;isshowads2 =" false;isshowgg" = true;intextads_gglayer="_u6280_u672F_u652F_u6301";ads.ShowGgAds(this,"_u6280_u672F_u652F_u6301",event)' style="border: 0px none ; margin: 0px; padding: 0px; color: #0000ff; font-weight: normal; text-decoration: underline;">技术支持</strong></nobr>的
一个
概念，能够以它为标准，又能够以它为单位，对于业务来进行模块化，实现Service之后，你会发现，当你的业务要发生变化的时候，你所要做的仅仅是微调
Service内部的接口、契约、服务质量和重新调整各个Service之间的关系，几乎就可以满足你对业务调整的需要。</p>
<p>
这就是说我们把业务给模块化，找到合理的一个单元，可以用它来把业务这个事情模块化，而这个单元又特别巧的，也不是特别巧的，刻意地可以被技术，用我们现
在传统的这一代组件啊，对象啊这些东西来支持和实现，这不是很好的事情吗？我们说一句谚语叫&#8220;当你在软件里面遇到任何问题的时候，请增加一个中间层&#8221;，这
个就是这个思想的一个应用。增加了一个Service这样的一个中间层，一个间接层，来协调这两个差的太远的之间的关系，来做到这件事情。</p>
<p>所以首先思想上
要改变，要知道SOA为什么？知道了这一点，你才能够有可能去正确的去实施SOA，SOA在实施的时候第一步，应该是梳理业务流程；第二步，应该是用
Service的观点重新描述你的业务流程，这个过程也是挺关键的，我认为，从这个过程往下，就比较容易一些，包括做一些具体实现Service的一些方
法、操作和我们常用的一些方法。当然可能还有一些新的标准，SCA啊，SDO啊，包括ESB啊，包括一些提供的工具。</p>
<p>
但总的来说，到了我们开发者日常工作这一块，他的改变有，但是他的工作形态的变化并不是很大，可是在这个业务梳理和业务架构这个过程当中，是有一个关键变
化，这个是我觉得这个，你刚才说到难点在哪。那么这个难点归根到底就在于，我认为SOA存在的关键在于，它是否能够培养出足够多的高素质的，高质量的这种
SOA架构师。</p>
<p>SOA的架构师跟我们传统意义上的架构师不太一样，传统意义上的架构师就是变魔术的那帮人，也不知道他怎么想的就变了。现在呢，要把这个过
程分成两步，第一步把它分解成为服务，把服务之间的关系理顺；第二步，把每个服务的接口、契约，全部都封装好，服务之间的关系，包括它的
Governance之间的关系，这个叫做业务架构，这个人我认为是在SOA时代最吃香而且至关重要的一个脚色。<br>
&nbsp;<br>
<strong>记者：你按照你的意思来说，就是我们现在的开发人员，或者说是一些架构师，做转变的话，要重视业务的发展，是这样吗？</strong><br>
&nbsp; <br>
孟
岩：对，我觉得这句话其实说的很多。就是没有SOA时候，大家也都在做，你作为一个开发者也好，作为一个架构师也好，你一定要关注业务。但是呢，过去这种
说法，是种泛泛的，我们不知道怎么关注，你总不能让我去成为一个石油专家，一个银行家，或者一个什么，才能够就是说开始这样的一个系统，那这样的人有多少
呢？成为那样的人，还做IT系统吗？有这样的问题存在。</p>
<p>现在呢，有一个具体的指导方针，就是说你该怎么去了解业务了，你要把业务分解成为一个一个的
Service，理顺这些Service的关系，调整Service的接口和契约，这是对这个的理解。对开发者的理解，对开发者的影响来讲，有些实践就要
变了。比如说，我们现在用到的一些，它已经熟习的一些思想、方法，一些东西可能有一些变化。</p>
<p>
因为过去呢，你直接面向业务，开发者往往要学会一种能力，看了一段自然语言文本，就把一个什么对象图啊，什么模块图啊，类图啊等都画出来，这个是过去要求
的一个。现在呢，你要面对的问题，可能就是说，你要面临的是怎么样最好的，向外界提供高质量的符合企业的服务，这是开发者的一个变化。但是更大的影响呢，
对于开发者来讲的话，是他需要重新安排自己的职业生涯和规划，过去他觉得我学习这些东西也就可以成为架构师，设计师架构师怎么怎么样，或者我就专心的做我
的.NET，做我的Java的内核，高效率的东西，也可以成为那个领域的专家，但是你要知道这是两个不同的路线。现在呢，你想做企业里面的架构师，有来之
后，你就可能，对自己职业的规划，一个目标，要有一些调整和变化。 </p>
<p><strong>记者：我在看很多关于SOA的文章都提到各式各样的标准，我想问一下，为什么SOA里面会有那么多的标准？&nbsp;</strong> </p>
<p>孟岩：其实坦率的说，现在SOA一个很大的问题就是标准化不够，标准没有得到很好的制定和实施，甚至可以说，我可以这么讲，SOA，现在是有一个
OSOA组织了，但是这个组织不是一个很强有力的组织，国际化的这个标准组织一般都是比较松散的，这个OSOA也是松散的。然后呢，各大厂商都有自己的想
法和主意，结果就是说，SOA标准化的东西目前做的不是特别好，但是尽管有这么多的问题，还是有SCA、SDO这样的标准出现，这个对于SOA还是很好的
事情，还有一些其他的标准，比如说WS-*，有三十多个标准，那些东西不属于SOA，尽管可以用它很好的来实现SOA，但是你不要把它作为SOA标准，所
以在我看来呢，SOA的问题不是说标准化太多，而是标准不足的问题。</p>
<p>我们马上面临很大的一个问题就是说，微软它做了一套体系，跟SOA的SCA、SDO标
准是不一致的，这里的问题就是说，我们当然还要看，微软的WPF、WCF跟这个是相关的，以及WF这个标准，能够互相兼容，互相操作。如果可以的话，当然
很好，如果不可以的话，怎么办？我们得到了一些微软方面的承诺，但是毕竟这个还是不官方承诺，我们想看看这个事情怎么发展。所以标准有，如果谈到SOA的
话，标准真的不是太多了，而是还不够。<br>
&nbsp;<br>
<strong>记者：另外然后业界里面流行的概念，一个是SOA，另外一个是Web 2.0，两者之间也是有很大的关系，我想请你评价一下这两者之间的关系？&nbsp;</strong> </p>
<p>孟岩：这次我去美国的时候呢，我去参加的IBM Impact
2007这个大会，这个大会的主办者或者说最主要的一个人，是IBM软件集团的一个副总载，叫Sandy
Carter，是一位女士，IBM的一位传奇的一位女性。她写了一本书，叫做《业务的新语言》，子标题是SOA&amp;Web2.0，所以从这句话来
看，就知道这两个是有关系的。什么关系？我可以这么说的，这两个东西协同起来，可以共同为我们搭配刚才所说的敏捷业务的目标，为什么这么说，因为传统上，
这个企业呀，你像我们业务系统总得用数据，业务逻辑，在它上面展现，还有一些整合的过程，有人提出Portal，企业级Portal这样一个概念，这么一
些过程的话。</p>
<p>实际上，当整个技术转移到外围以后，由于Web技术，第一代Web技术的制约，也使得它们在企业运行当中的，企业当中的一些运用受到了一些限
制，现在的问题就是说，Web 2.0这东西怎么理解呀，大家还在说。我觉得固然有很多，从网络社会学意义角度去出发，去阐述Web
2.0，著名的博客Keso，他提了很多，比如说用户与这个编辑处于同等地位呀，强调自由啊，强调话语权的平等呀，开放性呀，强调用户权益至上，把这些东
西列为Web 2.0的一个标杆。 <br>
</p>
<p>但是从我们做IT的技术来讲，Web
2.0他有他固定的技术含义，他是指一系列的第二代的Web服务的集合，这里面包括像RSS、Atom，然后有这个Syndication，其实就是刚才
说的这两个协议的抽象概念。然后有像这个Blog的这种服务，社会网络，技术上的有Ajax，数据的Mashup
，有数据的微格式，这样的一些东西，这个东西综合起来，能够给用户更好的体验，能够给实施者提供更轻便，更容易的一种集成，这种东西叫Web 2.0。</p>
<p>那么它为什么可以用来和SOA一起来为企业来服务来使用呢？你记住，我们刚才说为了业务敏捷性，业务敏捷性就意味着，我们不仅仅数据和业务的关系
发生变化，它给用户的展现，它的集成方式，它的集成范围，都会迅速发生改变，而在这一点上，传统的企业使用的C/S模型，或者第一代Web技术，它那种局
限性，都使你没有办法很快地，使你的最后传到用户那里的最后的一公里也跟着一块变。 只有我们采用Web 2.0这些功能，Web
2.0提供的这些服务和协议，它这种风格，REST和Micro-format也就是微格式，这些东西融合起来，你才能够从下到上为用户，为企业提供一套
完整的敏捷的技术栈，才能够说，人家的Idea一变，业务一变，底下的数据变，上面的模型，上面的业务叫流程变、服务变，流程变，最后到上头来，到前边
Portal也变了，这个界面也变了，数据表单也变了，只有这个才能做到这一点。</p>
<p>所以Sandy
Carter在这本书里面画了一张图，我刚刚提到她也是这个原因，这张图是一个金字塔，然后她用一张薄片，把金字塔拦腰一切，底下SOA，上边Web
2.0，很明显地说明这个问题，就是说在底下要用企业级的SOA技术解决问题，将数据用标准方式如XML等暴露出来，上边用Web
2.0的技术去整合Mashup，去呈现，这种东西就会导致，就会使得我们刚才说的业务敏捷性的目标得以实现，这就是这两个技术应用之间的关系。</p>
<p>
它们之间有什么关系？它们之间是盟友的关系，我们共同协作可以达成敏捷性的目标，否则的话，如果你几家是很快变化的数据和流程，上面我还是传统老旧的那一
套，比如说Web
1.0的，或者是，甚至是更传统的VB或者是更传统的.NET富客户端所写的程序，当然对于企业最后还是得不到迅速变化，随之实施的这么一个结果。那我可
以给你举一个小例子，这个Web 2.0一旦跟企业应用相结合，形成一个Enterprise Web 2.0这么一个新概念。</p>
<p> 那么这个，我给你举一个小例子，已经实施的例子：就是有一家远洋航运公司，他们呢，做了这么样一个应用，就是他们通过GPS系统，将自己的每一艘航船在远 洋，在地球上的位置，都能够实时的确定下来，他们把这个数据得到并放在一个<nobr><strong class="kgb" onclick="'javascript:window.open("http://pagead2.googlesyndication.com/pagead/iclk?sa=l&ai=B3aQpK5LTRpHcEILQuAP1zI30Ab6FkB6Ws8DjAsCNtwHw1xwQARgBIJmu8QkoFDgAUJvd8EtgnaHVgbQFmAHk2sQJmAGpn4wqqgEKMjAwMDAxMjA0NLIBDW5ld3MuY3Nkbi5uZXTIAQHaAStodHRwOi8vbmV3cy5jc2RuLm5ldC9uLzIwMDcwODI4LzEwODAxOS5odG1sqQIAbE2PCcCBPsgC3rf9AagDAegD_QLoA5YC&num=1&adurl=http://www.upw.cn/ywly.htm&client=ca-pub-5384462698219144");GgKwClickStat("服务器系统","www.upw.cn","afc","2000012044");'" onmouseout="'isShowGg" = false;intextads_gglayer="_u670D_u52A1_u5668_u7CFB_u7EDF"' onmouseover="'isShowAds" = false;isshowads2 =" false;isshowgg" = true;intextads_gglayer="_u670D_u52A1_u5668_u7CFB_u7EDF";ads.ShowGgAds(this,"_u670D_u52A1_u5668_u7CFB_u7EDF",event)' style="border: 0px none ; margin: 0px; padding: 0px; color: #0000ff; font-weight: normal; text-decoration: underline;">服务器系统</strong></nobr>里
面；他们另外一个系统保存着每一艘远洋航船此次航运他的目的地、起
点、他的运货是哪些，这些定单信息，这些商务上的信息；另外一个系统保存着每艘航船里边的人都是谁，雇员的信息，海员的信息，临时工是谁，他的情况是什么
样子。然后，其实现在就表示他们已经提供了一些服务了，在把这些服务跟就是，他把这些数据用SOA的方式，把这些服务给整合起来。</p>
<p>整合起来之后，跟Web 2.0这个技术能够理解的格式比如XML以后，再跟Google
Map整合，立刻得到了一张全球海洋图，一张大的一个全球地图，每一艘现在在什么位置都可以看到。当他点击那个船的时候，他可以立刻看到这个船本身的信
息，船上船员的信息，这次航行的有关商务信息，都可以看到，这个就是SOA跟Web 2.0融合的一个例子。</p>
<p>但故事还没完，当我们部署到内部的时候，好多事情就会不断的出现。因为你不仅可以缝合你，Mashup你自己企业内部的信息，当你
采用公共的Enterprise Web
2.0作为你的架构以后，你就可以公开的自由的获得，或者是通过付费的方式，获得别的企业高质量的数据服务。他们很快又购买了一家海洋天气预报公司所提供
的高质量的数据服务，然后Mashup到这张图里面，就可以看到天气的情况。</p>
<p>然后更有意思的是，他们后来又想知道海盗报警，哪些地方发生海盗的事情，英国 有家公司提供这样的信息，于是他们就把那些信息又通过Web
Service的方式抓过来，那些公司的信息通过Web
Service的方式暴露出来了，他们把这些信息抓过来，缝合到这张图里面去，让它来显示不同的信息。它立刻就可以得到，我这次航行处在什么样的气象条件
下，海洋气象条件下，然后它前方或者它路过的地方，有没有海盗的这个情况，高危险地区我就要提示它警告它，这样的一个应用，我认为是目前我所知道的，比较
好的Enterprise Web 2.0和SOA的应用，这么一个表现。</p>
<p>我相信，由于这样的一个系统，据我所知，它是在一家全球顶级的大公司支持之下，来完成的。据说这个整个的项目的实 施，尤其是后面融合数据的过程，都是非常快，花费统一，而且就是说，完全没有那些繁冗的过程，这就是Enterprise web 2.0的威力。 </p><img src ="http://www.blogjava.net/qixiangnj/aggbug/140373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-08-28 11:45 <a href="http://www.blogjava.net/qixiangnj/archive/2007/08/28/140373.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】没人能阻止你奔赴远大前程</title><link>http://www.blogjava.net/qixiangnj/archive/2007/08/15/137020.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Wed, 15 Aug 2007 11:58:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/08/15/137020.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/137020.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/08/15/137020.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/137020.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/137020.html</trackback:ping><description><![CDATA[<p><span style="font-weight: normal; font-size: 10.5pt; line-height: 22px;">　　&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></p>
<p>&nbsp;</p>
<p><span style="font-weight: normal; font-size: 10.5pt; line-height: 22px;">&nbsp;&nbsp;&nbsp;
足球励志电影《一球成名》在片头打出字幕：&#8220;人因为梦想而伟大。&#8221;<br>
<br>
哪一个人没有梦想呢？梦想也许有大小之分，却没有贵贱之别，即使没有实现，你也照样伟大！这样的字幕不由得叫人热血沸腾。<br>
<br>
周迅出道时是个&#8220;土丫头&#8221;，还嗓子沙哑，有口吃，既没有背景、靠山，也没有幸运之神的垂青。但为了实现梦想，她独自一人漂到北京，跟姐妹们合租住在地
下室。刚开始到酒吧驻唱，每晚才七八十元。为了能挣得一个角色，她挥汗如雨地奔跑了许多场地，见了许多导演，好话自然也说了一箩筐。在拍摄现场，周迅曾冻
得躲到灯光师那里取暖，也没有叫一声苦。其实，苦，她自知，累，她也自知。父母来看她，她撒谎说自己过得挺好。谎言被看穿后，父母心疼得眼泪哗哗直流。他
们走的时候却带不走宝贝女儿，因为她坚信没人能阻止一个人去实现梦想，现在她需要的只是坚持奔跑，坚持奔赴自己的远大前程。10多年后，她捧起了金马影后
的奖杯，如果你知道在这之前，她还受过爱情的创伤，一度万念俱灰，你就会知道这座奖杯确实来之不易。<br>
<br>
不容易，但毕竟得来，这是执著追求者应得的盛装喜剧，他是人生喜剧的主角。<br>
<br>
这个时代越来越好，越来越精彩，人人都可以大声说出自己的梦想。含蓄、谦卑、客套，委婉如诗，你真的没有必要这样，真实地表达、勇敢地表达已经成为成
功者必需的能力。如果你总是对人说&#8220;随便&#8221;，你就不能让别人了解你，即使你的梦想具有铺天盖地的绚烂，也只能委屈在腹中，你的远大前程也只能坎坷难行，缩
短成令你羞愧的羊肠小道。<br>
<br>
没人能阻止你，也没人能嘲笑你，你的远大前程你做主。见了张口就问&#8220;我如何能红&#8221;的人，你不要笑话他有些年少轻狂，担心他的功利心怎么这么兴旺？（藏
着掖着的难道都是好东西吗？）这样的人我却觉得很可爱，他这样问，已经做好了奔赴远大前程的准备。高晓松一直认为自己是金子，他还说：&#8220;金子不需要包装，
只有石头才需要包装。&#8221;如果你是金子，就不妨赤裸裸地发光，包装、藏掖也许成了另外一种障碍。<br>
<br>
郭德纲除了能说层出不穷、气魄惊人的相声，还能说书、写东西、唱京戏、唱梆子、唱评戏。他给了自己不同的人生支点，不至于浪得虚名，也不至于吊死在一
根木桩上；如果各道筋脉的力量聚于一点，其利可断金，无人能争锋。这也是人生的&#8220;金子&#8221;，有了它，事业无忧，前程无忧，不管是开场，还是压轴，你都能赢得
掌声雷动，满堂喝彩。郎朗的音乐梦始于卡通，斯坦利&#183;库布里克的导演梦始于13岁的生日礼物一部照相机，人生就是这样充满际遇和奇妙，从一开始就不复杂难
解，不必为自己的前程杞人忧天，更无需绝望。亚里士多德说：&#8220;给我一个支点，我能翘起整个地球！&#8221;请找准你远大前程上的支点，或者不是一个，而是能有几个
就有几个。<br>
<br>
电脑游戏里有一种顶厉害的本领，叫&#8220;速度燃烧&#8221;，当你越跑越快的时候，你就会具有超强的能力，你的火焰能够烧伤敌人，自己始终安然无恙。远大的前程当
然也要奔起来，奔起来你才有战斗力。不管怎样的辛劳和痛苦，都要坚持跑下去，温吞、迟疑和徘徊足以杀死你的雄心。有些人不明白章子怡为什么总是国内国外飞
来飞去，因为她有雄心，奔得越快，堡垒就越容易攻克，梦想就越近，前程就越远大。<br>
<br>
是的，阻止自己的既不是他人，也不是自己外在的缺憾（比如人们总是在乎我是不是年轻漂亮），而是内心的病弱和残疾，比如懒惰、贪图安逸和不良的思维定
势等。在美女如云的好莱坞，朱迪&#183;福斯特称不上漂亮，外表如羔羊般羸弱，但她头脑聪明，又具备特立独行的现代精神，所以没有什么挡得住她的耀眼星光，最终
她将自己的声音和烙印留在了好莱坞的电影版面上。像徐静蕾那样有貌有才，内外兼修，不是人人都能做到。但这不妨碍我们像阿牛那样简单快乐地享受人生的流行
曲，像罗纳尔&#183;迪尼奥那样心态平和、微笑真诚地在赛场上用足球舞蹈。<br>
<br>
电影《勇敢的心》中说：&#8220;在你一生中，有许多事值得争取，但，自由无疑是最重要的！&#8221;只要你不阻止自己，便没有任何东西能够阻止你，你便永远自由。贫
穷、生活在底层，这些统统不是人的死穴和人生的死胡同。那些叱咤绿茵场的风云人物，从贝利到马拉多纳，从大罗到小罗，哪一个当初不是穷人和普通人的孩子，
哪一个不是后来才得到人生的自由？在奔赴远大前程的道路上，你没有借口，只管再勇敢一些，再自信一些，再狂放一些，哪怕山雨欲来风满楼！你佩服武则天吗？
在男权时代，她从弱女子到铁血女王，她该怎样地穿越风雨，排除万难，她的无字碑上没有答案——其实，人才是天地间最伟大的字眼！<br>
<br>
没有明天了，没人能阻止你了，只有你才能为自己加速度，让自己在奔赴远大前程的道路上绝不惧怕，永不放弃。贝多芬在最后的四重奏中写下这样的决心：&#8220;非如此不可！&#8221;是的，&#8220;非如此不可！&#8221;</span></p><img src ="http://www.blogjava.net/qixiangnj/aggbug/137020.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-08-15 19:58 <a href="http://www.blogjava.net/qixiangnj/archive/2007/08/15/137020.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Web 2.0</title><link>http://www.blogjava.net/qixiangnj/archive/2007/08/12/136166.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sun, 12 Aug 2007 07:10:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/08/12/136166.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/136166.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/08/12/136166.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/136166.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/136166.html</trackback:ping><description><![CDATA[<img alt=""  src="http://www.blogjava.net/images/blogjava_net/qixiangnj/22123/r_web2.0.gif" align="left" height="450" width="600"><br><img src ="http://www.blogjava.net/qixiangnj/aggbug/136166.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-08-12 15:10 <a href="http://www.blogjava.net/qixiangnj/archive/2007/08/12/136166.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>欢迎访问http://www.jbossseam.cn/</title><link>http://www.blogjava.net/qixiangnj/archive/2007/08/11/135982.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sat, 11 Aug 2007 01:53:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/08/11/135982.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/135982.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/08/11/135982.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/135982.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/135982.html</trackback:ping><description><![CDATA[哈哈，昨天注册的域名。<img src="http://www.blogjava.net/CuteSoft_Client/CuteEditor/images/emsmiled.gif" align="absmiddle" border="0"><br><a target="_blank" title="http://www.jbossseam.cn/" href="http://www.jbossseam.cn/">http://www.jbossseam.cn/</a><br><br>看上去，还不错。抢占先机了？<br>o(&#8745;_&#8745;)o...哈哈<br><br>目前只是转发到个人BLOG，精彩内容，敬请期待！<br><br>P.S. 哪个有空间的，可否友情援助下？<img src="http://www.blogjava.net/CuteSoft_Client/CuteEditor/images/emteeth.gif" align="absmiddle" border="0"><br><br> <img src ="http://www.blogjava.net/qixiangnj/aggbug/135982.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-08-11 09:53 <a href="http://www.blogjava.net/qixiangnj/archive/2007/08/11/135982.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>China-Pub的二手书</title><link>http://www.blogjava.net/qixiangnj/archive/2007/08/03/134314.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 03 Aug 2007 11:36:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/08/03/134314.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/134314.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/08/03/134314.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/134314.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/134314.html</trackback:ping><description><![CDATA[哈，今天收到China-Pub的书了。<br><br>
<table bordercolordark="#e6e6ff" bordercolorlight="#000000" align="center" bgcolor="#666666" border="0" cellpadding="4" cellspacing="1" width="98%">
    <tbody>
        <tr align="center">
            <td bgcolor="#e3f2f1" height="17" width="305">
            <div align="center"><font color="#000000">书名</font></div>
            </td>
            <td bgcolor="#e3f2f1" height="17" width="46">
            <div align="center"><font color="#000000">定价</font></div>
            </td>
            <td bgcolor="#e3f2f1" height="17" width="48">
            <div align="center"><font color="#000000">会员价</font></div>
            </td>
            <td bgcolor="#e3f2f1" height="17" width="37">
            <div align="center"><font color="#000000">数量</font></div>
            </td>
            <td bgcolor="#e3f2f1" height="17" width="205">
            <div align="center"><font color="#000000">备注</font></div>
            </td>
        </tr>
        <tr bgcolor="#e3f2f1">
            <td align="left" height="11" width="305">&nbsp;[210425]&nbsp;
            <a  href="http://www.china-pub.com/computers/common/info.asp?id=210425" target="_blank">(二手)从重构到模式（英文影印版）</a></td>
            <td height="11" width="46">&nbsp;￥49.00</td>
            <td height="11" width="48">&nbsp;￥17.15</td>
            <td align="center" height="11" width="37"> 1 </td>
            <td height="11" width="205">北京发送&nbsp;<font color="#cc0000">发货</font></td>
        </tr>
        <tr bgcolor="#e3f2f1">
            <td align="left" height="11" width="305">&nbsp;[210283]&nbsp;
            <a  href="http://www.china-pub.com/computers/common/info.asp?id=210283" target="_blank">(二手)J2EE核心模式（原书第2版）</a></td>
            <td height="11" width="46">&nbsp;￥55.00</td>
            <td height="11" width="48">&nbsp;￥19.25</td>
            <td align="center" height="11" width="37"> 1 </td>
            <td height="11" width="205">北京发送&nbsp;<font color="#cc0000">发货</font></td>
        </tr>
        <tr bgcolor="#e3f2f1">
            <td align="left" height="11" width="305">&nbsp;[7066]&nbsp;
            <a  href="http://www.china-pub.com/computers/common/info.asp?id=7066" target="_blank">编写有效用例（英文版）</a></td>
            <td height="11" width="46">&nbsp;￥25.00</td>
            <td height="11" width="48">&nbsp;￥6.25</td>
            <td align="center" height="11" width="37"> 1 </td>
            <td height="11" width="205">北京发送&nbsp;<font color="#cc0000">发货</font></td>
        </tr>
        <tr bgcolor="#e3f2f1">
            <td align="left" height="11" width="305">&nbsp;[210390]&nbsp;
            <a  href="http://www.china-pub.com/computers/common/info.asp?id=210390" target="_blank">(二手)面向模式的软件体系结构：卷3</a></td>
            <td height="11" width="46">&nbsp;￥29.00</td>
            <td height="11" width="48">&nbsp;￥10.15</td>
            <td align="center" height="11" width="37"> 1 </td>
            <td height="11" width="205">北京发送&nbsp;<font color="#cc0000">发货</font></td>
        </tr>
        <tr bgcolor="#e3f2f1">
            <td align="left" height="11" width="305">&nbsp;[210408]&nbsp;
            <a  href="http://www.china-pub.com/computers/common/info.asp?id=210408" target="_blank">(二手)敏捷项目管理（英文影印版）</a></td>
            <td height="11" width="46">&nbsp;￥35.00</td>
            <td height="11" width="48">&nbsp;￥12.25</td>
            <td align="center" height="11" width="37"> 1 </td>
            <td height="11" width="205">北京发送&nbsp;<font color="#cc0000">发货</font></td>
        </tr>
    </tbody>
</table>
<br>呵呵，这次赚大了！<br>单是《J2EE核心模式》一本，就省掉不少money。<img src="http://www.blogjava.net/CuteSoft_Client/CuteEditor/images/emteeth.gif" align="absmiddle" border="0"><br>哈，每本二手书还都有一个塑料套袋，不错不错。除了封面有点灰尘，简直就是全新！<br>看来得持续、持续关注！<br>谢谢China-Pub！<br><br><img src ="http://www.blogjava.net/qixiangnj/aggbug/134314.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-08-03 19:36 <a href="http://www.blogjava.net/qixiangnj/archive/2007/08/03/134314.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】从Java到Ruby——我的最近一次技术转型</title><link>http://www.blogjava.net/qixiangnj/archive/2007/07/23/131941.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Mon, 23 Jul 2007 13:51:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/07/23/131941.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/131941.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/07/23/131941.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/131941.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/131941.html</trackback:ping><description><![CDATA[原文地址：http://blog.csdn.net/mozilla/archive/2007/07/22/1702365.aspx<br><br>		这里所涉及到的都是与软件开发有关的技术，感觉很有必要总结一下我从业以来所使用过的开发技术以及所经历过的几次技术转型。<br><br>1996年7月-1999年10月3年时间一直使用C语言编写电信协议软件，算作我的C语言时代。其中还使用过一段时间SDL语言和基于SDL的代码自动生成工具（瑞典Telelogic公司的SDT）。<br>2000年3月-2000年10月7个多月时间使用Perl语言做网站开发，算作我的Perl语言时代。后来转向了使用Java和JSP，用了两个月。<br>2001年2月-2001年8月6个月时间使用JavaScript做DHTML开发，还使用ColdFusion做网站开发。<br>2001年12月-2001年6月7个月时间使用C语言做企业级邮件服务器开发。<br>2002年8月之后做开发一直使用Java语言至今，算作我的Java语言时代，算算已经快5年了。<br><br>在我使用过的这些语言中，有3种语言对我的影响最大，那就是C、Perl和Java。当然JavaScript对我的影响也很大，不过对于整体的应用软件开发来说，JavaScript并不是一个主角。<br><br>现在我正在经历一次新的技术转型，从Java语言转向Ruby语言和Rails框架。<br><br>如
果说以前的几次技术转型都是因为工作的变动而导致的，那么这一次技术转型则是我自己主动发起的，因为我感觉Ruby代表着应用软件开发技术（注意限定词
&#8220;应用软件&#8221;）的未来。Ruby是一种比Java更加先进的应用软件开发语言，最重要的是它能够带来极高的开发效率，而且不会影响代码的可读性和可维护
性。<br><br>一年多以前我对Java还抱有一些幻想，认为Java社区如果有更好的框架，开发效率一定会追上Rails。今年5月我读了
Bruce A.
Tate的《超越Java》这本书，希望从专家那里了解一下Java语言和Java社区到底出了什么问题。这本书打消了我的幻想，让我理解了Java最大
的问题在于静态类型对开发效率造成的严重影响。联想到我去年下半年做的那个广告发布平台，我对此深有感触。我当时所采用的框架是Spring
MVC+Spring
IoC+Hibernate+FreeMarker+SiteMesh，按理说在Java开发领域，这套组合的开发效率应该算是比较高的了。然而实际的开
发进度远远低于我的预期，我作出第一个版本的时间差不多是预计时间的两倍。当然因为资金的缺乏，大部分时间都只有我一个人在做开发，什么都要亲自动手，困
难确实很多。不过我认为主要的问题还是在于Java语言做Web开发的笨拙。<br><br>因为资金的缺乏，我今后要做一些自己感兴趣的东西，注定仍然只会有很少的人参与（2、3个人），Java这样笨拙的语言可能会使我付出双倍的代价。<br><br>当然，Java语言仍然在发展和变化，但是它变的越来越复杂，越来越缺乏一致性，最终很可能会发展成为像C++那么复杂的一种语言。Java越来越不适合Web应用的开发了（我说的比较谨慎是因为这个领域是我最熟悉的），是到需要寻找一种新的开发语言的时候了。<br><br>Rod
Johnson确实很伟大，在参与翻译了《J2EE without EJB》之后，我至今仍然对Rod
Johnson对于JavaEE的伟大贡献深感敬意。但是Spring是从企业应用环境成长起来的，它对于面向Internet的Web应用来说，仍然是
太重了。而Web
应用的很多重要的需求（例如对Ajax的支持、对REST的支持等等），Spring并没有解决。做企业应用，Spring仍然是很好的选择，然而做
Web应用，Spring，甚至是Java语言本身，都不是很好的选择。为何在Web应用开发技术方面，PHP最终占据了第一的份额，这是很值得思考的。<br><br>我们以前做网站开发从Perl语言转向了Java语言，主要的原因有以下这些：<br>1. Perl开发的应用代码量大了之后很难维护。我自己写过一个4、500行的复杂Perl程序，过了两个月后再读居然都读不懂了。<br>2. Perl这个工具最初是设计用来取代bash、awk、sed等工具的，因为Larry Wall觉得这些工具还不够强大灵活。Perl最初并不是设计用来作为一种全功能的应用软件编程语言的。<br>3. Perl对面向对象编程支持的并不好。<br>4. 对于Web开发来说，Perl的资源（开发框架、开发库）没有Java丰富，很多功能需要自己来开发。<br>5. CGI开发与支持session的Servlet/JSP开发相比太原始，开发难度太大。<br><br>所以我们有非常充足的理由转向Java语言。还有一个不大好开口的理由就是，做Java开发当时似乎是成为一个专业程序员的标志，纯粹的面子问题，当然Java程序员的就业前景也要好的多。<br><br>但
是转向Java之初最强烈的感觉就是Java做一些与文本处理相关的工作非常麻烦，没有Perl快捷，而这些工作对于开发Web应用来说是很常见的。当时
Java核心类库甚至还不支持正则表达式，需要下载学习其他的开发包，直到JDK1.4之后Java核心类库才开始支持正则表达式。不过JSP这样与
ASP、PHP类似的服务器页面技术是比CGI要先进一代的技术，所以开发效率还是比写Perl CGI有所提高。<br><br>我做了一段时间JSP
开发，发现全部代码都混在页面中问题很多，于是开始学习Java
Web开发的Model1和Model2，并且接触到了当时刚刚兴起的Struts。不过因为工作转换，并没有深入使用Struts。后来我用了半年
ColdFusion之后，就不爱使用JSP了。JSP的开发效率虽然比Perl
CGI高一些，但是比起ColdFusion来说还是要低很多。JSP开发后来逐渐转向基于custom
tag的开发方式，并且最终出现了JSTL，在我看来是一种对ColdFusion的模仿。Java社区后来出现了n多的MVC框架、n多的IoC框架、
n多的ORM框架。《J2EE核心模式》所提倡的标准的三层架构至今仍然被当作铁律来遵循，过多的层次带来了巨大的灵活性，同时也带来了巨大的复杂性。除
了JavaEE之外，我还没有看到其他的服务器端开发技术如此强调三层架构或者多层架构。一般来说，分出MVC就足够了。而JavaEE开发不仅要在
Web表现层中分出MVC，还要在M中再分出业务层和持久层。这个分层的设计，是做JavaEE开发很难实现Martin
Fowler在《企业应用架构模式》中提倡的充血的domain
model的一个主要原因。另外Java语言本身的静态类型所造成的笨拙和无法避免的重复代码也是一个主要的原因，如果不强调分层，并且真的实现充血的
domain model，那么一个类中包含的代码量会显得太多太复杂了。<br><br>Java社区中的一些厂商目前在大力追捧JSF和EJB3，但
是我并不认为JSF和EJB3或者将两者集成在一起的JBoss Seam能够拯救JavaEE。复杂性才是JavaEE最大的问题，JBoss
Seam成功的关键在于它能否成功地掩盖JSF和EJB3的复杂性，使得学习成本降低到与Rails相当的级别。不过即使它能够做到，将来开发者还是要面
对Java语言本身的静态类型所造成的开发效率低下。我并不认为JBoss
Seam有机会在开发效率上超越Rails。另外一个值得关注的框架是Grails，它是基于动态语言Groovy的，严格来说不能算是Java社区的框
架。不过由于它基于Spring、Hibernate、SiteMesh，所以也可以看作是Java框架的进一步发展。在开发效率方面Grails也不大
可能超越Rails。除了开发框架本身，还需要考虑众多外围工具的支持和社区的规模，在这些方面Grails不可能达到Rails的水平。还有一个
RIFE呢，虽然我完全不了解它，不过看来它受到的关注很少。一个几乎完全被忽视的框架，成功的前景估计很渺茫。Wicket我认为是不值得考虑的，现在
我们应该把目光仅仅投向那些full stack框架上，建造一个更加精巧的Web
MVC框架解决不了根本的问题，对开发效率的提升是有限的。Cetia4和Restlet也是两个很有趣的框架，特别是它们能够支持REST开发，代表了
Java
Web开发框架的未来。Google的Guice是一个很有可能取代Spring的轻量级IoC框架，前景似乎不错。不过Cetia4、Restlet、
Guice这些框架和Wicket一样，并不是full stack框架，对开发效率的提升是有限的。<br><br>根据上述分析，我现在对Java社
区内部的创新能力已经感到很失望了（很明显我后知后觉了，感到失望的大有人在），这种持续了10年之久的创新能力似乎已经逐渐枯竭。由于动态类型的脚本语
言（Python、Ruby、JavaScript等等）这些年来取得了长足的进步，而且在Web开发方面出现了一些killer级的框架，现在是将目光
投向其他开发语言的时候了。我的决定就是在今年下半年完全转到Ruby和Rails这个平台上面。从Java转到 Ruby有几个强有力的理由：<br>1. Rails可以让单个开发者在开发效率方面接近自己能力的极限。我并不是一个完美架构的fans，热衷于不写一行代码，巨细无靡地分析各种架构优劣直到脑神经瘫痪。我热衷的是解决用户真正关心的问题，用技术改善他们的生活，与用户建立起良好的人际关系。<br>2. Rails框架对Ajax有更好的支持，通过使用RJS模板可以极大减轻一般情况下做Ajax开发的复杂性，提高开发的效率。<br>3. Rails框架对REST开发提供了最好的支持。REST在Web开发方面会越来越重要，全面支持REST就是未来所有语言Web开发框架发展的方向。<br>4. JRuby 1.0对Rails的支持已经很好，而且支持直接使用Java开发的资源，所以现在是从Java转到Ruby的一个适当的时机。<br><br>我已经读完了《Ruby for Rails中文版》，并且出了一个<a  href="http://www.javaeye.com/topic/102909">个人的勘误</a>。
《应用Rails进行敏捷Web开发》第2版我已经读了1/3，在一周之内可以全部读完。这两本书读完之后，基本上已经入门了。在入门阶段我只准备读这两
本书，然后我会通过开发来熟悉更多的技术。因为我对Perl、JavaScript和Java语言的熟悉，所以学习Ruby和Rails并没有感觉有什么
难度。事实上阅读《应用Rails进行敏捷Web开发》第2版要比我阅读《Struts实战》之类的书容易理解的多（同时也更加有趣味，我第一次没有感觉
犯困），到目前为止，一切都感觉很自然。Ruby在我看来就是Perl+JavaScript+Java，毫无疑问是一门伟大的语言。很可惜晚学习了整整
一年多，否则去年见到Martin Fowler的时候本应该问他更多关于Ruby的问题的。<br><br><img src ="http://www.blogjava.net/qixiangnj/aggbug/131941.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-07-23 21:51 <a href="http://www.blogjava.net/qixiangnj/archive/2007/07/23/131941.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>After Interview</title><link>http://www.blogjava.net/qixiangnj/archive/2007/07/14/130308.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sat, 14 Jul 2007 14:43:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/07/14/130308.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/130308.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/07/14/130308.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/130308.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/130308.html</trackback:ping><description><![CDATA[三点总结：<br>1. Java基础<br>2. 项目经验<br>3. 英语口语
<img src ="http://www.blogjava.net/qixiangnj/aggbug/130308.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-07-14 22:43 <a href="http://www.blogjava.net/qixiangnj/archive/2007/07/14/130308.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>好玩的一幅图</title><link>http://www.blogjava.net/qixiangnj/archive/2007/07/09/129155.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Mon, 09 Jul 2007 14:20:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/07/09/129155.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/129155.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/07/09/129155.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/129155.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/129155.html</trackback:ping><description><![CDATA[<img alt="" src="http://www.blogjava.net/images/blogjava_net/qixiangnj/23974/r_Pet%20Store%20in%20Java.jpg" align="left" height="480" width="360"><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>Java Pet Shop?<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <img src ="http://www.blogjava.net/qixiangnj/aggbug/129155.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-07-09 22:20 <a href="http://www.blogjava.net/qixiangnj/archive/2007/07/09/129155.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Learning plan in the second half of 2007</title><link>http://www.blogjava.net/qixiangnj/archive/2007/06/21/125702.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Thu, 21 Jun 2007 15:16:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/06/21/125702.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/125702.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/06/21/125702.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/125702.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/125702.html</trackback:ping><description><![CDATA[<span style="font-weight: bold;">Technologies</span>:<br>1. Java Frameworks<br>&nbsp;&nbsp; 1) JSF<br>&nbsp;&nbsp; 2) Hibernate<br>&nbsp;&nbsp; 3) Spring<br>2. UML<br>3. JavaScript/AJAX<br>4. DDD<br>5. Unit Test<br>6. Design Patterns<br>
&nbsp;&nbsp; 1)GoF<br>
&nbsp;&nbsp; 2)Core J2EE<br>7. Database<br>&nbsp;&nbsp; 1)MySQL<br>&nbsp;&nbsp; 2)<span style="color: red;">Oracle 10g</span><br>8. Software Architecture<br>9. Project Management<br><br><span style="font-weight: bold;">Projects</span>:<br>1. TCP/IP(AES)<br>2. Project Track(Open Source)<br>3. ToDoList<br>4. AppFuse<br>5. JBoss Seam<br>6. SpringSide<br><br><span style="font-weight: bold;">Reading</span>:<br>1. UML FOR JAVA PROGRAMMERS (Chinese Version)<br>2. Applying UML and Patterns, Third Edition (Chinese Version)<br>3. Domain-Driven Design: Tackling Complexity in the Heart of Software<br>4. <span class="b">Core JavaServer Faces, Second Edition<br>5. Java Persistence with Hibernate<br>6. JBoss Seam Simplicity and Power Beyond Java EE<br>7. JUnit Recipes (Chinese Version)<br>8. Java and Patterns (Chinese Version)<br>9. Core J2EE Patterns (SUN, Print Version)<br></span>  <img src ="http://www.blogjava.net/qixiangnj/aggbug/125702.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-06-21 23:16 <a href="http://www.blogjava.net/qixiangnj/archive/2007/06/21/125702.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Installing NetBeans and Eclipse on Ubuntu</title><link>http://www.blogjava.net/qixiangnj/archive/2007/06/16/124669.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sat, 16 Jun 2007 09:25:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/06/16/124669.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/124669.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/06/16/124669.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/124669.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/124669.html</trackback:ping><description><![CDATA[一、Java Environment<br>1. sudo apt-get install sun-java6-jdk<br>2. sudo update-alternatives --config java<br>3. sudo vim /etc/environment<br>&nbsp;&nbsp; CLASSPATH="/usr/lib/jvm/java-6-sun-1.6.0.00/lib"<br>&nbsp;&nbsp; JAVA_HOME="/usr/lib/jvm/java-6-sun-1.6.0.00"<br><br>二、NetBeans<br>1. chmod +x netbeans-5_5-linux.bin<br>2. ./netbeans-5_5-linux.bin<br><br>三、Eclipse<br>1. sudo apt-get install eclipse<br>2. sudo update-java-alternatives -s java-6-sun<br>3. sudo vim /etc/jvm<br>&nbsp;&nbsp; /usr/lib/jvm/java-6-sun-1.6.0.00 (<span style="font-style: italic;">top</span>)<br>4. sudo vim /etc/eclipse/java_home<br>&nbsp;&nbsp; /usr/lib/jvm/java-6-sun-1.6.0.00 (<span style="font-style: italic;">top</span>)<br><br><br><img alt="" src="http://www.blogjava.net/images/blogjava_net/qixiangnj/16987/r_NetBeans_ubuntu.png" align="left" height="480" width="640"><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><img alt=""  src="http://www.blogjava.net/images/blogjava_net/qixiangnj/16987/r_eclipse_ubuntu.png" align="left" height="480" width="640"><br><br> <img src ="http://www.blogjava.net/qixiangnj/aggbug/124669.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-06-16 17:25 <a href="http://www.blogjava.net/qixiangnj/archive/2007/06/16/124669.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】CI Inspection Tools for Java</title><link>http://www.blogjava.net/qixiangnj/archive/2007/06/15/124536.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 15 Jun 2007 09:07:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/06/15/124536.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/124536.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/06/15/124536.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/124536.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/124536.html</trackback:ping><description><![CDATA[原文地址：http://www.nofluffjuststuff.com/blog_detail.jsp?rssItemId=100675&amp;showId=<br><br>
<p>Below, is a list of tools for running automated inspections (static and dynamic analysis) for the Java platform:</p>
<ul>
    <li><a  href="http://pmd.sourceforge.net/" title="PMD coding standard analysis">PMD</a> - verify code is adhering to the project&#8217;s coding standards </li>
    <li><a  href="http://checkstyle.sourceforge.net/" title="CheckStyle coding standard analysis">CheckStyle</a> - verify code is adhering to the project&#8217;s coding standards</li>
    <li><a  href="http://pmd.sourceforge.net/cpd.html" title="Copy-Paste Detector">CPD</a> - Copy Paste Detector (part of PMD project)</li>
    <li><a  href="http://www.redhillconsulting.com.au/products/simian/" title="Simian similarity analyzer">Simian</a> - <strong>Simi</strong>larity <strong>An</strong>alyzer</li>
    <li><a  href="http://clarkware.com/software/JDepend.html" title="JDepend architectural analysis">JDepend</a> - Object-oriented metrics for determining robustness of the architecture</li>
    <li><a  href="http://www.kclee.de/clemens/java/javancss/" title="JavaNCSS cyclomatic complexity analyzer">JavaNCSS</a> - tool for measuring cyclomatic complexity</li>
    <li><a  href="http://www.campwoodsw.com/sourcemonitor.html" title="SourceMonitor code metrics">SourceMonitor</a> - tool for measuring cyclomatic complexity and general code metrics</li>
    <li><a  href="http://metrics.sourceforge.net/" title="Eclipse Metrics">Metrics</a> - Eclipse plugin for gathering many types of code metrics</li>
    <li><a  href="http://coverlipse.sourceforge.net/index.php" title="Coverlipse">Coverlipse</a> - code coverage tool for Eclipse</li>
    <li><a  href="http://andrei.gmxhome.de/jdepend4eclipse/" title="JDepend4Eclipse">JDepend4Eclipse</a> - JDepend plugin for Eclipse</li>
    <li><a  href="http://cobertura.sourceforge.net/" title="Cobertura code coverage">Cobertura</a> - Code Coverage tool</li>
    <li><a  href="http://findbugs.sourceforge.net/" title="FindBugs">FindBugs</a>
    - code metrics and analysis tool. Provides more advanced metrics than
    the &#8220;average&#8221; static analysis tools such as security warnings, etc.</li>
</ul><img src ="http://www.blogjava.net/qixiangnj/aggbug/124536.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-06-15 17:07 <a href="http://www.blogjava.net/qixiangnj/archive/2007/06/15/124536.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>some materials of code convertions</title><link>http://www.blogjava.net/qixiangnj/archive/2007/06/04/122006.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Mon, 04 Jun 2007 15:26:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/06/04/122006.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/122006.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/06/04/122006.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/122006.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/122006.html</trackback:ping><description><![CDATA[<span style="font-weight: bold;">Documents</span>:<br>1. Code Conventions for the JavaTM Programming Language<br>&nbsp;&nbsp;&nbsp; http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html<br>2. How to Write Doc Comments for the Javadoc Tool<br>&nbsp;&nbsp;&nbsp; http://java.sun.com/j2se/javadoc/writingdoccomments/index.html<br>3. <span style="font-weight: bold;">Java语言编码规范</span>(Java Code Conventions)<br>&nbsp;&nbsp;&nbsp; http://www.huihoo.org/code/java_code_conventions.html<br>4. 架构师任务--制定代码规范(Standard of Coding Standards)<br>&nbsp;&nbsp;&nbsp; http://blog.csdn.net/calvinxiu/archive/2007/04/17/1567553.aspx<br>5. <span style="font-weight: bold;">SpringSide代码规范</span><br>&nbsp;&nbsp;&nbsp; http://wiki.springside.org.cn/display/springside/Coding+Standards<br><br><span style="font-weight: bold;">Tools</span>:<br>1. <span style="font-weight: bold;">Checkstyle</span><br>&nbsp;&nbsp;&nbsp; http://checkstyle.sourceforge.net/<br>2. <span style="font-weight: bold;">PMD</span><br>&nbsp;&nbsp;&nbsp; http://pmd.sourceforge.net/<br>3. <span style="font-weight: bold;">FindBugs</span><br>&nbsp;&nbsp;&nbsp; http://findbugs.sourceforge.net/<br><br>  <img src ="http://www.blogjava.net/qixiangnj/aggbug/122006.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-06-04 23:26 <a href="http://www.blogjava.net/qixiangnj/archive/2007/06/04/122006.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】Digg 叛乱后记－－我支持Kevin Rose和Digg</title><link>http://www.blogjava.net/qixiangnj/archive/2007/05/06/115612.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sun, 06 May 2007 11:50:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/05/06/115612.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/115612.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/05/06/115612.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/115612.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/115612.html</trackback:ping><description><![CDATA[原文地址：http://www.yeeyan.com/articles/view/thunder/842<br><br>&nbsp;&nbsp;&nbsp; 译者：本文发表于2007年5月2日，所谓Digg用户造反事件的第二天。感觉这篇文章对整个事件有一个相对冷静、客观的看法。而这篇文章，今天在Digg上已经被digg了近7000次。。。<br>
<br>
昨天的事件，毫无疑问是在整个互联网发展史上都值得记上一笔的。最终的影响是正面还是负面，还需拭目以待。<br>
<br>
事件的起因是一个Digg用户在Digg.com上发了一个链接，这个链接指向一篇有一段密码的博客文章。这个密码可以解除高清晰度DVD的版权保护。
AACS（译者：制定数字版权保护技术规则的行业组织。他们的背后是各大电影制片公司、索尼、微软、英特尔等大公司）声称这违反了版权法，并给Digg发
出了&#8220;不撤下这个链接就去死（Cease
and Desist）&#8221;的通牒。迫于压力，Digg的网管把这个链接撤掉了。<br>
<br>
接下来发生的是，Digg的用户不断把这个密码重贴，Digg网管忙着删帖、封用户。事态不断升温。Digg在期间向用户发表声明，网站必须在法律范围内运作，否则将面临把整个公司毁掉的危险。<br>
<br>
但这支匿名用户大军的战鼓已经敲响。他们显然发现这是件很酷的事，一个共同的目标立刻产生了。用户们完全无视网管的存在，很快用这段&#8220;非法&#8221;密码&#8220;淹没了整个digg网站。（译者：下面是事件发生当天的digg网站截图。）<br>
<br>
<div align="center"><a  href="http://www.flickr.com/photos/pcmhatre/480882943/" class="tt-flickr"><img  src="http://farm1.static.flickr.com/229/480882943_e67e8388e6.jpg" alt="Digg" front="front" height="500" width="323"></a><br>
<br></div>
<br>
<a  href="http://www.flickr.com/photos/pcmhatre/480882947/" class="tt-flickr"><img  src="http://farm1.static.flickr.com/221/480882947_51b1176964.jpg" alt="Digg" top="top" height="454" width="293"></a><br>
<br>
如果我还年轻，如果我相信群众真的彻头彻尾是单纯的，如果不是我自己就认识Kevin
Rose，我恐怕也会加入这场游戏。我会把自己演绎成一个为受压迫者而勇敢地站起来的斗士。第二天在学校操场上讲述我的英雄事迹，炫耀事后印的纪念体恤衫。<br>
<br>
但事实是，勇气在匿名的条件下是不存在的。而昨天，我们所看到的真正的勇气来自于Digg的创始人，Kevin
Rose，当他站出来，面对Digg用户的&#8220;叛乱&#8221;。他同意用户，把那个&#8220;不停止就去死&#8221;的通牒置之脑后。<br>
<br>
最有勇气的行动是，他自己把那段密码贴到他自己的帖子里－－完全放弃了Digg网站可能获得的法律保护。（译者：根据数字千年法案，用户提交的内容，即便
有版权问题，只要站方积极处理，就没有问题。但Kevin作为网站的创始人和CEO亲自这样做，就不同了。）如果AACS用他们的势力和站在他们一边的法
律来回击，需要面对他们的将是Kevin。Kevin把他的公司和他自己的职业置于险境。<br>
<br>
当你们聚在学校的操场上呐喊&#8220;斗争、斗争、斗争&#8221;时，别忘了，谁最后会替你们挨打。<br>
<br>
如果Kevin最后赢了，胜利的荣耀是大家每个人的。如果他输了，大家恐怕会忘了这件事，去读下一条新闻了。别搞错，这可能会毁掉他的整个公司。至少，Kevin应该获得他应获得的尊敬。<br><br><img src ="http://www.blogjava.net/qixiangnj/aggbug/115612.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-05-06 19:50 <a href="http://www.blogjava.net/qixiangnj/archive/2007/05/06/115612.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>编程珠玑</title><link>http://www.blogjava.net/qixiangnj/archive/2007/02/08/98879.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Thu, 08 Feb 2007 14:30:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/02/08/98879.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/98879.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/02/08/98879.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/98879.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/98879.html</trackback:ping><description><![CDATA[<p align="left">
<font color="#000000">1. 实现某个功能的正确方式应该是最简单的；阻碍最少的途径应该是正确的；在过于复杂和功能简陋之间应该存在一个很好的平衡点。<br>2. </font>
<font color="#000000">框架的强大之处不是源自它能让你做什么，而是它不能让你做什么。<br>3. 框架定义了不能做什么，而容器则定义了可以或者说能够做什么。<br>&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;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<em><font size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;——</font></em><a class="postTitle2" id="viewpost1_TitleUrl" href="http://www.blogjava.net/crespo9907/archive/2007/02/08/webworkinaction_note1.html"><em><font size="2">WebWork <span style="font-weight: bold;">In Action学习笔记(一) WebWork的概貌</span></font></em></a><br><br>4. 请牢记这一条JUnit 最佳实践：测试任何可能的错误。单元测试不是用来证明您是对的，而是为了证明您没有错。<br><em><font size="2">&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;&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;&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;&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;&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;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;——</font></em><a href="http://www.ibm.com/developerworks/cn/java/j-lo-junit4/"><strong><em><font size="2">单元测试利器 JUnit 4<br></font></em></strong></a></font></p>
<p align="left"><br><span style="text-decoration: underline;"><span style="font-style: italic;"><span style="font-weight: bold;"></span></span></span></p>
<p align="left"><span style="text-decoration: underline;"><span style="font-style: italic;"><span style="font-weight: bold;"></span></span></span>5. 轻量级的组件，并不意味着提供服务的容器是轻量的。<br>6. 轻量级的内核，也不意味着整个框架是轻量的，更不意味着基于Spring的整个应用架构是轻量的。<br>7. 对于企业应用的构建来说，轻量级组件标准+轻量的内核+轻量级的容器，并以此构建轻量级的应用平台，才是最终需要的。<br></p>
<h1 style="font-style: italic;" class="ex-articles"><a href="http://www.infoq.com/cn/articles/ejb3-spring-compare" style="font-size: 10pt;">EJB3和Spring技术体系比较</a></h1>
<p align="left"><br></p><img src ="http://www.blogjava.net/qixiangnj/aggbug/98879.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-02-08 22:30 <a href="http://www.blogjava.net/qixiangnj/archive/2007/02/08/98879.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>How do you become an Architect?</title><link>http://www.blogjava.net/qixiangnj/archive/2007/01/28/96392.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Sun, 28 Jan 2007 11:32:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/01/28/96392.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/96392.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/01/28/96392.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/96392.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/96392.html</trackback:ping><description><![CDATA[<p>From: <a href="http://trak3r.blogspot.com/2007/01/how-do-you-become-architect.html">http://trak3r.blogspot.com/2007/01/how-do-you-become-architect.html</a></p>
<p>During an interview yesterday a candidate told me he had aspirations of becoming a software architect and asked me how he should pursue it. That question caught me off guard. I considered my personal career history and came up with this little nugget:<br></p>
<blockquote>
<font color="#ff0000">
<strong>Always be the guy in every meeting with the best design idea.</strong>
</font>
</blockquote>
<p>That's pretty much how it worked for me. When you're sitting in a room with your colleagues and peers, discussing and debating how to solve a particular problem, and you consistently present the best ideas, the ideas that get implemented, you start to build a reputation and credibility. The next thing you know, you're The Architect. I expanded on the idea with this:<br></p>
<blockquote>
<font color="#ff0000">
<strong>Be able to recognize and <span style="font-style: italic;">vocalize</span> the pros and cons of every idea.</strong>
</font>
</blockquote>
<p>Not just your own; other people's ideas as well. If you can tell them, in a polite and constructive manner, what's wrong with their idea and how it might hurt them in the near or far future, they will [if they're not a complete jackass] thank you for it, and come to you the next time they want a Sanity Check.<br><br>But how, you might ask, do you become the guy with the best ideas? <font color="#ff0000"><strong>Read, read, read!</strong></font> I am a bookworm. I read books on design patterns, frameworks, methodologies, programming languages, antipatterns, usability, etc. If you can grok it and regurgitate it at the appropriate times, you'll be The Idea Guy.<br><br>That's how it worked for me. Your mileage may vary.<br><br><br>内容就不翻译了，^_^<br>原文中，有一回帖，摘录如下：<br><em>so here I think how it goes:<br>if(u.haveBestIdeas()) {<br>u.setPosition("Chief Architect");<br>} else if(u.havebetterIdeas()) {<br>u.setPosition("Senior Architect (As oppose to what?)");<br>} else if(u.haveGoodIdeas()) {<br>u.setPosition("Architect");<br>} else if(u.haveIdeas()) {<br>u.setPosition("Senior developer");<br>} else if(u.haveNoIdeas()) {<br>u.setPosition("Phreakin' code monkey");<br>} else {<br>u.setPosition("You are in a wrong business buddy");<br>}</em></p><img src ="http://www.blogjava.net/qixiangnj/aggbug/96392.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-01-28 19:32 <a href="http://www.blogjava.net/qixiangnj/archive/2007/01/28/96392.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>17th Annual Jolt Product Excellence Awards Finalists</title><link>http://www.blogjava.net/qixiangnj/archive/2007/01/19/94920.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 19 Jan 2007 05:57:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/01/19/94920.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/94920.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/01/19/94920.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/94920.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/94920.html</trackback:ping><description><![CDATA[From: <a href="http://www.joltawards.com/2006">http://www.joltawards.com/2006</a><br><br>
<p><strong>Winners will be announced at SD West in Santa Clara.</strong></p>
<h2>17th Annual Jolt Product Excellence Awards<br>Finalists</h2>
<p>&#160;</p>
<p><strong>Books (Practical/General Developer Interest)</strong><br></p>
<blockquote><em>Agile Software Development: The Cooperative Game</em> (Addison-Wesley) by Alistair Cockburn<br><em>Catastrophe Disentanglement</em> (Addison-Wesley) by E. M. Bennatan<br><em>Eric Sink on the Business of Software</em> (Apress) by Eric Sink<br><em>Practices of an Agile Developer</em> (Pragmatic Bookshelf) by Venkat Subramaniam and Andy Hunt<br><em>Software Creativity 2.0</em> (DeveloperDotStar) by Robert L. Glass<br><em>Software Estimation: Demystifying the Black Art</em> (Microsoft Press) by Steve McConnell<br><em>Weinberg on Writing: The Fieldstone Method</em> (Dorset House) by Gerald M. Weinberg</blockquote>
<p>&#160;</p>
<p><strong>Books (Technical)</strong><br></p>
<blockquote><em>Code Quality</em> (Addison-Wesley) by Diomidis Spinellis<br><em>How to Break Web Software</em> (Addison-Wesley) by M. Andrews, J. Whittaker<br><em>Java Concurrency in Practice</em> (Addison-Wesley) by Brian Goetz et al <br><em>Rails Recipes</em> (Pragmatic Bookshelf) by Chad Fowler<br><em>Refactoring Databases</em> (Addison-Wesley) by Scott W. Ambler and P. J. Sadalage<br><em>Head First Object-Oriented Analysis and Design</em> (O'Reilly) by B. McLaughlin, G. Pollice and D. West<br><em>Ruby Cookbook</em> (O'Reilly) by Lucas Carlson and Leonard Richardson<br><em>CSS: The Missing Manual</em> (O'Reilly) by David Sawyer McFarland</blockquote>
<p>&#160;</p>
<p><strong>Change and Configuration Management</strong><br></p>
<blockquote>AccuRev 4.5 with AccuWorkflow (Accurev)<br>AnthillPro3 (Urbancode)<br>Automated Build Studio (AutomatedQA)<br>FLEXnet Connect (Macrovision)<br>Perforce SCM (Perforce)<br>Team Foundation Server (Microsoft Corporation)<br>CA Wily Introscope ChangeDetector (CA / Wily Technology)</blockquote>
<p>&#160;</p>
<p><strong>Collaboration Tools</strong><br></p>
<blockquote>Adobe Acrobat Connect Professional (Adobe Systems)<br>Code Collaborator (Smart Bear Software)<br>Confluence (Atlassian Software Systems)<br>NetBeans IDE (Sun Microsystems) <br>Sugar Professional (SugarCRM)<br>TeamCity (JetBrains)</blockquote>
<p>&#160;</p>
<p><strong>Database Engines and Data Tools</strong><br></p>
<blockquote>Coral8 Engine (Coral8)<br>dbdeploy (ThoughtWorks)<br>MarkLogic Server (Mark Logic)<br>SQL Anywhere (Sybase iAnywhere)<br>SQL Refactor (Red Gate Software)<br>Visual Studio 2005 Team Edition for Database Professionals (Microsoft)</blockquote>
<p>&#160;</p>
<p><strong>Design and Modeling</strong><br></p>
<blockquote>Compuware OptimalJ (Compuware)<br>Corticon Business Rules Modeling Studio (Corticon Technologies)<br>MagicDraw UML (No Magic)<br>RAVEN (Ravenflow)<br>stpBA Storyboarding for Microsoft Visual Studio 2005 Team System (stpsoft ltd.)<br>Stylus Studio 2007 XML Enterprise Suite (DataDirect Technologies)</blockquote>
<p>&#160;</p>
<p><strong>Development Environments</strong><br></p>
<blockquote>EiffelStudio Open Source Edition (Eiffel Software)<br>IntelliJ IDEA (JetBrains)<br>IronPython (Microsoft)<br>Microsoft XNA Game Studio Express, XNA Framework (Microsoft)<br>NetBeans IDE (Sun Microsystems)<br>Wolfram Workbench (Wolfram Research)</blockquote>
<p>&#160;</p>
<p><strong>Enterprise Tools</strong><br></p>
<blockquote>Cape Clear ESB Platform (Cape Clear Software)<br>Liferay Portal (Liferay)<br>Mule (MuleSource)<br>Appistry EAF (Appistry)<br>Pentaho Open BI Suite (Pentaho)<br>TeamCity (JetBrains)</blockquote>
<p>&#160;</p>
<p><strong>Libraries, Frameworks and Components</strong><br></p>
<blockquote>JViews (ILOG)<br>NetAdvantage for .NET (Infragistics)<br>telerik r.a.d.controls for WinForms (Telerik)<br>.NET Framework 3.0 (Microsoft)<br>Intel Threading Building Blocks for Linux (Intel)<br>Microsoft XNA Game Studio Express, XNA Framework (Microsoft)<br>The Mono Project (Novell)</blockquote>
<p>&#160;</p>
<p><strong>Mobile Development</strong><br></p>
<blockquote>AccuSPEECH (Vangard Voice Systems)<br>Carbide .c++ Professional Edition (Nokia)<br>Crossfire (AppForge)<br>Qtopia Greenphone (Trolltech)<br>NetBeans Mobility Pack 5.5 and Sun Java Wireless Tookit 2.2 (Sun Microsystems)<br>Qtopia (Trolltech)</blockquote>
<p>&#160;</p>
<p><strong>Project Mangement Tools</strong><br></p>
<blockquote>6th Sense Analytics (6th Sense Analytics)<br>DevPlan (TechExcel)<br>Rally Enterprise (Rally Software)<br>TargetProcess (TargetProcess)<br>Teamwork (Open Lab)<br>V1: Agile Enterprise (VersionOne)</blockquote>
<p>&#160;</p>
<p><strong>Security</strong><br></p>
<blockquote>AppScan (Watchfire)<br>beSTORM (Beyond Security)<br>DevInspect (S.P.I. Dynamics)<br>Fortify Defender (Fortify Software)<br>Fortify Source Code Analysis (SCA) (Fortify Software)<br>Metasploit Framework (Metasploit)</blockquote>
<p>&#160;</p>
<p><strong>Automated Testing Tools</strong><br></p>
<blockquote>AgitarOne (Agitar Software)<br>CodePro AnalytiX (Instantiations)<br>Mindreef SOAPscope (Mindreef)<br>Parasoft Jtest (Parasoft)<br>Parasoft SOAtest (Parasoft)<br>TestComplete (AutomatedQA)</blockquote>
<p>&#160;</p>
<p><strong>Bug and Defect Tracking Tools</strong><br></p>
<blockquote>JIRA (Atlassian Software Systems)<br>OnTime 2007 Hosted (Axosoft)<br>Software Planner Professional (Pragmatic Software Co.)<br>TestTrack Studio (Seapine Software)</blockquote>
<p>&#160;</p>
<p><strong>Utilities</strong><br></p>
<blockquote>Adobe Captivate 2 (Adobe Systems)<br>AutoPatch (SourceForge)<br>ElectricCommander (Electric Cloud)<br>TEKchecker and StyleWriter (ClearSpecs Enterprises)<br>TextMate (Macromates)<br>VMware Lab Manager (VMware)</blockquote>
<p>&#160;</p>
<p><strong>Web Development</strong><br></p>
<blockquote>Adobe Flex 2 (Adobe Systems)<br>IntelliJ IDEA (JetBrains)<br>Kapow Mashup Server (Kapow Technologies)<br>LignUp Communications Application Server (LignUp)<br>Mindreef SOAPscope Server (Mindreef)<br>NetBeans Visual Web Pack (Sun Microsystems)</blockquote>
<p>&#160;</p>
<p><strong>Web Sites/Developer Networks</strong><br></p>
<blockquote>CM Crossroads (CMC Media)<br>IBM developerWorks (IBM)<br>Sun Developer Network (Sun Microsystems)<br>Koders.com (Koders)<br>Krugle (Krugle)<br>Makezine.com (O'Reilly)<br>The Code Project (The Code Project)</blockquote> <img src ="http://www.blogjava.net/qixiangnj/aggbug/94920.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-01-19 13:57 <a href="http://www.blogjava.net/qixiangnj/archive/2007/01/19/94920.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】Software - How Software Companies Die</title><link>http://www.blogjava.net/qixiangnj/archive/2007/01/09/92595.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Tue, 09 Jan 2007 06:35:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/01/09/92595.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/92595.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/01/09/92595.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/92595.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/92595.html</trackback:ping><description><![CDATA[From: <a href="http://www.apocalypse.org/pub/u/kjc/cool/Card.on.Software.html">http://www.apocalypse.org/pub/u/kjc/cool/Card.on.Software.html</a><br><br>
<h1>Software - How Software Companies Die</h1>
<ul><em>By Orson Scott Card</em></ul>
    <hr>
    <p>The environment that nutures creative programmers kills management and marketing types - and vice versa. Programming is the Great Game. It consumes you, body and soul. When you're caught up in it, nothing else matters. When you emerge into daylight, you might well discover that you're a hundred pounds overweight, your underwear is older than the average first grader, and judging from the number of pizza boxes lying around, it must be spring already. But you don't care, because your program runs, and the code is fast and clever and tight. You won. You're aware that some people think you're a nerd. So what? They're not players. They've never jousted with Windows or gone hand to hand with DOS. To them C++ is a decent grade, almost a B - not a language. They barely exist. Like soldiers or artists, you don't care about the opinions of civilians. You're building something intricate and fine. They'll never understand it.
    </p>
    <p>BEEKEEPING
    </p>
    <p>Here's the secret that every successful software company is based on: You can domesticate programmers the way beekeepers tame bees. You can't exactly communicate with them, but you can get them to swarm in one place and when they're not looking, you can carry off the honey. You keep these bees from stinging by paying them money. More money than they know what to do with. But that's less than you might think. You see, all these programmers keep hearing their parents' voices in their heads saying "When are you going to join the real world?" All you have to pay them is enough money that they can answer (also in their heads) "Geez, Dad, I'm making more than you." On average, this is cheap. And you get them to stay in the hive by giving them other coders to swarm with. The only person whose praise matters is another programmer. Less-talented programmers will idolize them; evenly matched ones will challenge and goad one another; and if you want to get a good swarm, you make sure that you have at least one certified genius coder that they can all look up to, even if he glances at other people's code only long enough to sneer at it. He's a Player, thinks the junior programmer. He looked at my code. That is enough. If a software company provides such a hive, the coders will give up sleep, love, health, and clean laundry, while the company keeps the bulk of the money.
    </p>
    <p>OUT OF CONTROL
    </p>
    <p>Here's the problem that ends up killing company after company. All successful software companies had, as their dominant personality, a leader who nurtured programmers. But no company can keep such a leader forever. Either he cashes out, or he brings in management types who end up driving him out, or he changes and becomes a management type himself. One way or another, marketers get control. But...control of what? Instead of finding assembly lines of productive workers, they quickly discover that their product is produced by utterly unpredictable, uncooperative, disobedient, and worst of all, unattractive people who resist all attempts at management. Put them on a time clock, dress them in suits, and they become sullen and start sabotaging the product. Worst of all, you can sense that they are making fun of you with every word they say.
    </p>
    <p>SMOKED OUT
    </p>
    <p>The shock is greater for the coder, though. He suddenly finds that alien creatures control his life. Meetings, Schedules, Reports. And now someone demands that he PLAN all his programming and then stick to the plan, never improving, never tweaking, and never, never touching some other team's code. The lousy young programmer who once worshiped him is now his tyrannical boss, a position he got because he played golf with some sphincter in a suit. The hive has been ruined. The best coders leave. And the marketers, comfortable now because they're surrounded by power neckties and they have things under control, are baffled that each new iteration of their software loses market share as the code bloats and the bugs proliferate. Got to get some better packaging. Yeah, that's it.
    </p>
    <p>&#160;</p>
    <hr><em>This essay was composed by Orson Scott Card. I found it floating around the Internet.</em> <img src ="http://www.blogjava.net/qixiangnj/aggbug/92595.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-01-09 14:35 <a href="http://www.blogjava.net/qixiangnj/archive/2007/01/09/92595.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】2006 Top Software Development News and Content on InfoQ.com</title><link>http://www.blogjava.net/qixiangnj/archive/2007/01/05/91884.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 05 Jan 2007 01:01:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/01/05/91884.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/91884.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/01/05/91884.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/91884.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/91884.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Top Viewed Content Over all Communities in 2006#1 A Look at Common Performance Problems in Rails(article, Jun 13)#2 Sun open sources Java SE, ME, &amp; Glassfish under GPL(news, Nov 12...&nbsp;&nbsp;<a href='http://www.blogjava.net/qixiangnj/archive/2007/01/05/91884.html'>阅读全文</a><img src ="http://www.blogjava.net/qixiangnj/aggbug/91884.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-01-05 09:01 <a href="http://www.blogjava.net/qixiangnj/archive/2007/01/05/91884.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】任正非最新讲话：18年华为没有1项原创发明</title><link>http://www.blogjava.net/qixiangnj/archive/2007/01/01/91324.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Mon, 01 Jan 2007 14:15:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2007/01/01/91324.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/91324.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2007/01/01/91324.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/91324.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/91324.html</trackback:ping><description><![CDATA[&nbsp;　　<strong>一、华为的一些实践</strong><br><br>　　华为公司作为一家高科技企业，从创业开始，就始终坚持市场的商业成功为导向，一切投资、一切管理的改进都紧紧围绕产品的市场商业成功，尤其摒弃的是脱离商业成功导向的、唯技术的创新。这种盲目自傲的创新，对于我们没有资金来源的公司来说，无异自杀。 <br><br>　　华为在过去的18年里每年坚持投入销售收入的10％以上在研发上，尤其是最近几年，有超过二万五千名员工从事研发工作，资金投入都维持在每年70、80亿元以上，经过十八年的艰苦奋斗，<strong>至今为止，华为没有一项原创性的产品发明，主要做的、所取得的是在西方公司的成果上进行了一些功能、特性上的改进和集成能力的提升，更多的是表现在工程设计、工程实现方面的技术进步</strong>，与国外竞争对手几十年、甚至上百年的积累相比还存在很大差距；对于我们所缺少的核心技术，华为只是通过购买的方式和支付专利许可费的方式，实现了产品的国际市场的市场准入，并在竞争的市场上逐步求得生存，这比自己绕开这些专利采取其他方法实现，成本要低得多，由于我们的支付费用，也实现了与西方公司的和平相处。 <br><br>　　2004年华为公司推向市场的一款WCDMA的分布式基站，相比传统的基站，运营商每年的运行/运维费用包括场地租金、电费等可以节约30%，为客户带来了价值的同时体现了产品的竞争力，从而获得了客户的好评和选择。这款分布式基站没有革命性的技术，也不存在过多的技术含金量，仅仅是工程工艺上的改进而已。 <br><br>　　事实上，在产品的工程实现技术方面，我们也经常遇到瓶颈，包括算法、散热技术、工艺技术、能源、节能等在内都时常成为我们在竞争中获得优势的障碍。为了解决这些问题，克服发展障碍，我们也不全靠自主开发，因为等自主开发出来了，市场机会早没有了，或对手已在市场上构筑了优势，我们没法在竞争的市场上获利，所以，我们经常采用直接购买技术的方式来缩短差距并构筑领先。 <br><br>　　我们有一款全球领先而且份额占据第一的产品，在功能、性能上超越竞争对手的一个关键技术，是我们通过购买某外国公司的技术而获得的。我们寻找并选择了一家超长光传送技术和产品解决方案研究上非常领先的厂家，该公司累计投入已经超过$70M，其技术主要应用在骨干长途光传送系统中，网络地位非常重要，经分析认为其产品和技术具有很高的市场价值，最后决定购买该技术。经过技术转移和二次开发，以及必要的法律手续，在短短的9个月时间内完成了集成开发，成功推出应用了新关键技术的产品，实现了大容量、长距离（4600公里）无电中继的光传输。03年推出该解决方案以来，在相关市场上得到快速发展，从最初的全球名不见经传的长途传输厂家，到2005年就已经快速成长为全球在长途传输市场第一的厂家，并保持稳固的地位，特别值得一提的是：依靠优异的性价比，我们在拉美最大的固定运营商Telemar的653光纤系统上，依靠比其他厂家更强的带宽传送能力实现了市场突破性应用。 <br><br>　　华为公司清醒地认识到，我们在技术上需要韬光养晦，必须承认国际厂商领先了许多，这种巨大的差距是历史形成的，一方面，由于发达国家创新机制的支持，普及了创新的社会化，技术获取相对容易；另一方面，当我们还在创始时期起步阶段，国外有些专利就已经形成了，无论是系统实现原理的还是技术实现细节的，国际领先厂商已经领先很多了。市场本身是开放的，但是我们要真正在全球市场上能够占有一席之地，使我们的产品和系统能够进入国际市场，我们只有通过谈判，支付合理的许可费用，才能够使得市场对我们也是开放的，也只能这样，才能扩展我们的市场空间，扩展我们的生存空间，这对我们是有利的，至少可以利用我们的相关优势拉动巨大的制造业前进。 <br><br>　　华为公司历来尊重别人的知识成果和知识产权，同时也注意保护自己的知识产权。华为真诚地与众多西方公司按照国际惯例达成有关知识产权谈判和交叉许可，我们在多个领域多个产品与相应的厂商通过支付许可费的方式达成了交叉许可协议。宽带产品DSLAM，是阿尔卡特发明的，我们经过两年的专利交叉许可谈判，已经与其他公司达成了许可，我们会支付一定的费用，换来的是消除了在全球进行销售的障碍，经过努力，我们的DSLAM市场份额达到了全球第二。国际市场是一个法治的环境，也是一个充满官司的环境，华为有了这些宝贵的经验，今后就不会慌张失措了。华为以后依然要在海外取得规模收入，如果没有与西方公司达成许可协议和由此营造的和平发展环境，这个计划就不能实现。我们付出专利许可费，但我们也因此获得更大的产值和更快的成长。 <br><br>　　今天，由于技术标准的开放与透明，未来再难有一家公司，一个国家持有绝对优势的基础专利，这种关键专利的分散化，为交叉许可专利奠定了基础，相互授权使用对方的专利将更加普遍化。由于互联网的发达，使创造发明更加广泛化了、更容易了。我们充分意识到需要在知识产权方面融入国际市场&#8220;俱乐部&#8221;，知识产权是国际市场的入门券，没有它高科技产品就难以进入到国际市场。 <br><br>　　虽然华为每年按销售收入的10%以上投入研究开发，在研究经费的数量级上缩小了与西方公司的差距，也在IPR上缩小差距，目前华为已有一万多项专利申请，但相对世界几十年的积累仍是微不足道的。IPR投入是一项战略性投入，它不像产品开发那样可以较快的、在一、两年时间内就看到其效果，这需要一个长期的、持续不断的积累过程。 <br><br>　　我们也充分地认识到了基本专利的成长过程是十分漫长而艰难的，基础专利的形成是要经历很长的时间，要耐得寂寞，甘于平淡，急躁反而会误事。基本专利的形成是冰冻三尺，非一日之寒。即使是应用型基本专利的成长过程也至少需要3～5年。我们一直倡导并建立了相应机制，鼓励板凳要坐十年冷，同时坚定地走出去积极融入国际性行业组织中，广泛地与业界同道交流、合作、协调；特别是在行业论坛以及行业标准开发组织中积极参与，共同致力于行业的成长和发展。虽然我们在国内外总共申请了超过1万件专利，但我们知道真正的核心的基本专利还不多，我们还会持之以恒地而且仍然在功能、特性、工程实现技术等方面加强投入，继续反对盲目创新、反对小农意识、反对自我封闭、反对闭门造车，坚持合作与自研并重，在把握行业发展趋势的同时顺应业界的潮流、顺应相应的规则下，厚积薄发、投放有序、广泛合作、优势互补，共同推进行业的发展和进步、构建良好的商业发展环境。 <br><br>　　<strong>二、华为的发展情况</strong><br><br>　　华为公司成立于1988年，在党和政府的关怀下，经过十八年的艰苦努力，由当初十几人发展成为现在六万多名员工的公司。十八年来，华为累计缴纳关税、增值税、企业所得税、个人所得税等各项税收253亿人民币。 <br><br>　　华为公司长期聚焦通信领域的设备研发、制造和为客户提供解决方案，经过多年的奋斗，今天可以提供电信领域的较完善的端到端解决方案，产品覆盖移动通信、数据通信、光网络、固定通信、电信应用业务与软件、终端等领域。 <br><br>　　华为在北京、深圳、上海、南京、西安、成都、武汉等地设立了研发机构，并建立了国际化的全球同步研发体系，在印度的班加罗尔、美国的达拉斯、美国的圣地亚哥、瑞典的斯德哥尔摩、俄罗斯的莫斯科等建立了研究所。华为公司重视研发质量管理，全面实施CMM5（国际上软件开发管理的最高等级）和集成产品开发流程（IPD）等管理流程和方法，从事软件研发的机构基本上都通过了CMM5级国际认证。 <br><br>　　中国是世界上最大的新兴市场，因此，世界巨头都云集中国，公司创立之初，就在自己家门口碰到了全球最激烈的竞争，我们不得不在市场的狭缝中求生存；当我们走出国门拓展国际市场时，放眼一望，所能看得到的良田沃土，早已被西方公司抢占一空，只有在那些偏远、动乱、自然环境恶劣的地区，他们动作稍慢，投入稍小，我们才有一线机会。为了抓住这最后的机会，1996年开始，众多华为员工离别故土，远离亲情，奔赴海外，无论是在疾病肆虐的非洲，还是在硝烟未散的伊拉克，或者海啸灾后的印尼，以及地震后的阿尔及利亚&#8230;&#8230;，到处都可以看到华为人奋斗的身影。我们有员工在高原缺氧地带开局，爬雪山，越丛林，徒步行走了 8天，为服务客户无怨无悔；有员工在国外遭歹徒袭击头上缝了三十多针，康复后又投入工作；有员工在宿舍睡觉，半夜歹徒破门而入拿枪顶着我们的员工进行抢劫；我们在拉美某地的班车也遭遇持枪歹徒抢劫，全车人被抢；即使是货物运送，也经常需要雇佣特殊人员护卫；有员工在飞机失事中幸存，惊魂未定又救助他人，赢得当地政府和人民的尊敬；也有员工在恐怖爆炸中受伤，或几度患疟疾，康复后继续坚守岗位；在一些国家，我们有70%的中国籍员工得过疟疾；我们还有三名年轻的非洲籍优秀员工在出差途中飞机失事不幸罹难，永远地离开了我们&#8230;&#8230;。 <br><br>　　在资金缺乏、竞争激烈的独联体市场，华为人忍辱负重、默默耕耘了10年，从获得第一单38美金的合同起，集腋成裘，到2005年销售额6亿美元，成为公司重要的市场。在要求严格的欧洲市场，经历三年的认证，我们终于通过了英国电信的考试，成为英国电信重要合作伙伴；为获得中东某电信运营商的认可，面对世界级电信设备商的竞争，我们冒着室外60度的高温进行现场作业，长达数月，靠着全心全意为客户服务的诚意，经过2年多的坚持不懈，终于开通了我司全球第一个3G商用局&#8230;&#8230; <br><br>　　经过十年来的不懈奋斗和挣扎，华为逐渐地在海外取得了一些收获，2005年海外的收入超过了国内，尽管也进入了部分发达运营商的市场，但是我们在超过一半的市场空间里基本上是没有突破，尤其在北美、西欧和日本。 <br><br>　　我们所处的行业方向选择太多而且还处在巨大变化之中，我们一直存在生存危机也一直生存在危机中，华为的衰退和倒闭一定会到来，而只有时时警醒我们自己，我们才能进步，才能延迟或避免衰退和倒闭的到来。 <br><br>　　<strong>三、面对我们所处的产品过剩时代，华为人除了艰苦奋斗还是艰苦奋斗。从来就没有什么救世主，也不靠神仙皇帝，要创造我们的幸福，全靠我们自己。</strong><br><br>　　中国高科技企业的成长之路注定充满坎坷与荆棘。选择了这条道路的人生注定艰辛与劳碌，同时也更有价值。 <br><br>　　在中国，在高技术领域做一个国际化的企业、开拓全球市场，我们没有任何经验可以借鉴，完全靠摸索，在市场中摸爬滚打，在残酷的竞争中学习； <br><br>　　在中国，做一个以几万年轻知识分子为主的企业，竞争又是全球范围和世界级水平，我们没有任何成功的实践可以借鉴； <br><br>　　在中国，做一个企业，竞争对手是全球各发达国家的世界级巨子，他们有几十年甚至一百多年的积累，有欧美数百年以来发展形成的工业基础和产业环境，有世界发达国家的商业底蕴和雄厚的人力资源、社会基础，有世界一流的专业技术人才和研发体系，有雄厚的资金和全球著名的品牌，有深厚的市场地位和客户基础，有世界级的管理体系和运营经验，有覆盖全球客户的庞大的营销和服务网络。面对这样的竞争格局，面对如此的技术及市场壁垒，我们没有任何经验可以借鉴。 <br><br>　　十八年来，我们公司高层管理团队夜以继日的工作，许多高级干部几乎没有什么节假日，所有的主管24小时不能关手机，随时随地都在处理随时发生的问题。现在，更因为全球化后的时差问题，总是连轴转地处理事务和开会。我们没有国际大公司积累了几十年的市场地位、人脉和品牌，没有什么可以依赖，我们只有比别人更多一点奋斗，只有在别人喝咖啡和休闲、健身的时间都在忘我努力地工作，否则，我们根本无法追赶上竞争对手的步伐，根本无法缩小与他们的差距。 <br><br>　　经历90年代初艰难的日子，在资金技术各方面都匮乏的条件下，我们咬牙把鸡蛋放在一个篮子里，紧紧依靠集体奋斗，群策群力，日夜攻关，利用压强原则，重点投入重点突破，我们终于研制出了我们的第一台通讯设备——数字程控交换机。 <br><br>　　公司创业之初，我们没有资金，是创业者们把自己的工资、奖金投入到公司，每个人只能拿到很微薄的报酬，发工资经常打白条，绝大部分干部、员工长年租住在农民房，用有限的资金购买原材料、购买实验测试用的示波器，正是老一代华为人&#8220;先生产，后生活&#8221;的奉献，才挺过了公司最困难的岁月，支撑了公司的生存、发展，才有了今天的华为。一直到2001年，我们才拿出了所获得的利润的一部分来改善我们的员工的生活，让我们的部分员工解除了基本的生活上的后顾之忧。 <br><br>　　由于我们年轻，无法避免地在解决方案的理解上不准确，无法避免地在设计、实现上存在幼稚和缺陷。1998年，交换机用户板因为设计不合理，导致对全网一百多万块用户板进行整改；2000年，光网络设备因为电源问题，为了对客户负责和诚信，我们从网上回收、替换了20多万块板子，这些板子在仓库里堆积如山，造成损失十几亿；西欧某运营商，由于我们对于客户的需求理解偏差大，造成无法及时交付，只能按合同赔偿；亚太的一个移动运营商，选择我们的彩铃系统，由于工期极其紧张，导致工程质量低，造成诸如鸳鸯线等低级错误，给客户造成很大影响；VPN系统由于没有考虑逃生设计，局部故障导致系统中断，客户无法使用业务；系统操作、管理权限不是基于使用者而是基于角色设计的，由于权限过大，误操作导致整个系统瘫痪等等，无不是因为我们的年轻和幼稚，因为这种年轻和幼稚，所以我们必须也只能付出更多代价，系统的设计和研发要推倒重来，过去的工作等于是白做了。为了还能够赶得上市场的节奏，为了还能够从市场上获得竞争先机，我们只能付出比别人更多的精力来工作，加班累了，就在办公室铺下垫子睡一觉，醒了就继续干；思路没了，就在办公室铺下垫子睡一觉，有了思路就继续干，所以也造就了华为公司传承至今的垫子文化。 <br><br>　　2001年开始的网络泡沫，市场急剧下滑和萎缩，尤其是2002年，华为深深地感受到了严冬的寒冷和彻骨。那一年，我们公司的销售是负增长，公司很多员工因为暂时的不利处境，纷纷离开公司，更加使华为公司雪上加霜的是，不少离开公司的员工离开的时候带走了华为公司的源程序、设计原理图等核心商业机密信息，在外面或自己开公司或有偿泄漏给同业者进行仿制，这种零成本、无投入的仿制，在市场上还全面形成了对华为的正面竞争，几乎造成华为公司的灭顶之灾。 <br><br>　　由于对市场形势和发展判断失误，我们错失了很多可以获得收益和利润的市场机会；由于没有准确判断泡沫带来的低谷，对局部市场和产品盲目乐观，造成了5亿元的器件库存和积压；NGN至今亏损超过10亿、3G至今亏损超过40亿，不知道什么时候才能收回投资。 <br><br>　　住两块钱的招待所，顿顿吃方便面，睡机房，我们经常经历；跟我们在同一个客户那里出差的竞争对手的工程师，住的是当地最高档的宾馆，我们是多么地羡慕；在同一个机房干活的竞争对手的工程师，一到下午下班时间就收拾东西走了，而我们还在吭哧吭哧地干，我们还是羡慕。 <br><br>　　我们通过集体降薪来支撑住公司；我们通过忘我工作来弥补我们年轻造成的过错；我们通过舍家别妻奔赴海外开疆拓土来为公司过冬添棉袄。公司上下同心同德卧薪尝胆，我们挺到了今天。 <br><br>　　自公司创立那一天起，我们历经千辛万苦，一点一点地争取到订单和农村市场；另一方面我们把收入都拿出来投入到研究开发上。当时我们与世界电信巨头爱立信、阿尔卡特等的规模相差200倍之多。通过一点一滴锲而不舍的艰苦努力，我们用了十余年时间，终于在2005年，销售收入首次突破了50亿美元，但与通信巨头的差距仍有好几倍。最近不到一年时间里，业界几次大兼并，一下子使已经缩小的差距又陡然拉大了。我们刚指望获得一些喘息，直一直腰板，拍打拍打身上的泥土，没想到又要开始更加漫长的艰苦跋涉&#8230;&#8230; <br><br>　　05年春节晚会上，《千手观音》给了我们很大震撼。那些完全听不到声音，也许一生都不知道什么是声音的孩子，在没有任何音乐协调的情况下，形成那么整齐划一的动作，那么精美绝伦的演出，其中的艰辛和付出可想而知。华为数万名员工，正同他们一样，历经千辛万苦，才取得今天一点进步。但我们始终认为华为还没有成功，华为离成功还很远，华为的国际市场刚刚有了起色，所面临的外部环境比以往更严峻。海外很多市场刚爬上滩途，随时会被赶回海里；产业和市场风云变幻，刚刚积累的一些技术和经验又一次面临自我否定。在这关键时刻，我们不能分心，不能动摇甚至背弃自己的根本，无论现在、还是将来，我们除了艰苦奋斗还是艰苦奋斗。 <img src ="http://www.blogjava.net/qixiangnj/aggbug/91324.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2007-01-01 22:15 <a href="http://www.blogjava.net/qixiangnj/archive/2007/01/01/91324.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】优秀软件开发人员的五个好习惯 —— 译自 java.net</title><link>http://www.blogjava.net/qixiangnj/archive/2006/12/16/88072.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Fri, 15 Dec 2006 16:01:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2006/12/16/88072.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/88072.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2006/12/16/88072.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/88072.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/88072.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 原文地址：http://www.blogjava.net/chords/archive/2006/12/14/87591.htmlFive Habits of Highly Profitable Software Developersby Robert J. Miller08/24/2006翻译：Coody Sk8er&nbsp; http://www.blogjava.net/chords原文地...&nbsp;&nbsp;<a href='http://www.blogjava.net/qixiangnj/archive/2006/12/16/88072.html'>阅读全文</a><img src ="http://www.blogjava.net/qixiangnj/aggbug/88072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2006-12-16 00:01 <a href="http://www.blogjava.net/qixiangnj/archive/2006/12/16/88072.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【转载】4个程序员的一天</title><link>http://www.blogjava.net/qixiangnj/archive/2006/11/21/82607.html</link><dc:creator>Thomas</dc:creator><author>Thomas</author><pubDate>Tue, 21 Nov 2006 12:58:00 GMT</pubDate><guid>http://www.blogjava.net/qixiangnj/archive/2006/11/21/82607.html</guid><wfw:comment>http://www.blogjava.net/qixiangnj/comments/82607.html</wfw:comment><comments>http://www.blogjava.net/qixiangnj/archive/2006/11/21/82607.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/qixiangnj/comments/commentRss/82607.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/qixiangnj/services/trackbacks/82607.html</trackback:ping><description><![CDATA[原文地址：<a href="http://www.cnblogs.com/linkcd/archive/2005/07/19/196087.html">http://www.cnblogs.com/linkcd/archive/2005/07/19/196087.html<br></a><br>【声明：本文没有贬低某个编程语言的意思】<br>Please Note: 2005/10/14<br>I found some friends republished this post and forget keep the&nbsp;original information, so please:<br><br>1. Please don't forget keep the original address in your post.<br>2. Please don't modify it.<br><br>Thanks.<br><br>你，一个DotNet程序员，刚刚加入一个新项目组。除了你之外，其他的成员包括：Ceer，一直从事C项目的程序员，他刚刚转入C#不到一个月； Jally，整天抱着本Design Pattern（没错，就是GoF的那本）在啃的前Java程序员；以及Semon，你对他完全不了解，只是听PM介绍说他是搞Scheme的（传说中的第二古老的语言LISP的方言之一）。不过你也没在意，毕竟计算机这玩意，老东西是不吃香的。<br><br>周一，刚打开电脑，老板就跑到你们组的办公座面前：&#8220;好吧，伙计们，现在有个function需要你们来搞定。具体是这样的：用户输入2个数，并输入一个操作符。你根据输入的情况来得出相应的运算结果。&#8220;<br><br>Example： Foo(+, 1, 2) = 3; Foo(*, 3, 6) = 18; Foo(/, 2, 4) = 0.5<br><br>Ceer最先作出反应：简单嘛，判断一下输入的操作符就好了。说着，他很快在白板上写出如下代码：<br>&nbsp;&nbsp;&nbsp; public class CStyle_Calculator<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; static public double Foo(char op, double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; switch(op)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case '+': return x + y; break;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case '-': return x - y; break;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case '*': return x * y; break;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; case '/': return x / y; break;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; default: throw new Exception(&#8221;What the Hell you have input?");<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>Jally只看了一遍，就捂着鼻子连连摇头：好一股的代码臭味【注1】。还不如看我用OO的方法来解决：<br>&nbsp;&nbsp;&nbsp; public interface I操作符 //谁说代码不能写中文的？恩恩<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double 运算(double x, double y);<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class OO_Calculator<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; private I操作符 m_op;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public OO_Calculator(I操作符 op)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; this.m_op = op; //依赖注入【注2】<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public double Foo(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return this.m_op.运算(x, y);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class 加法:I操作符<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public double 运算(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return x + y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class 减法:I操作符<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public double 运算(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return x - y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class 乘法:I操作符<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public double 运算(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return x * y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class 除法:I操作符<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public double 运算(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return x / y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class TheMainClass<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; static public void Main()<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; I操作符 我的加法 = new 加法();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; OO_Calculator 我的加法器 = new OO_Calculator(我的加法);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double sum&nbsp; = 我的加法器.Foo(3, 4);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.Console.WriteLine(sum);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //sum = 7<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //其他3个我就不废话了<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br><br>你看着Jally把白板写得密密麻麻之后，耸耸肩，暗叹，你们这些用java的废柴，就一个运算器还搞出Interface这些东西，烦不烦啊。 让你们见识见识DotNet的强大吧. 那个运算符我直接用delegate传进去不就好了么.<br>&nbsp;&nbsp;&nbsp; public delegate double TheOperator(double x, double y);<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class Operators<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; static public double Add(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return x + y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; static public double Sub(double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return x - y;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; //乘，除法 我也懒得废话了<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class DotNet_Calculator<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; public double Foo(TheOperator op, double x, double y)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return op(x, y);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; public class TheMainClass<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; static public void Main()<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; TheOperator myAdd = new TheOperator(Operators.Add);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; TheOperator mySub = new TheOperator(Operators.Sub);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; DotNet_Calculator dc = new DotNet_Calculator();<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double sum = dc.Foo(myAdd, 2, 4); //sum = 6<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.Console.WriteLine(sum);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; double sub = dc.Foo(mySub, 3, 7); //sub = -4<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; System.Console.WriteLine(sub);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; //dot net 下面还可以用CodeDom动态构造C＃代码，然后在内存编译运行。<br>&nbsp;&nbsp;&nbsp; //如果觉得专门写个Operators很烦的话，可以试试C＃2.0的匿名方法<br><br>很好，当你写完代码之后，挑衅的看着Jally，Ceer却开始抱怨起来：&#8221;这不就是C里面的函数指针么，我也会...&#8220; <br>&#8220;然则DotNet下面的Delegate是类型安全滴...&#8221;你继续洋洋得意.<br>&nbsp;&nbsp;&nbsp; <br>而Semon，看了看你们3位华丽的代码，啥也没说，只是在键盘上敲下了2行代码<br><br>(define (Foo op x y)<br>&nbsp;&nbsp;&nbsp; (op x y))<br><br>然后就下班了...<br><br>【注： scheme的代码稍微解释下：(+ 1 2) = 3, (* 3 4) = 12.】<br>至于Semon的解法：<br>(define (Foo op x y)<br>&nbsp; (op x y))<br><br>看明白了么，上面的代码只有一个作用：第一行是函数头，定义了一个叫Foo的函数。该函数接受3个参数op, x, y。<br>第二行定义了函数的行为：把第一个参数op当作运算符，计算后面2个参数。<br>所以：（Foo + 1 2) = 3. (Foo / 12 6) = 2.<br><br>好了好了，不编故事了。<br>我只是想简单的让大家在繁忙的工作之余，也瞅瞅Function Programming（函数编程）世界的美妙。函数编程，最大的特点是它是将函数作为语言里1st class的元素来对待的。一个函数可以接受另一个函数作为参数，也可以把一个函数作为结果来返回。这样的函数我们称为Higher-order function。<br><br>那么，Function Programming和我们传统的面向对象有啥区别捏？恩，这个嘛，扯得远可以扯到图灵机和冯&#183;诺以曼这2种体系的差异...@_@不过那个太学术性，俺就不说了。不过有句话可以较好的概括FP和OO的区别（好吧，这个也是抄&#8220;紫皮书&#8221;上面的）：<br><br>&#8220;Pascal是为了建造金字塔...Lisp是为了建造有机体...&#8221;&#8220;作为Lisp的内在数据结构，表对于这种可用性起着重要的提升作用...&#8221;&#8220;采用100函数在一个数据结构上操作，远远优于采用10个操作在十个数据结构上工作&#8221;&#8220;金字塔矗立在那里千年不变，而有机体则必须演化，否则就会消亡&#8221;。<br><br>而另一个总结得比较好的话是：（同样是抄来的）<br><br>一个对象：一组相同的运算上面，外加不同的数据。（想想你的object，是不是这样的？）<br>一个Closure：一组相同的数据，外加不同的操作。（Delegate就是这样的思想，有兴趣的话也可以去看看Ruby）<br><br>基本上，恩，没啥说的了。 如果你感兴趣的话，可以去看MIT SICP的课程（有在线版的，MIT也作为Open Course开设了的）<br><br>参考文献：<br>Java 语言中的函数编程(偶FP的入门贴。查叔叔，我膜拜您）<br>http://www.hibernate.org.cn/viewtopic.php?t=7569&amp;postdays=0&amp;postorder=asc&amp;start=0<br><br>Lambda Calculus<br>http://www.mactech.com/articles/mactech/Vol.07/07.05/LambdaCalculus/<br><br>Java 语言中的函数编程<br>http://www-128.ibm.com/developerworks/cn/java/j-fp/<br><br>【注1】<br>见Bob大叔的《ASD》一书<br><br>【注2】<br>Flower的依赖注入模式，Ioc容器啥的是这里来的<br>  <img src ="http://www.blogjava.net/qixiangnj/aggbug/82607.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/qixiangnj/" target="_blank">Thomas</a> 2006-11-21 20:58 <a href="http://www.blogjava.net/qixiangnj/archive/2006/11/21/82607.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>