﻿<?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-Thinking in XiaoQiang-随笔分类-技术相关</title><link>http://www.blogjava.net/uiiang/category/4008.html</link><description>世人皆有悲哀，只有你不明白</description><language>zh-cn</language><lastBuildDate>Wed, 30 May 2007 08:52:17 GMT</lastBuildDate><pubDate>Wed, 30 May 2007 08:52:17 GMT</pubDate><ttl>60</ttl><item><title>大学(二)</title><link>http://www.blogjava.net/uiiang/archive/2007/05/29/120663.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Tue, 29 May 2007 05:05:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2007/05/29/120663.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/120663.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2007/05/29/120663.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/120663.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/120663.html</trackback:ping><description><![CDATA[<p>大学 (一) <a href="http://www.blogjava.net/uiiang/archive/2007/05/27/120342.html">http://www.blogjava.net/uiiang/archive/2007/05/27/120342.html</a><font size=4><font color=#0099ff><br><br>&nbsp;&nbsp;&nbsp; 康诰曰：&#8220;克明德。&#8221;大甲曰：&#8220;顾諟天之明命。&#8221;帝典曰：&#8220;克明峻德。&#8221;皆自明也。</font></font></p>
<p><font color=#0099ff size=4>&nbsp;&nbsp;&nbsp; 汤之盘铭曰：&#8220;苟日新，日日新，又日新。&#8221;康诰曰：&#8220;作新民。&#8221;诗曰：&#8220;周虽旧邦，其命惟新。&#8221;是故君子无所不用其极。</font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp; <font color=#ff0000>康诰说：&#8220;能够弘扬光明的品德。&#8221;太甲说：&#8220;念念不忘这上天赋予的光明禀性。&#8221;尧典说：&#8220;能够弘扬崇高的品德。&#8221;这些都是说要自己弘扬光明正大的品德。</font></font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 商汤王刻在浴盆上的箴言说：&#8220;如果能够有一天自新，就应保持天天自新，永远不断自新。&#8221;康诰中说：&#8220;鼓励人们弃旧图新。&#8221;诗经中说：&#8220;周朝虽然是古老的国家，但却禀受了天命，自我更新。&#8221;所以，品德高尚的人无处不追求完善。</font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 软件开发乃至IT行业的更新速度极快，今天出个JAVA，明天出个.net，后天又来个什么ruby。所以咱们要不断的学习，不断的进步才能跟上技术的更新速度，才能不被淘汰。</font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 但什么叫自新，这个自新不是说今天出了JAVA，呼啦呼啦的就全买thinking in java去了，明天出了.net又呼啦呼听的全安.net 2005去了。自新是一个发掘和汲取的过程。别一天到晚的看不起struts嫌他麻烦，瞧不上hibernate嫌他浪费性能。人家的技术能在全世界流行，必然有过人之处。想想他为什么能在全世界流行，他体现的是哪种设计思想。多学学人家的优点，想办法把这些优点用在自己的代码上。</font></p>
<p><font size=4>&nbsp;&nbsp;<font color=#0099ff>&nbsp;&nbsp;诗云：&#8220;邦畿千里，惟民所止。&#8221;诗云：&#8220;缗蛮黄鸟，止于丘隅。&#8221;子曰：&#8220;于止，知其所止，可以人而不如鸟乎！&#8221;</font></font></p>
<p><font color=#0099ff size=4>&nbsp;&nbsp;&nbsp; 诗云：&#8220;穆穆文王，于缉熙敬止！&#8221;为人君，止于仁；为人臣，止于敬；为人子，止于孝；为人父，止于慈；与国人交，止于信。</font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp; <font color=#ff0000>诗经说：&#8220;京城及其周围，都是老百姓向往的地方。&#8221;诗经又说：&#8220;&#8216;缗蛮&#8217;叫着的黄鸟，栖息在山丘的角落上。&#8221;孔子说：&#8220;连黄鸟都知道它该栖息在什么地方，难道人还能不如一只鸟儿吗？&#8221;</font></font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp;&nbsp;诗经说：&#8220;品德高尚的文王啊，为人光明磊落，做事始终庄重谨慎。&#8221;做国君的，要做到仁义；做臣子的，要做到恭敬；做子女的，要做到孝顺；做父亲的，要做到慈爱；与他人交往，要做到讲信用。</font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 经常看到论坛上有人抱怨，自己的工作单调只不过是复制粘贴别人的代码。可你有没有想过为什么去复制粘贴，是因为他的代码写得太好了，放到哪里都能用？还是架构设计得不合理，需要重构。如果是好，他好在哪里，他为什么这么写。如果不好，又不好在哪里，应该怎么改，如果是你来设计，你又会怎么做来避免犯这样的错误。</font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 很多人抱怨自己在一个小公司不得志，可有没有想过为什么在这种小公司。你有没有给IBM，google这样的公司投过简历，投了简历有没有面试，面试了这些大公司为什么不要你，而是录用了别人。要摆正心态，找到自己的位置。你可以觉得不得志，但要有真才实学。庞统那么大的才，到了刘备手下不还是先被发配去当县令。是金子终要发光的，后来刘备不也终于认识到庞统的才能并委以重任吗。可如果你啥都不会，看这个看不起，瞧那个瞧不上。一天到晚就知道上网聊天打游戏泡MM。就算到了曹营也就当个蒋干，成事不足败事有余。要本着谦虚学习的态度来对待工作对待周围的人，要学会从别人身上发现优点。</font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp; <font color=#0099ff>诗云：&#8220;瞻彼淇澳，菉竹猗猗。有斐君子，如切如磋，如琢如磨。瑟兮僩兮，赫兮喧兮。有斐君子，终不可諠兮！&#8221;如切如磋者，道学也；如琢如磨者，自修也；瑟兮僩兮者，恂栗也；赫兮喧兮者，威仪也；有斐君子，终不可諠兮者，道盛德至善，民之不能忘也。</font></font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp; <font color=#ff0000>诗经说：&#8220;看那淇水弯弯的岸边，嫩绿的竹子郁郁葱葱。有一位文质彬彬的君子，研究学问像加工骨器一样，不断切磋；修炼自己像打磨美玉，反复琢磨。他庄重而开朗，仪表堂堂。这样的一个文质彬彬的君子，真是令人难忘啊！&#8221;</font></font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 这里所说的&#8220;加工骨器，反复琢磨&#8221;，是指做学问的态度；&#8220;像打磨美玉，反复琢磨&#8221;，是指自我修炼的精神；说他&#8220;庄重而开朗&#8221;，是指他内心谨慎而有所戒惧；说他&#8220;仪表堂堂&#8221;，是指他非常庄重；说&#8220;这样一个文质彬彬的君子，真是令人难忘啊！&#8221;是指由于他品德非常高尚，达到了最完善的境界，所以使人难以忘怀。</font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp; 不要为了工作而工作，为了写代码而写代码。既然干了这行了就要干好，即使不求名扬天下，至少要也对得起自己这么多年的努力吧。我带过几个手下，我每次安排任务后都会说：认真干活，只要干完活，你去打CS我都不管。我说这话的目的是不想给大家太多压力，大家都挺辛苦都不容易。只要干完活，该聊天该上网随便你。可如果真正会学习的人，就应该明白，自己干的那些活，永远是别人安排的。要想多学东西，还得根据自己的特点和能力补充知识。自己写的代码是不是已经无懈可击了，有什么地方值得优化，实现方法是不是可以用更优雅的方式。</font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp;&nbsp; 总之，心中要想着不断进步，要么不做，做了就要做到更好。</font></p>
<img src ="http://www.blogjava.net/uiiang/aggbug/120663.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2007-05-29 13:05 <a href="http://www.blogjava.net/uiiang/archive/2007/05/29/120663.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>大学（一）</title><link>http://www.blogjava.net/uiiang/archive/2007/05/27/120342.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Sun, 27 May 2007 12:27:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2007/05/27/120342.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/120342.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2007/05/27/120342.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/120342.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/120342.html</trackback:ping><description><![CDATA[<font size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这两三年来，生活一直被工作占据着，习惯了用工作来充实的生活，闲下来却非常无聊。即使不加班的时候，回到家里也不知道干点什么好，于是下意识的又开始写代码，学新技术。这样的生活单调乏味，人也变得无趣起来。于是决定，从今天起在家休息的时间，不再写代码。重新找回以前的兴趣，丰富业余生活。想起以前上学时住校，闲得没事做就到图书馆借书，反正呆着也是呆着，那会儿什么书都看，从古今中外概不排斥。可惜工作后再没这闲心了。</font>
<p><font size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 今天休息，在家翻了翻书柜，读一读大学。蓝色字是原文，红色的字是我的一些理解，如果有错的地方，还望大家指正，谢谢。</font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font color=#0066ff>大学之道，在明明德，在亲民，在止于至善。知止而后有定，定而后能静，静而后能安，安而后能虑，虑而后能得。物有本末，事有终始，知所先后，则近道矣。</font></font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font color=#ff0000>大学的宗旨在于弘扬光明正大的品德，在于使人弃旧图新，在于使人达到最完善的境界。知道应达到的境界才能志向坚定；志向坚定才能够镇静而不骄躁；镇静而不骄躁才能够心安理得；心安理得才能够思虑周详；思虑周详才能够有所收获。每样东西都有根本和枝末，每件事都有开始和终结(还记得黑客帝国3里，先知说的那句话吗？Everything that has a beginning has an end。大概先知也读过大学)。明白了这本末始终的道理，就接近事物发展的规律了。</font></font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在软件开发过程中，我们经常会遇到很多问题。其实每一个客户需求都是一个大问题，是一堆问题的总合。这就需要我们在编程之前，明白自己要做什么（知止而后有定），要认真的分析我们的需求和目标。这样才能不被一堆稀奇古怪的问题吓倒，能够让我们从容的面对这些工作（定而后能静）。初学者经常犯一个错误，就是不分析问题。调试出错代码的时候，经常是一遍一遍的运行错误的代码，然后看着报错信息发呆。而不知道如何分析错误所在，也不知道在哪里打印几行标志来找出出错的代码的位置。于是越看越乱，越乱越心慌。这时候就需要先静下心来不要被一个报错信息吓到（静而后能安）。只有静下心来，才能想到其实任何报错信息，都是有根有据的，只要根据提示信息中给出的线索，或者在代码中打印几条标志信息，或者根据你输入的信息运行的类或方法去推理，就能够找到出错的地方（安而后能虑）。当你做到这一步，你就找到问题的所在了，经验值又增加了（虑而后能得）。 </font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 就像刚才所说，任何代码任何错误，都是有根有据不会凭空出现。我们软件开发人员的工作，就是解决一个一个的问题。只要能把这些问题分析得当，条理清晰的列出来，就离成功不远了。</font></p>
<p><font color=#ff0000 size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 很多初学编程或刚刚工作的人都会报怨，看不懂代码，不知道业务逻辑所以没法工作。其实做事的时候，不要一上来就想一次解决问题，要循序渐进，你连代码出错出在哪里都不知道，怎么去修改错误。要先找到出错的代码是哪个文件，是从哪里进入的，又经过哪些方法的调用，要明白这些代码的业务逻辑。如果不明白就先注释起来。初学的时候要学会分析问题的方法，找到问题的关键点，每行代码其实都是在调动数据，但有些调动是对当前业务没有影响的这些可以先排除掉，那些会对后面的业务逻辑产生影响的，都是问题的关键点。初学者不要嫌麻烦，遇到这些关键点一定要注释。就算不明白整个的业务逻辑，单独一行代码的意思总该明白吧，无非就是添删查改和方法调用嘛。当你把这些代码通读一遍并都注释后，就可以把这些注释当成读小说一样读下来，再复杂的业务逻辑也应该能读明白了。</font></p>
<p><font color=#ff0000 size=4></font>&nbsp;</p>
<p><font size=4><font color=#0066ff>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 古之欲明明德于天下者，先治其国；欲治其国者，先齐其家；欲齐其家者，先修其身；欲修其身者，先正其心；欲正其心者，先诚其意；欲诚其意者，先致其知；致知在格物。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 物格而后知至，知至而后意诚，意诚而后心正，心正而后身修，身修而后家齐，家齐而后国治，国治而后天下平。<br></font>&nbsp;&nbsp;&nbsp;</font></p>
<p><font size=4>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font color=#ff0000>古代那些想在天下弘扬光明正大品德的人，先要治理好自己的国家；要想治理好自己的国家，先要管理好自己的家庭和家族；要想管理好自己的家庭，先要修养自身的品性；要想修养自身的品性，先要端正自己的心思；要想端正自己的心思，先要使自己的意念真诚；要想使自己的意念真诚，先要使自己获得知识；获得知识的途径在于认识和研究万事万物。通过对万事万物的认识，研究后才能获得知识；获得知识后意念才能真诚；意念真诚后心思才能端正；心思端正后才能修养品性；品性修养后才能管理好家庭和家族；管理好家庭后才能治理好国家；治理好国家后天下才能太平。</font></font></p>
<p><font color=#ff0000 size=4>　　咱们先不说什么治国之论，单就软件开发这个行业来讲。很多人都在抱怨公司小挣钱少管理混乱感觉屈才之类的。可你真的有这么大才吗，那些刚刚毕业的学生，在学校里玩儿了四年。到公司时什么都不会白纸一张，就像我以前发过的<a href="http://www.blogjava.net/uiiang/archive/2006/10/16/75502.aspx" target=_blank>一个文章</a>里说的。都不用说敬业精神，当你连最起码的认真工作都做不到时，还有什么资格说公司给你的工资太少，对不起你的工作量。</font></p>
<p><font color=#ff0000 size=4>　　要么别做这份工作，别接受这个任务，既然做了就要做好。不要把工资少当成不认真工作的借口。你再不认真工作，该被剥削的地方谁也跑不了，老板还是要赚他的钱。但工作经验是自己的呀！！！　软件开发这个工作需要不断学习不断的进步才能保持自己的位置。而软件开发正是需要认真工作，才能体会出其中的奥妙，体会其中的精华所在。要想让自己将来有好的发展，就要先做到自律，休息的时候当然要玩儿，但上班的时候就要以工作为重。要想自律就要提高自身修养，提高自己对工作重要性的认识。要想提高自身修养，就要端正自己的心态，上班的时候不要总去想什么窗外的高楼街上的美女。要想端正心态，就要让自己的意念真诚，要真心的认真负责的对待自己的工作，对待自己手中写出的每一行代码。这时就需要先获得知识，要学会这些技术，不然什么都不懂的人只能复制粘贴别人的代码，却不知道这些代码在干什么，往往复制错了自己却混然不知。</font></p>
<p><font size=4>　　<font color=#0066ff>自天子以至于庶人，壹是皆以修身为本。其本乱而末治者否矣，其所厚者薄，而其所薄者厚，未之有也！</font></font></p>
<p><font size=4>　　<font color=#ff0000>上自国家君王，下至平民百姓，人人都要以修养品性为根本。若这个根本被扰乱了，是不可能治理好家庭甚至国家天下的。不分轻重缓急，本末倒置却想做好事情，这也同样是不可能的。</font></font></p>
<p><font color=#ff0000 size=4>　　就像刚才说的，刚工作的人工资少工作累这是事实情况，大家都是从这一步走过来的。只有经历过这一步，才能明白认真工作和提高工作效率的重要性。要想提高工作效率，就要提高自身能力，就要积累工作经验。可工作经验这东西并不是说来就来的，需要自己刻苦努力才能得来。并不是说明天把你送到IBM或者什么大公司，给你好多好多钱，给你换了一个超美的工作环境。你就突然什么都会了什么都懂了。当你什么都不会还净犯错的时候，真的到了这种环境中，周围都是高手，你还好意思和别人打招呼吗？</font></p>
<img src ="http://www.blogjava.net/uiiang/aggbug/120342.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2007-05-27 20:27 <a href="http://www.blogjava.net/uiiang/archive/2007/05/27/120342.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我自己做的一个网站</title><link>http://www.blogjava.net/uiiang/archive/2007/03/21/105159.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Wed, 21 Mar 2007 01:53:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2007/03/21/105159.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/105159.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2007/03/21/105159.html#Feedback</comments><slash:comments>19</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/105159.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/105159.html</trackback:ping><description><![CDATA[  很久没有上blogjava了, 自从离职后, 从过春节到现在, 家里发生了很多事, 搞得我晕头转向. 一直没有去找工作. 最近终于稳定下来. <br />  休息这段时间, 为了保持自己的工作状态, 并且希望将这几年工作中学习到的技术, 做一个总结, 便产生了开发自己的网站想法.<br /><br />  www.songguo.net<br /><br />  从功能上讲, 以译客为主. 由网友发布文章, 其它网友来对文章进行翻译. 可以翻译整篇文章, 也可以只翻译其中一个片段.<br />  网友还可以对别人的翻译进行投票, 当有人点击一个片段时, 翻译的结果也会根据其它网友的投票结果排序显示出来.<br /><br />  另一个小功能是股票管理. 现在只实现了很小一部分功能. 主要想法是最近股市火热, 我也不幸上了贼船, 可是在公司上班时, 明目张胆的打开股票软件未免有点太嚣张了. 而且现在的股票软件太显眼, 老远一看就知道是什么. <br />  于是受google的简约主义影响, 做了这个尽可能简化功能和界面的小功能. 界面上的各个面板都可以通过点击标题栏关闭, K线图也可以直接点击关闭. 这样可以很快的隐藏自己, 嘿嘿~~<br /><br />  技术上讲的话, 网站使用了大量的开源技术, 基本的struts, spring hibernate就不说了, 火爆的AJAX也根据性能和需求的考虑也用到了. AJAX方面主要使用了DWR框架.  其它的技术像url重写之类的也是能用就用.<br />  <br />  过去几年一直是在做企业应用的开发, 这是我第一次做通用型的网站, 实在没什么经验.  而且完全是一个人做, 没什么借鉴, 只能分析一下别人的网站来模仿.   在很多功能的实现上也经常找不到最好的解决方案, 很想知道那些成熟的网站中, 是如何设计的. 现在只能一边摸索一边做了<br /><br />  由于时间仓促, 很多想法还没有实现, 也有不少BUG, 衷心希望大家能给我多提意见. 谢谢<br />  <img src ="http://www.blogjava.net/uiiang/aggbug/105159.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2007-03-21 09:53 <a href="http://www.blogjava.net/uiiang/archive/2007/03/21/105159.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>项目管理PK编程恶习</title><link>http://www.blogjava.net/uiiang/archive/2006/10/30/77993.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Mon, 30 Oct 2006 02:28:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2006/10/30/77993.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/77993.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2006/10/30/77993.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/77993.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/77993.html</trackback:ping><description><![CDATA[
		<p>前几天在我的blogjava上和CSDN上发过一个帖子: 说一说编程恶习. <br /><a href="http://community.csdn.net/Expert/topic/5091/5091887.xml">http://community.csdn.net/Expert/topic/5091/5091887.xml</a><br /><a href="/uiiang/archive/2006/10/16/75502.html">http://www.blogjava.net/uiiang/archive/2006/10/16/75502.html</a></p>
		<p>几天的时间收到了很多网友的回复. <br />我发这个帖子时, 并不是想讨论技术问题, 也不是为了抱怨, 只是想以另一种方式, 来提醒一下编程的初学者, 和一些所谓"经验丰富"的老程序员. 因为我发现传统的写一篇编程规范的文档, 似乎并不能引起大家足够的重视. 垃圾代码仍然一出再出. </p>
		<p>我在帖子中所说的问题, 也并不需要太多的技术经验和深厚的专业知识. 都是一些随手而来的小问题, 解决这些问题的方法只需要工作时认真负责, 多动动脑子就行了. </p>
		<p>在帖子的回复中, 有几个回复让我很在意:<br />==================================================================<br />钱给的太少，能对付过去就完了<br />社会上什么行业不是这样，能对付就行了 。</p>
		<p>要改变这种情况， 那还要上边有改变的想法，改善一下工作环境，等等。 。</p>
		<p>老板们吃的是良心，拉的是思想</p>
		<p>我们那么认真干啥<br />=====================================================================</p>
		<p>我对这种说法非常的不赞同, 代码写的再差, 老板还是要赚他的钱, 该被剥削还是跑不了. <br />可如果把这个当成不认真工作的理由, 那就只能永远自己吃亏了. <br />如果总是这么不认真工作, 不养成良好的工作习惯, 自已思考的习惯, 那就永远不能进步<br />只能当一辈子代码民工, 一辈子给这种垃圾老板打工.</p>
		<p>要明白一点, 好的编程习惯, 思考能力, 都是在平时工作当中, 一点一滴的积累起来的.<br />并不是当有人给了你一个好的工作环境后, 想变出来就能立刻变出来的. </p>
		<p>老板对不起咱们是另一回事, 但自己是不是能对得起自己, 那就看你自己的想法了</p>
		<p>态度决定一切<br /></p>
