﻿<?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-走自己的路-随笔分类-Life</title><link>http://www.blogjava.net/ldd600/category/32967.html</link><description>路漫漫其修远兮，吾将上下而求索</description><language>zh-cn</language><lastBuildDate>Wed, 06 Jan 2010 10:15:09 GMT</lastBuildDate><pubDate>Wed, 06 Jan 2010 10:15:09 GMT</pubDate><ttl>60</ttl><item><title>2009年工作总结</title><link>http://www.blogjava.net/ldd600/archive/2010/01/06/308440.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Wed, 06 Jan 2010 06:40:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2010/01/06/308440.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/308440.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2010/01/06/308440.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/308440.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/308440.html</trackback:ping><description><![CDATA[&nbsp;
<p><strong>CUSTOMER FOCUS</strong></p>
<p>Be patient to listen to application users to speak out their requirements. Try best to satisfy all the reasonable requirements put forward by them. Suppose and analyze their potential requirements and guide them, differentiate urgent and uncritical requirements. Put customer requirements at the first place.</p>
<p><span style="font-family: 宋体">耐心的倾听客户阐述他们的需求，尽量满足用户提出的所有需求，猜想并分析用户可能需要的潜在需求，引导他们。区别紧急和不重要的需求。将用户的需求放在第一位。</span></p>
<p><strong>RESULT ORIENTATION</strong></p>
<p>Strive to be complete tasks on time or ahead of its mandate, and deliver mature products</p>
<p><span style="font-family: 宋体">力争提前完成自己的任务，交付成熟的产品</span></p>
<p><strong>ACHIEVEMENT DRIVE</strong></p>
<p>If our outputted software solves customers&#8217; problems, it is a sense of accomplishments to us. Software with clear architecture, good scalability, high readability and maintainability always make me feel comfortable.</p>
<p><span style="font-family: 宋体">写出的软件解决了客户的问题本身就是一种成就感。写出的软件架构清晰，可读性强，可维护性高也会使人开心。</span></p>
<p><strong>TEAMWORK</strong></p>
<p>Usually discussing and solving problems with team members, studying new techs and sharing with partners, Learning from each other and making progress, developing projects with my team members.</p>
<p><span style="font-family: 宋体">和小组成员一起讨论，研究和解决各种问题，合作开发项目，事半功倍，互相学习，不断进步。</span></p>
<p><strong>COMMUNICATION</strong></p>
<p>Firstly, I learn to be a pro-listener to understand each other&#8217;s intensions. Then, I organize my own thoughts, and speak out swimmingly in a way accepted by the other ones.</p>
<p><span style="font-family: 宋体">学做亲听者</span>,<span style="font-family: 宋体">了解对方的意图</span>,<span style="font-family: 宋体">换位思考</span>, <span style="font-family: 宋体">组织好自己的想法</span>,<span style="font-family: 宋体">用对方能接受的方式畅快的表达出来</span>.</p>
<p><strong>INNOVATION</strong></p>
<p>Technical innovation always happens, only through continuous research and creations, individuals are able to achieve greater efficiency to the company. </p>
<p><span style="font-family: 宋体">技术是不断革新的，只有通过个人的不断学习和创新才能为公司取得更大的效益。</span></p>
<p><strong>LEADERSHIP</strong></p>
<p>In the passed half year, I have pursued the implementation of rules of baselines.</p>
<p><span style="font-family: 宋体">在过去的半年内，曾在小组内部推行</span>baseline<span style="font-family: 宋体">的规则</span></p>
<p><strong>PROBLEM SOLVING &amp; DECISION MAKING</strong></p>
<p>A major duty of framework developer is when there is some difficult technical problem coming out with frameworks or products, I need to respond to application user and solve the problem ASAP. Sometimes, framework developer needs to make decision on used technologies, even the whole architecture.</p>
<p>Framework<span style="font-family: 宋体">开发者重要职责就是对用户出现技术难题的时候能够快速响应并解决。平时需要有能力对采用的技术和架构作出决定</span></p>
<p><strong>MNAGING RELATIONSHIP</strong></p>
<p>Application user is our nice customers, it is important to make a solid relationship with them. I often help my team members to solve difficult technical problems, cooperate with them to complete projects.</p>
<p>Application team<span style="font-family: 宋体">是我们的客户，需要和他们打好关系。经常帮助小组成员解决一些技术问题，共同合作完成项目的开发。</span></p>
<img src ="http://www.blogjava.net/ldd600/aggbug/308440.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2010-01-06 14:40 <a href="http://www.blogjava.net/ldd600/archive/2010/01/06/308440.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java Jingle</title><link>http://www.blogjava.net/ldd600/archive/2009/09/11/294665.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Thu, 10 Sep 2009 23:25:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/09/11/294665.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/294665.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/09/11/294665.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/294665.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/294665.html</trackback:ping><description><![CDATA[Java Posse上总是听到这首歌，昨天把它download下来，确实还有点意思。呵呵。歌词挺搞笑的，sounds funny<br />
<a href="http://blogs.sun.com/dcb/resource/Java.mp3">http://blogs.sun.com/dcb/resource/Java.mp3<br />
</a><br />
<strong>歌词大意：</strong><br />
<br />
<h1>&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; Java by "Loose Bruce" Kerr </h1>
<p align="center">Java, Java, Java Java jing-jing-jing<br />
Java, Java, Java Java jing-jing-jing<br />
<br />
It's not a cup of coffee but it's hot as can be<br />
Came pourin' through the Gates on a "Big Mac" Nealy<br />
Singin', Java, Java, Java Java jing-jing-jing </p>
<p align="center">Microsoft thought Java really could be a threat<br />
Java through the Windows maybe put them in debt<br />
Gates, he took a license but he altered the feel<br />
Java members all said, "Bill, you're outa the deal!"<br />
<br />
Singin', Java, Java, Java Java jing-jing-jing<br />
Java, Java, Java Java jing-jing-jing<br />
<br />
It's like a cup of coffee 'cause it's tasty and fresh<br />
But it's not really Java if the flavors don't mesh<br />
Pure Java, Java, Java Java jing-jing-jing<br />
<br />
Microsoft released a browser, Java was there<br />
The Sun, it rose and lit up what was really a dare<br />
The RMI, the JNI were missing and lost<br />
Scott said, "Bill, you broke your promise, Now pay the cost!"<br />
<br />
Bill said, "Hey, my recipe is richer than yours"<br />
Scott said, "I own the coffee shop, sit down and I'll pour"<br />
<br />
Pour Java, Java, Java Java jing-jing-jing<br />
Java, Java, Java Java jing-jing-jing<br />
Nobody can tell yet what the future may bring<br />
All we know is Java goes jing-jing-jing<br />
<br />
It goes Java, Java, Java Java jing-jing-jing<br />
(Scott really means it)<br />
Java, Java, Java Java jing-jing-jing<br />
(Bill you better believe it)<br />
Java, Java Java jing-jing-jing</p>
 <img src ="http://www.blogjava.net/ldd600/aggbug/294665.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-09-11 07:25 <a href="http://www.blogjava.net/ldd600/archive/2009/09/11/294665.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>清纯和青春的90后同事---柳阿福的离开</title><link>http://www.blogjava.net/ldd600/archive/2009/05/27/278238.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Wed, 27 May 2009 09:49:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/05/27/278238.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/278238.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/05/27/278238.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/278238.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/278238.html</trackback:ping><description><![CDATA[<p><font style="background-color: #d8ffd5">今天下午，team里最90后的男孩离开了公司，即将搭乘灰机去俺们的首都，即将开始他那以忽悠人为主的职业生涯---咨询。飞哥在公司耕了六年地，作为技术人员，算是资深的了，我来公司这两年，跟在屁股后面，除了闻到臭屁之外，也学到了很多东西。<br />