<img src ="http://www.blogjava.net/uiiang/aggbug/77993.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2006-10-30 10:28 <a href="http://www.blogjava.net/uiiang/archive/2006/10/30/77993.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>说一说编程恶习</title><link>http://www.blogjava.net/uiiang/archive/2006/10/16/75502.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Mon, 16 Oct 2006 15:27:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2006/10/16/75502.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/75502.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2006/10/16/75502.html#Feedback</comments><slash:comments>35</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/75502.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/75502.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">         </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">最近在做一个汽车销售系统的改善工作，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个系统已经运行两年了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">两年来，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">客户不断的提出新需求，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">系统也在不断的改来改去。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这次轮到我来改它了。</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">想想</span>
				<span lang="EN-US">N</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">年前初学编程的时候，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">书上，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">网上，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">杂志上不断的在说，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">要养成良好的编程习惯。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后还给出了</span>
				<span lang="EN-US">N</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">长的一大篇文章来介绍一些编程规范。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我这个人是很懒的，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">大概的看了一下就过去了。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">没有特意的记什么。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好在我这个人也不是特别的懒，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对自己的工作也是很上心。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">编程的时候尽可能做到更好。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">性能功能能考虑到的都要做到最好。</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">慢慢的也养成了一些编程的习惯，</span>
				<span lang="EN-US"> </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时间长了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下意识的就去遵守一些模式，模范之类的东西了。</span>
				<span lang="EN-US">
						<br />         </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有了这些习惯，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">再看这次修改的系统，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">真的是生可忍熟不可忍了。</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这次我也不说什么编程规范了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我就说说这些编程恶习</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span>
				<span lang="EN-US">
						<br />
						<br />         </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一，</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序没有注释</span>
				<span lang="EN-US">
						<br />       </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">注释</span>
				<span lang="EN-US">!!</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">注释</span>
				<span lang="EN-US">!!! </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果只是打印了一个</span>
				<span lang="EN-US">HELLO WORLD</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">您不注释那也就算了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果是只有一两百行的小功能类您不注释，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那我也忍了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可是</span>
				<span lang="EN-US">3000</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">多行一个类的业务逻辑代码，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">您老人家还不注释</span>
				<span lang="EN-US">!!!   </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你</span>
				<span lang="EN-US">TM</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">让我怎么去改代码，</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一点业务逻辑的说明都没有，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我改代码的时候，得一边用</span>
				<span lang="EN-US">DEBUG</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">调试，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一边替他加注释。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后才能进行自己的工作。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">几千行的一个类，</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一行注释都没有，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你</span>
				<span lang="EN-US">TM</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就不觉得颜色单调了点吗</span>
				<span lang="EN-US">?<br /><br />       </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">二，</span>
				<span lang="EN-US">  </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不遵守基本的编程约定</span>
				<span lang="EN-US">
						<br />       </span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">变量名大小写混乱，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">明明是变量，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">非要完全大写，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">要不就大写开头。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">要不就是方法名全是大写，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">最牛</span>
				<span lang="EN-US">B</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的一个方法是用中文做方法名，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你丫这时候想起打中文来了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">累不累呀。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">还有人用拼音做变量名方法名，就算您英文不好，稍微查一下金山词霸行不行，现在百度和</span>
				<span lang="EN-US">GOOGLE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都有翻译功能，稍微查一下英文，也当是学英语了行不行？</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">您实在太忙的话，不查也就算了，拼音就拼音吧，好赖也算是中国话的。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可是您就别用拼音简写了，英文简写还认不出来呢，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">您还用拼音的开头字母当变量名，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那我</span>
				<span lang="EN-US">TM</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上哪儿猜去呀！</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">三，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不明就里的代码</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">系统中经常会出现这样的代码，尤其是在</span>
				<span lang="EN-US">controller</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里居多：</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>// some code</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>If(flag .equals(“submit”)){</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>model.getInfo();</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt">
				<span lang="EN-US">}else{</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt">
				<span lang="EN-US">
						<span style="mso-tab-count: 1">       </span>model.getInfo();</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt">
				<span lang="EN-US">}</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我没写错，</span>
				<span lang="EN-US">if</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span>
				<span lang="EN-US">else</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">调用的方法完全一样，大家也放心，我仔细的看过调用的代码，调用的方法里，也没有根据其它情况来改变他的运行路线。我就不明白为什么要做这个</span>
				<span lang="EN-US">if</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">判断了。担心会有什么特殊的业务逻辑，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所以也不赶随便去改他。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">猜了半天，感觉最理想的答案是写代码的人，担心以后会有新的逻辑分支，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所以在这里用</span>
				<span lang="EN-US">if</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">预留了一个位置，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">以后改的时候方便。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">数日之后有幸遇见了当初写这代码的老兄，问过之后立刻晕倒，原来是这个代码是参照别的模块的样子写的，别的模块在这里都有</span>
				<span lang="EN-US">N</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">个程序分支，通过</span>
				<span lang="EN-US">if</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">来判断后决定调用哪个</span>
				<span lang="EN-US">model</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里的方法。但他这个模块很简单，没有什么分支，就是调用那一个方法，但他写代码时，看别人的模块在这里都进行</span>
				<span lang="EN-US">if</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">判断了，所以觉得自己也应该判断一下，于是就出现了上面这样的代码。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">四，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">面向过程式的编程方法</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">遇到过好几次</span>
				<span lang="EN-US">2000</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">多行的方法，所有业务逻辑，一气呵成，就用了一个方法搞定。如果是简单的逻辑也就算了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可是几千行的代码全放在一个方法里，一个类里有无数的重复代码。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这回到好，重构那本书没白看，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">现在有了实践的机会了。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">难道您自己调试的时候就不觉得麻烦吗？</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我在这里不想讨论什么面向过程还是面向对象，也别和我说什么方法多了也不一定就是面向对象的思想。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">平时对自己写的代码多上点心，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">大家都是在这行干了几年的人了，把代码写的漂亮点有什么不好。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">五，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">代码缩进混乱</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我们公司有规定，改代码的时候，不许修改原有代码的格式。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不管他多乱，也不许改。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我不明白这是为什么，也许是检查代码的人，要用文件比较工具吧。</span>
				<span lang="EN-US">
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">但这下苦坏我了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">代码的格式那叫一个乱。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有顶着行头写的，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有向后空了</span>
				<span lang="EN-US">N</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">格的，大概是写代码的人，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">为了方便自己找到正在调试的那段代码，所以把代码的缩进变得和其它代码与众不同吧。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那您调试完了到是重新排一下版呀，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这真的不累～～，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">现在的</span>
				<span lang="EN-US">IDE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">工具都有自动排版代码的功能，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一个快捷键就搞定了，稍微勤快一点行吗？？</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">最</span>
				<span lang="EN-US">BT</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的一段代码是缩进居然出了屏幕！！！</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你吃饱了撑的呀，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">没事缩那么远干吗，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我根据后台输出找了半天也没找到那段代码在哪儿，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">原来是因为缩进的太远了，不在屏幕范围之内，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">向右拉了半天滚动条才找到。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">你丫是不是写着代码睡着了？</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">脸正好砸在</span>
				<span lang="EN-US">TAB</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">键上。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">六，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">多余的后台输出</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好几个循环嵌套在一起～～～</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也行，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就算是因为业务逻辑需要，没别的办法也将就了。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">好几个循环嵌套在一起查数据库，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">咱们最好还是开动一下脑筋，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">看看有什么更好的办法。如果还是没别的办法，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">那也凑合了。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">可这种情况您就别在后台输出</span>
				<span lang="EN-US">SQL</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">语句啦，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">每次一执行程序，成百上千个</span>
				<span lang="EN-US">SQL</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">语句在后台输出，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">查数据库才用了一两秒，结果输出这些</span>
				<span lang="EN-US">SQL</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">就用了半分钟。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">您自己就没觉出程序慢在哪里吗？</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">您调试程序的时候输出一下也就算了，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">提交到正式运行的环境时，就麻烦您，劳您大驾～～</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">把那些输出注释掉吧，实在不行留几个重要的输出就行了。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">让这种代码影响系统性能～～</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也太冤了吧。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">七，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">打肿脸充胖子</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我也不知道这条算不算恶习，也许不算，在有些人眼里还是好事。但也要看具体情况，经常有些人写代码不喜欢用</span>
				<span lang="EN-US">IDE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，只用</span>
				<span lang="EN-US">EDITPLUS</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这类工具。按常理说，初学者都应该尽量用这些编辑器写代码，对加深学习印象有好处。也有人说高手不屑于用那些</span>
				<span lang="EN-US">IDE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，我少见多怪，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这种绝顶高手我没见过。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">但咱平时工作的时候，要的是效率，您不是那种高手就乖乖的用</span>
				<span lang="EN-US">IDE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">吧。经常见到有些人，为查一个方法的调用，搜来搜去的。真正的高手是工作效率最高的人，不是用最简单工具的人。</span>
		</p>
		<span lang="EN-US">
				<o:p>
						<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
								<br />//20061019 start<br />        一些补充: </p>
				</o:p> 有些人提到用EDITPLUS的效率其实也很高, 这点我也承认. 但我想说明一下, 我所见到的用EDITPLUS那个人, 根本没有发挥出editplus应有的效率和功能. 在他的手里editplus只是一个多了颜色区分的记事本. 编译程序还是用javac , 也不会用ANT, 发布程序还是手工拷贝. 号称四年经验的程序员, 刚到公司时用了一天时间重装好电脑后, 写了一个打印hello world的程序测试环境. 结果不写static void main方法, 直接就要用java去运行. 运行不成功还说系统配置有问题, 需要再重装.  每次帮他调试程序, 想查一个方法的调用, 一个文件一个文件的搜, 看得我这个急...........     我的希望是不管用什么工具, 要让这个工具在自己的手里发挥出最大的作用来, 如果用editplus非常纯熟的话, 我也会很佩服那个人的, 而且会虚心的向他学习使用技巧<br /><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">可他把时间全耽误在这上了, 这样的工作效率, 加班都是活该的<br />//20061019 end</p></span>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
						<br />
						<br />    今天就写这么多，</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">大家还遇到过什么样的编程恶习，欢迎补充。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">大家不要总是抱怨什么工资太少，工作量太大。工作效率这玩意儿是要经验来做基础，这没错，经验少也没事。咱平时写程序的时候多上点心，多对自己的代码思考一下，多动动脑子。自然就能总结出最好的工作经验了，工作效率自然就提高了。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也别总是说什么</span>
				<span lang="EN-US">STRUTS</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不好，</span>
				<span lang="EN-US">HIBERNATE</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">太慢，不屑去用它。人家的程序能在全世界流行，自然有他的过人之处。多读读他的代码，学习一下他到底好在哪里，如何才能把这些优点应用到自己的代码上。这才是最重要的。<br /></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'"> 也许咱们写不出什么高超的代码技巧，写不出什么华丽的算法，但如果能在一些习惯，细节上做到精益求精，那也对得起自己的代码了。<br /><br /><br />    写出上面这些代码的人，如果你的工资真的很少，那我只能惋惜的说一句：你的工资是可怜了点，但看您写的这代码，连这点工资都不应该给你！！</span>
		</p>
<img src ="http://www.blogjava.net/uiiang/aggbug/75502.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2006-10-16 23:27 <a href="http://www.blogjava.net/uiiang/archive/2006/10/16/75502.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SUN公司的Swing团队</title><link>http://www.blogjava.net/uiiang/archive/2006/01/24/29065.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Tue, 24 Jan 2006 01:31:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2006/01/24/29065.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/29065.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2006/01/24/29065.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/29065.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/29065.html</trackback:ping><description><![CDATA[<P>Sun公司的Swing团队,无论你是喜爱还是厌恶swing ,&nbsp; Swing技术能有今天的成就, 下面这些人功不可没.<BR><IMG height=333 alt="r_Amy Fowler.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/r_Amy%20Fowler.jpg" width=500 border=0><BR>她就是传说中的Amy Fowler, 传说中<FONT face=宋体>聪明的美女,把大多数呆头呆脑只懂技术的开发人员都要被她捏在手里,那个扬言"你们(指SUN公司)事情搞砸了(AWT), 我是来拯救你们的".在发现了AWT是一个很糟糕的技术后,这位能说会道的大婶终于劝服了SUN公司开发了一个更加糟糕的技术.<BR><BR><IMG height=337 alt="o_Chet Haase.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Chet%20Haase.jpg" width=450 border=0><BR></FONT><FONT face="Times New Roman">Chet Haase<BR><BR><IMG height=333 alt="o_Chris Campbell.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Chris%20Campbell.jpg" width=500 border=0><BR>Chris Campbell<BR><BR><IMG height=333 alt="o_Hans Muller.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Hans%20Muller.jpg" width=500 border=0><BR>Hans Muller<BR><BR><IMG height=337 alt="o_Jeff Dinkins.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Jeff%20Dinkins.jpg" width=450 border=0><BR>Jeff Dinkins<BR><BR><IMG height=337 alt="o_Joshua Marinacci.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Joshua%20Marinacci.jpg" width=450 border=0><BR>Joshua Marinacci<BR><BR><IMG height=337 alt="o_Richard Bair.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Richard%20Bair.jpg" width=450 border=0><BR>Richard Bair<BR><BR><IMG height=337 alt="o_Scott Violet.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Scott%20Violet.jpg" width=450 border=0><BR>Scott Violet<BR><BR><IMG height=333 alt="o_Tony Wyant.jpg" src="http://www.blogjava.net/images/blogjava_net/uiiang/7184/o_Tony%20Wyant.jpg" width=500 border=0><BR>Tony Wyant<BR><BR></FONT></P><img src ="http://www.blogjava.net/uiiang/aggbug/29065.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2006-01-24 09:31 <a href="http://www.blogjava.net/uiiang/archive/2006/01/24/29065.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>无奈的Google Arena</title><link>http://www.blogjava.net/uiiang/archive/2005/12/13/23590.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Tue, 13 Dec 2005 01:48:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2005/12/13/23590.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/23590.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2005/12/13/23590.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/23590.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/23590.html</trackback:ping><description><![CDATA[<p>终于等到google编程赛开始了,可是居然不能登录到arena.急啊!!<br>晚上好不容易open了一道250分的题,还没看完题呢就掉线了,等我再上去时,时间只剩下不到10分钟了.<br>可惜啊可惜啊~~~~</p>
<p>好在我也自知水平有限,目标只是为了掺和<br>------------------------------------------------------------------------------------------------------</p>
<p><br>250的：<br>Problem Statement<br>&nbsp;&nbsp;&nbsp; <br>You are given a String input. You 
are to find the longest substring of input such that the reversal of the 
substring is also a substring of input. In case of a tie, return the string that 
occurs earliest in input.<br>Definition<br>&nbsp;&nbsp;&nbsp; 
<br>Class:<br>ReverseSubstring<br>Method:<br>findReversed<br>Parameters:<br>String<br>Returns:<br>String<br>Method 
signature:<br>String findReversed(String input)<br>(be sure your method is 
public)<br>&nbsp;&nbsp;&nbsp; <br>Notes<br>-<br>The substring and its reversal may overlap 
partially or completely.<br>-<br>The entire original string is itself a valid 
substring (see example 4).<br>Constraints<br>-<br>input will contain between 1 
and 50 characters, inclusive.<br>-<br>Each character of input will be an 
uppercase letter ('A'-'Z').<br>Examples<br>0)<br>&nbsp;&nbsp;&nbsp; 
<br>"XBCDEFYWFEDCBZ"<br>Returns: "BCDEF"<br>We see that the reverse of BCDEF is 
FEDCB, which appears later in the string.<br>1)<br>&nbsp;&nbsp;&nbsp; <br>"XYZ"<br>Returns: 
"X"<br>The best we can do is find a one character substring, so we implement the 
tie-breaker rule of taking the earliest one first.<br>2)<br>&nbsp;&nbsp;&nbsp; 
<br>"ABCABA"<br>Returns: "ABA"<br>The string ABA is a palindrome (it's its own 
reversal), so it meets the criteria.<br>3)<br>&nbsp;&nbsp;&nbsp; 
<br>"FDASJKUREKJFDFASIREYUFDHSAJYIREWQ"<br>Returns: "FDF"<br>4)<br>&nbsp;&nbsp;&nbsp; 
<br>"ABCDCBA"<br>Returns: "ABCDCBA"<br>Here, the entire string is its own 
reversal. </p>
<p>&nbsp;</p>
<p><br>750的：<br>Problem Statement<br>&nbsp;&nbsp;&nbsp; <br>You are given a String[] grid 
representing a rectangular grid of letters. You are also given a String find, a 
word you are to find within the grid. The starting point may be anywhere in the 
grid. The path may move up, down, left, right, or diagonally from one letter to 
the next, and may use letters in the grid more than once, but you may not stay 
on the same cell twice in a row (see example 6 for clarification).<br>You are to 
return an int indicating the number of ways find can be found within the grid. 
If the result is more than 1,000,000,000, return -1.<br>Definition<br>&nbsp;&nbsp;&nbsp; 
<br>Class:<br>WordPath<br>Method:<br>countPaths<br>Parameters:<br>String[], 
String<br>Returns:<br>int<br>Method signature:<br>int countPaths(String[] grid, 
String find)<br>(be sure your method is public)<br>&nbsp;&nbsp;&nbsp; 
<br>Constraints<br>-<br>grid will contain between 1 and 50 elements, 
inclusive.<br>-<br>Each element of grid will contain between 1 and 50 uppercase 
('A'-'Z') letters, inclusive.<br>-<br>Each element of grid will contain the same 
number of characters.<br>-<br>find will contain between 1 and 50 uppercase 
('A'-'Z') letters, inclusive.<br>Examples<br>0)<br>&nbsp;&nbsp;&nbsp; 
<br>{"ABC",<br>&nbsp;"FED",<br>&nbsp;"GHI"}<br>"ABCDEFGHI"<br>Returns: 1<br>There is only 
one way to trace this path. Each letter is used exactly once.<br>1)<br>&nbsp;&nbsp;&nbsp; 
<br>{"ABC",<br>&nbsp;"FED",<br>&nbsp;"GAI"}<br>"ABCDEA"<br>Returns: 2<br>Once we get to 
the 'E', we can choose one of two directions for the final 'A'.<br>2)<br>&nbsp;&nbsp;&nbsp; 
<br>{"ABC",<br>&nbsp;"DEF",<br>&nbsp;"GHI"}<br>"ABCD"<br>Returns: 0<br>We can trace a path 
for "ABC", but there's no way to complete a path to the letter 'D'.<br>3)<br>&nbsp;&nbsp;&nbsp; 
<br>{"AA",<br>&nbsp;"AA"}<br>"AAAA"<br>Returns: 108<br>We can start from any of the 
four locations. From each location, we can then move in any of the three 
possible directions for our second letter, and again for the third and fourth 
letter. 4 * 3 * 3 * 3 = 108.<br>4)<br>&nbsp;&nbsp;&nbsp; 
<br>{"ABABA",<br>&nbsp;"BABAB",<br>&nbsp;"ABABA",<br>&nbsp;"BABAB",<br>&nbsp;"ABABA"}<br>"ABABABBA"<br>Returns: 
56448<br>There are a lot of ways to trace this path.<br>5)<br>&nbsp;&nbsp;&nbsp; 
<br>{"AAAAA",<br>&nbsp;"AAAAA",<br>&nbsp;"AAAAA",<br>&nbsp;"AAAAA",<br>&nbsp;"AAAAA"}<br>"AAAAAAAAAAA"<br>Returns: 
-1<br>There are well over 1,000,000,000 paths that can be traced.<br>6)<br>&nbsp;&nbsp;&nbsp; 
<br>{"AB",<br>&nbsp;"CD"}<br>"AA"<br>Returns: 0<br>Since we can't stay on the same 
cell, we can't trace the path at all.</p><br>在梦想中期待，在掉线中惨败<br><img src ="http://www.blogjava.net/uiiang/aggbug/23590.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2005-12-13 09:48 <a href="http://www.blogjava.net/uiiang/archive/2005/12/13/23590.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个有趣的网页</title><link>http://www.blogjava.net/uiiang/archive/2005/11/14/19743.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Mon, 14 Nov 2005 09:27:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2005/11/14/19743.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/19743.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2005/11/14/19743.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/19743.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/19743.html</trackback:ping><description><![CDATA[<SPAN style="COLOR: #000000; FONT-FAMILY: 宋体">http://www.masswerk.at/jsuix/index.html<BR><BR>用js模拟了一个unix终端,在页面上方有一个 <FONT color=#000000>open terminal , 用guest登录</FONT></SPAN><img src ="http://www.blogjava.net/uiiang/aggbug/19743.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2005-11-14 17:27 <a href="http://www.blogjava.net/uiiang/archive/2005/11/14/19743.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>纵论5-7年内的技术发展大势（转帖）</title><link>http://www.blogjava.net/uiiang/archive/2005/10/20/16143.html</link><dc:creator>小强</dc:creator><author>小强</author><pubDate>Thu, 20 Oct 2005 07:28:00 GMT</pubDate><guid>http://www.blogjava.net/uiiang/archive/2005/10/20/16143.html</guid><wfw:comment>http://www.blogjava.net/uiiang/comments/16143.html</wfw:comment><comments>http://www.blogjava.net/uiiang/archive/2005/10/20/16143.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/uiiang/comments/commentRss/16143.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/uiiang/services/trackbacks/16143.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 纵论5-7年内的技术发展大势 robbin | 15 四月, 2005 12:14 &nbsp;注：转载本文已征得作者同意，作者和本网站对内容不负任何责任。出处：http://www.fankai.com/ &nbsp;初探在下一代 Windows 中编写和部署应用程序 &nbsp;http://www.microsoft.com/china/MSDN/librar...&nbsp;&nbsp;<a href='http://www.blogjava.net/uiiang/archive/2005/10/20/16143.html'>阅读全文</a><img src ="http://www.blogjava.net/uiiang/aggbug/16143.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/uiiang/" target="_blank">小强</a> 2005-10-20 15:28 <a href="http://www.blogjava.net/uiiang/archive/2005/10/20/16143.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>