<br />
回到两年前，踌躇满志的我刚刚从学校毕业，来到了上海徐家汇，第一天进公司，组长领着我拜会team中的童鞋们。飞哥躲在桌子挡板后面，突然探出他那充满智慧的小脑袋，脸上挂着一副磨的不成样子的高度近视眼镜，升出他那玉手和我深深的握了一把。当时给我的感觉是这家伙是不是刚从垃圾堆里爬出来的。<br />
<br />
过了些天，公司培训，一些资深的老员工给我们讲公司的业务，技术等。这天讲unit test，飞哥隆重登场，一上来就展示他那无与伦比的测试框架，当时忽悠我是一愣一愣的，太牛了，这也是我第一次听说mock。<br />
<br />
开始做我的第一个练手的项目了，团队是刚进来的所有菜菜们，飞哥是我们的顾问，也就是不懂的就问，他是顾问团的总管。周末了，当时的我是非常努力的，项目的任务也比较紧，周六，周末就信誓旦旦的来到了公司，开发这个谁也不会用的项目，当时的说法是给老板用的。哇塞，飞哥也在，而且来的比我还早，就在这两天我就学会了很多toplink相关的知识，使用ORM产品时该注意的问题。<br />
<br />
后来由于经常一起自觉加班，也逐渐熟悉起来，理所当然的加入了他们的饭团，从学校食堂吃到大楼食堂，从5元一顿涨到了8元一顿，因为学校不让外来民工进入食堂蹭饭，飞哥很伤心，因为那是他的母校，作为资深校友的他，确享受着和我这样外来民工的一样的不平等待遇。吃饭的时候是经常为技术争论的时刻，有时也会争论一些其他话题，比如杨大侠。我刚进公司的时候是一个很热爱党的同志，可是在飞哥这种民主人士的熏陶下，我也逐渐看到了我们党存在的弊端，偏离了党的指引，我是愤青团员。飞哥作为民主人士，经常会谈一下比较敏感的问题，so我们把他称为藏独分子，疆独分子，反党人士，五美分党，扎西飞，买买提飞。不好意思飞哥，这里还是要帮你澄清一下，虽然你的博客被封，但你还是维护祖国统一的。飞哥是个很节俭的人，只是对他自己，对别人是相当的豪爽的，所以经常可以蹭到饭。他节俭到什么程度呢，说两件事吧，一件10元的T恤穿了5年，配一副200元的眼镜说要带一辈子，因为先前他那眼镜已经只能反射了。<br />
</font></p>
<br />
有一天和飞哥突然争论两个模式的区别问题，还有bill和charisma，经过大家讨论，由于我们这些菜菜们对设计模式还不是很了解，决定请飞哥开坛讲经，接下来2，3个月的每个星期六，飞哥就开坛做法，给我们讲GOF，并结合了他做过的项目，结合实际范例教学，受益非浅。飞哥也因此获得了公司的TIP奖，好员工奖。拿到奖后，大家猛吃了一顿。学习小组在吃完饭后正式解散，声明一下不是因为把奖骗到手了，而是因为23个模式讲完了。<br />
<br />
和扎西飞合作的第一个项目是USF，还算pair吧，两个人开发，开发完了，对对方完成的模块都了如指掌，因为很多类都是共同完成的。这期间，我进一步了解了死不灵（spring），在死不灵上也做了很多开发，这个项目只是一个前瞻性的项目，因为我们公司很多team都没用spring。当时入伙主要原因是在GPS这个web application team干了两个月，对死不灵有了一些了解。飞哥是对死不灵极其推崇的，推崇它的依赖注入，面向接口，元数据解耦，transaction管理，spring aop，spring dao，spring template等。他一直宣称要好好阅读spring的源代码，虽然没有付诸行动，但是我知道他确实是想去阅读的，我相信到了北京后有充足的时间去发展他的开源计划了。<br />
<br />
帮飞哥搬家是我在这里两年干的最重的体力活了，15箱的书，最起码有10箱的书翻都没翻过。有一次，竟然还动用了目前比较先进的交通工具：人力三轮车，我们整整的搬了6趟，回到家后就只能躺着睡觉了。前两天是在上海最后一次帮飞哥搬家了，忙了一个下午，还算比较轻松，10多个箱子从6楼搬下来，两个人搞定，还去了两趟邮局。<br />
<br />
我们现在最关心的问题也就是飞哥的个人问题了，希望他到了北京后有突破性进展。飞哥是个非常喜欢成都和川妹子的好孩子，每年都会去四川，飞哥还拥有一颗爱心，512事件他估计捐了有5000元。还组织了很多民间的捐款活动，私下里他还资助贫困学生，身边的活雷锋，这个值得我们好好学习。<br />
<br />
在这两年里，飞哥是我的良师，更是益友，教了我非常多的东西，特别是技术方面，感谢他。<br />
<br />
仅以此文歌颂我们心目中永远90后的扎西买买提飞，顺祝他早日有扎西小小飞，早日有海景洋房，早日成为C*O，早日有他自己的死不灵。 
<img src ="http://www.blogjava.net/ldd600/aggbug/278238.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-05-27 17:49 <a href="http://www.blogjava.net/ldd600/archive/2009/05/27/278238.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>相当不错的婚礼视频</title><link>http://www.blogjava.net/ldd600/archive/2009/05/04/268767.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Mon, 04 May 2009 02:43:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/05/04/268767.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/268767.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/05/04/268767.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/268767.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/268767.html</trackback:ping><description><![CDATA[<object width="420" height="363"><param name="movie" value="http://www.tudou.com/v/qYx5n4WE2Pc" /></param><param name="allowFullScreen" value="true" /></param><param name="allowscriptaccess" value="always" /></param><param name="wmode" value="opaque" /></param><embed src="http://www.tudou.com/v/qYx5n4WE2Pc" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="opaque" width="420" height="363"></embed></object><img src ="http://www.blogjava.net/ldd600/aggbug/268767.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-05-04 10:43 <a href="http://www.blogjava.net/ldd600/archive/2009/05/04/268767.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle收购Sun之我见，Sun正式完蛋</title><link>http://www.blogjava.net/ldd600/archive/2009/04/22/266884.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Tue, 21 Apr 2009 23:25:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2009/04/22/266884.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/266884.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2009/04/22/266884.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/266884.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/266884.html</trackback:ping><description><![CDATA[正如我想的那样，Oracle收购Sun已经通过了决议，出价是74亿美元，传说就比IBM多出了一毛钱。其实IBM不差钱的，只是Oracle在业务上与Sun重合的比IBM少，这可能也是Sun高层考虑的一个重点。但是收购之后，让人最担心的就是那些开源项目的发展，Oracle是一个主要以盈利为驱动的商业公司，这能让人想起微软，Elison是很少支持开源项目的吧，就那个EclipseLink，基本上所有产品的license都是受限制的。和Oracle重合的开源项目像Mysql（Oracle），Glassfish（Weblogic和OC4J），NetBeans（JDeveloper），OpenJdk(Jrockit)，还有一些小项目比如SOA的产品，SSO的产品，JSF的实现等，这些很有可能被部分干掉。那些不重合的项目比如Solaris/OpenSolaris，JavaFX, Open office等，这些license会不会和其他Oracle产品一样将会受到限制,开源项目的发展会不会受到巨大的冲击。Oracle收购Sun直接能看出的获利之处在Solaris/OpenSolaris, SPARC，Java，云计算平台。Oracle收购SUN之后在硬件和软件基础设施方面会得到大大的增强，从一个中间件商变成了一个超强的一栈式计算机公司，与IBM竞争将更加激烈。<br />
<br />
<a href="http://www.oracle.com/sun/index.html" target="_blank">http://www.oracle.com/sun/index.html</a><wbr> 
<img src ="http://www.blogjava.net/ldd600/aggbug/266884.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2009-04-22 07:25 <a href="http://www.blogjava.net/ldd600/archive/2009/04/22/266884.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2009读书计划</title><link>http://www.blogjava.net/ldd600/archive/2008/12/30/249064.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Tue, 30 Dec 2008 02:11:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/12/30/249064.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/249064.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/12/30/249064.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/249064.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/249064.html</trackback:ping><description><![CDATA[<font style="background-color: #d8ffd5"><font style="background-color: #d8ffd5"><font style="background-color: #d8ffd5">要看的书真不少，主攻方向：模式，SOA，分布式算法，多核计算，安全，动态语言和领域语言。</font>罗列一下，可能还会有新的加入。</font><br />
<br />
《Clean Code A Handbook of Agile Software Craftsmanship》，《<font style="background-color: #d8ffd5">Oreilly.Beautiful.Code</font>》和</font> 《<font style="background-color: #d8ffd5">Addison.Wesley.Implementation.Patterns</font>》三本一起看，细品重要章节<br />
<br />
《<font style="background-color: #d8ffd5">addison.wesley.java.concurrency.in.practice</font>》，《<font style="background-color: #d8ffd5"><font style="background-color: #d8ffd5">Java.Threads.3rd.Edition</font></font>》，《<font style="background-color: #d8ffd5">Morgan.Kaufmann.The.Art.of.Multiprocessor.Programming</font>》三本一起看，细读目前还不了解的章节，有些用到的时候还可以顺便翻阅一下<br />
<br />
《<font style="background-color: #d8ffd5">Prentice.Hall.SOA.Principles.of.Service.Design</font>》，《<font style="background-color: #d8ffd5">SOA Design Patterns</font>》， 《<font style="background-color: #d8ffd5">ESB Architecture for SOA</font>》，《<font style="background-color: #d8ffd5">SOA with Java</font>》 第一第二本细读，第三四本通读， 3，4本还没出，第2本还没电子版的。<br />
<br />
《<font style="background-color: #d8ffd5">Open Source ESBs in Action</font>》主要还是servicemix，通读<br />
<br />
《<font style="background-color: #d8ffd5">Manning.SOA.Security</font>》，《A practical Guide to Trusted Computing》 主要了解如何实现，原理在学校已学过<br />
<br />
《<font style="background-color: #d8ffd5">算法导论第二版</font>》， 《<font style="background-color: #d8ffd5">Design and Analysis of Distributed Algorithms</font>》 第一本以前看过，细读<br />
<br />
《<font style="background-color: #d8ffd5"><font style="background-color: #d8ffd5">Apress.Pro.Java.EE.Spring.Patterns</font></font>》，《<font style="background-color: #d8ffd5">Apress.Pro.Spring.2.5</font>》或者3.0吧， 了解新功能，主要还是设计模式<br />
<br />
《<font style="background-color: #d8ffd5">Programming Ruby</font>》，《<font style="background-color: #d8ffd5">Ruby for Rails</font>》， 《<font style="background-color: #d8ffd5">From.Java.to.Ruby</font>》三本一起看，第一本已经看了一部分了，第一本细读，能看多少看多少<br />
<br />
《<font style="background-color: #d8ffd5">The.ThoughtWorks.Anthology</font>》细读，有时间就看，能看多少看多少<br />
<br />
《<font style="background-color: #d8ffd5">Programming Erlang</font>》有时间就看<br />
<br />
《<font style="background-color: #d8ffd5">Morgan.Kaufmann.Java.Data.Mining</font>》 有时间就看，了解一下原理<br />
<br />
除了几本Thomas Erl的soa书籍还没出的以外，其他的都可以载到电子版了（SOA design pattern目前除外），环保。 
<img src ="http://www.blogjava.net/ldd600/aggbug/249064.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-12-30 10:11 <a href="http://www.blogjava.net/ldd600/archive/2008/12/30/249064.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>近半年的工作体会：什么样的framework是一个好的framework</title><link>http://www.blogjava.net/ldd600/archive/2008/12/16/246537.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Mon, 15 Dec 2008 23:42:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/12/16/246537.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/246537.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/12/16/246537.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/246537.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/246537.html</trackback:ping><description><![CDATA[&nbsp;
<p><span style="font-family: 宋体">昨天下午被老大喊去谈话了，主要还是对近半年的一个工作总结，一些体会，和一些建议。</span></p>
<p><span style="font-family: 宋体">这半年主要完成了</span>2<span style="font-family: 宋体">个</span>framework<span style="font-family: 宋体">，参与了整个开发流程，完成了它们的需求，设计，开发，测试，支持，维护，文档整个流程，我一直也在问自己什么样的框架是一个好框架，我想我首先其实也是一个</span>framework<span style="font-family: 宋体">的用户，我们写</span>framework<span style="font-family: 宋体">的也不会什么都从头做起，重复的去发明轮子，已有的</span>framework<span style="font-family: 宋体">也会拿过来用，这会减少开发的成本和周期，所有</span>framework<span style="font-family: 宋体">的目的都是方便</span>application developer<span style="font-family: 宋体">的开发，方便他们的使用，对于他们来说</span>framework<span style="font-family: 宋体">完成技术的细节，他们只要关心业务的逻辑，而且这些</span>framework<span style="font-family: 宋体">用起来都要很简单，简单的使用，完成强大的功能。当然</span>framework<span style="font-family: 宋体">的可重用性也要很强，不然</span>framework<span style="font-family: 宋体">只能给每个特定的</span>application<span style="font-family: 宋体">使用，这就和</span>application<span style="font-family: 宋体">自己开发一个</span>framework<span style="font-family: 宋体">就没有区别了，所以</span>framework<span style="font-family: 宋体">还要考虑到各个项目的可重用性，在某些特殊的情况下，</span>framework<span style="font-family: 宋体">也不可能满足所有的需求，这时</span>application<span style="font-family: 宋体">用户就需要在</span>framework<span style="font-family: 宋体">上加入他们的特殊的逻辑，这些逻辑是特定于这个</span>application<span style="font-family: 宋体">的需求的，不是通用的，这时候就要求我们的</span>framework<span style="font-family: 宋体">是易扩展的，插件式的，还要注意的是虽然我们已经做到了这些，但是如果我们开发的</span>framework<span style="font-family: 宋体">跑起来的时候，如果性能很差，影响了</span>application<span style="font-family: 宋体">的正常逻辑，这也是致命的错误，所以我们还需要关心</span>framework<span style="font-family: 宋体">的性能，这可能比</span>application<span style="font-family: 宋体">关心他们的性能更为重要，因为一些复杂的技术细节是由</span>framework<span style="font-family: 宋体">完成的，复杂的技术使用起来可能消耗的资源比较多，我们的</span>framework<span style="font-family: 宋体">又是给所有</span>application<span style="font-family: 宋体">用的，如果性能太差影响范围也很大，如何来提升</span>framework<span style="font-family: 宋体">的性能也是至关重要的，至少我们要追求我们的代码质量，每一行代码都要细细品味；可读性当然不能太差了，</span>framework<span style="font-family: 宋体">的源代码，</span>application<span style="font-family: 宋体">是可以从</span>clearecase<span style="font-family: 宋体">或者</span>maven<span style="font-family: 宋体">上获取的，对于一个</span>developer<span style="font-family: 宋体">来说可能更习惯于看代码而不是看文档，所以代码和测试就是最好的文档，在开发消息集成框架的时候，也体会到了单元测试的重要性，如果什么问题都放到集成测试的时候去测的话，修一个</span>bug<span style="font-family: 宋体">可能要花半天的时间，所以单元测试也是很重要的，到目前为止，我还是不能完全做到测试驱动开发，一个是因为</span>schedule<span style="font-family: 宋体">定的比较紧，自己写测试的水平也不够到家，所以有时我也会冲动的先写代码逻辑，但是事后我也会补上我的测试代码，因为自己在看一些开源</span>framework<span style="font-family: 宋体">时候，一下子也不知道每个类是干嘛的，所以就会先看测试，从测试中去了解程序的逻辑，测试其实也是一些小的</span>sample<span style="font-family: 宋体">，可以指导</span>developer<span style="font-family: 宋体">如何去使用，所以详细的单元测试是免不了的。细节上的实现需要注意的就更多，比如我们公开的</span>api<span style="font-family: 宋体">是给</span>application<span style="font-family: 宋体">用户调用的，如果一个</span>api<span style="font-family: 宋体">是发送消息的，你取得名字是和发送消息无关的，</span>application<span style="font-family: 宋体">用户使用起来就比较麻烦了，他们可能还需要打开很长的</span>developer guide<span style="font-family: 宋体">，来找哪个</span>api<span style="font-family: 宋体">可能完成发送消息的功能，如果找不到，他们就会</span>call<span style="font-family: 宋体">你了，那自己不是自找麻烦吗，所以每个</span>public<span style="font-family: 宋体">的</span>api<span style="font-family: 宋体">名字一定要取的简洁明了，开发上的每个细节都要注意，细节决定成败，实现模式出中文版了，这本书明年还是要翻翻的。</span>Framework<span style="font-family: 宋体">是写完了，满足了这个版本的需求，但是</span>developer<span style="font-family: 宋体">会有一些反馈，比如哪里用起来不方便，哪里还是不能满足要求，或者又有了什么新的技术也需要加入到</span>framework<span style="font-family: 宋体">当中等等，这时我们就要去改代码了，改代码是很头疼的一件事，我是这么认为的，而且改了一行代码，什么东东都要重新测一遍，这就不说了，但是如果时间很长的话，我们可能对一些代码的实现细节，甚至对哪个模块该干什么已经忘得一干二净了，所以就要求我们写的</span>framework<span style="font-family: 宋体">的可维护性要比较强，开发人员发现问题应该比业务用户强多了，那就更要求我们的代码要高内聚，松耦合，满足这些</span>OO<span style="font-family: 宋体">的原则，加上很好的模式设计，使我们的</span>framework<span style="font-family: 宋体">更易维护，重用，扩展，重构等。写的很乱，想表达的就是写好一个</span>framework<span style="font-family: 宋体">需要注意的问题，呵呵。</span></p>
<img src ="http://www.blogjava.net/ldd600/aggbug/246537.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-12-16 07:42 <a href="http://www.blogjava.net/ldd600/archive/2008/12/16/246537.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>工作一年拉</title><link>http://www.blogjava.net/ldd600/archive/2008/07/12/214384.html</link><dc:creator>叱咤红人</dc:creator><author>叱咤红人</author><pubDate>Sat, 12 Jul 2008 00:56:00 GMT</pubDate><guid>http://www.blogjava.net/ldd600/archive/2008/07/12/214384.html</guid><wfw:comment>http://www.blogjava.net/ldd600/comments/214384.html</wfw:comment><comments>http://www.blogjava.net/ldd600/archive/2008/07/12/214384.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ldd600/comments/commentRss/214384.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ldd600/services/trackbacks/214384.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 总结总结,展望展望&nbsp;&nbsp;<a href='http://www.blogjava.net/ldd600/archive/2008/07/12/214384.html'>阅读全文</a><img src ="http://www.blogjava.net/ldd600/aggbug/214384.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ldd600/" target="_blank">叱咤红人</a> 2008-07-12 08:56 <a href="http://www.blogjava.net/ldd600/archive/2008/07/12/214384.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>