Thinking in XiaoQiang
          世人皆有悲哀,只有你不明白
          posts - 56,comments - 150,trackbacks - 0

          ???????? 最近在做一個(gè)汽車(chē)銷(xiāo)售系統(tǒng)的改善工作, 這個(gè)系統(tǒng)已經(jīng)運(yùn)行兩年了, 兩年來(lái), 客戶不斷的提出新需求, 系統(tǒng)也在不斷的改來(lái)改去。 這次輪到我來(lái)改它了。 ? 想想 N 年前初學(xué)編程的時(shí)候, 書(shū)上, 網(wǎng)上, 雜志上不斷的在說(shuō), 要養(yǎng)成良好的編程習(xí)慣。 然后還給出了 N 長(zhǎng)的一大篇文章來(lái)介紹一些編程規(guī)范。 我這個(gè)人是很懶的, 大概的看了一下就過(guò)去了。 沒(méi)有特意的記什么。 好在我這個(gè)人也不是特別的懶, 對(duì)自己的工作也是很上心。 編程的時(shí)候盡可能做到更好。 性能功能能考慮到的都要做到最好。 ? 慢慢的也養(yǎng)成了一些編程的習(xí)慣, ? 時(shí)間長(zhǎng)了, 下意識(shí)的就去遵守一些模式,模范之類(lèi)的東西了。
          ????????
          有了這些習(xí)慣, 再看這次修改的系統(tǒng), 真的是生可忍熟不可忍了。 ? 這次我也不說(shuō)什么編程規(guī)范了, 我就說(shuō)說(shuō)這些編程惡習(xí)

          ????????
          一, ? 程序沒(méi)有注釋
          ??????
          注釋 !! 注釋 !!! 如果只是打印了一個(gè) HELLO WORLD 您不注釋那也就算了, 如果是只有一兩百行的小功能類(lèi)您不注釋?zhuān)?/span> 那我也忍了, 可是 3000 多行一個(gè)類(lèi)的業(yè)務(wù)邏輯代碼, 您老人家還不注釋 !!!?? TM 讓我怎么去改代碼, ? 一點(diǎn)業(yè)務(wù)邏輯的說(shuō)明都沒(méi)有, 我改代碼的時(shí)候,得一邊用 DEBUG 調(diào)試, 一邊替他加注釋。 然后才能進(jìn)行自己的工作。 幾千行的一個(gè)類(lèi), ? 一行注釋都沒(méi)有, TM 就不覺(jué)得顏色單調(diào)了點(diǎn)嗎 ?

          ??????
          二, ? 不遵守基本的編程約定
          ??????
          變量名大小寫(xiě)混亂, 明明是變量, 非要完全大寫(xiě), 要不就大寫(xiě)開(kāi)頭。 要不就是方法名全是大寫(xiě), 最牛 B 的一個(gè)方法是用中文做方法名, 你丫這時(shí)候想起打中文來(lái)了, 累不累呀。

          ?????? 還有人用拼音做變量名方法名,就算您英文不好,稍微查一下金山詞霸行不行,現(xiàn)在百度和 GOOGLE 都有翻譯功能,稍微查一下英文,也當(dāng)是學(xué)英語(yǔ)了行不行? 您實(shí)在太忙的話,不查也就算了,拼音就拼音吧,好賴也算是中國(guó)話的。 可是您就別用拼音簡(jiǎn)寫(xiě)了,英文簡(jiǎn)寫(xiě)還認(rèn)不出來(lái)呢, 您還用拼音的開(kāi)頭字母當(dāng)變量名, 那我 TM 上哪兒猜去呀!

          ?

          ?????? 三, 不明就里的代碼

          ?????? 系統(tǒng)中經(jīng)常會(huì)出現(xiàn)這樣的代碼,尤其是在 controller 里居多:

          ?????? // some code

          ?????? If(flag .equals(“submit”)){

          ?????? model.getInfo();

          }else{

          ?????? model.getInfo();

          }

          我沒(méi)寫(xiě)錯(cuò), if else 調(diào)用的方法完全一樣,大家也放心,我仔細(xì)的看過(guò)調(diào)用的代碼,調(diào)用的方法里,也沒(méi)有根據(jù)其它情況來(lái)改變他的運(yùn)行路線。我就不明白為什么要做這個(gè) if 判斷了。擔(dān)心會(huì)有什么特殊的業(yè)務(wù)邏輯, 所以也不趕隨便去改他。 猜了半天,感覺(jué)最理想的答案是寫(xiě)代碼的人,擔(dān)心以后會(huì)有新的邏輯分支, 所以在這里用 if 預(yù)留了一個(gè)位置, 以后改的時(shí)候方便。

          數(shù)日之后有幸遇見(jiàn)了當(dāng)初寫(xiě)這代碼的老兄,問(wèn)過(guò)之后立刻暈倒,原來(lái)是這個(gè)代碼是參照別的模塊的樣子寫(xiě)的,別的模塊在這里都有 N 個(gè)程序分支,通過(guò) if 來(lái)判斷后決定調(diào)用哪個(gè) model 里的方法。但他這個(gè)模塊很簡(jiǎn)單,沒(méi)有什么分支,就是調(diào)用那一個(gè)方法,但他寫(xiě)代碼時(shí),看別人的模塊在這里都進(jìn)行 if 判斷了,所以覺(jué)得自己也應(yīng)該判斷一下,于是就出現(xiàn)了上面這樣的代碼。

          ?

          四, 面向過(guò)程式的編程方法

          遇到過(guò)好幾次 2000 多行的方法,所有業(yè)務(wù)邏輯,一氣呵成,就用了一個(gè)方法搞定。如果是簡(jiǎn)單的邏輯也就算了, 可是幾千行的代碼全放在一個(gè)方法里,一個(gè)類(lèi)里有無(wú)數(shù)的重復(fù)代碼。 這回到好,重構(gòu)那本書(shū)沒(méi)白看, 現(xiàn)在有了實(shí)踐的機(jī)會(huì)了。

          難道您自己調(diào)試的時(shí)候就不覺(jué)得麻煩嗎? 我在這里不想討論什么面向過(guò)程還是面向?qū)ο螅矂e和我說(shuō)什么方法多了也不一定就是面向?qū)ο蟮乃枷搿?/span> 平時(shí)對(duì)自己寫(xiě)的代碼多上點(diǎn)心, 大家都是在這行干了幾年的人了,把代碼寫(xiě)的漂亮點(diǎn)有什么不好。

          ?

          五, 代碼縮進(jìn)混亂

          我們公司有規(guī)定,改代碼的時(shí)候,不許修改原有代碼的格式。 不管他多亂,也不許改。 我不明白這是為什么,也許是檢查代碼的人,要用文件比較工具吧。

          但這下苦壞我了, 代碼的格式那叫一個(gè)亂。 有頂著行頭寫(xiě)的, 有向后空了 N 格的,大概是寫(xiě)代碼的人, 為了方便自己找到正在調(diào)試的那段代碼,所以把代碼的縮進(jìn)變得和其它代碼與眾不同吧。 那您調(diào)試完了到是重新排一下版呀, 這真的不累~~, 現(xiàn)在的 IDE 工具都有自動(dòng)排版代碼的功能, 一個(gè)快捷鍵就搞定了,稍微勤快一點(diǎn)行嗎??

          BT 的一段代碼是縮進(jìn)居然出了屏幕!!! 你吃飽了撐的呀, 沒(méi)事縮那么遠(yuǎn)干嗎, 我根據(jù)后臺(tái)輸出找了半天也沒(méi)找到那段代碼在哪兒, 原來(lái)是因?yàn)榭s進(jìn)的太遠(yuǎn)了,不在屏幕范圍之內(nèi), 向右拉了半天滾動(dòng)條才找到。 你丫是不是寫(xiě)著代碼睡著了? 臉正好砸在 TAB 鍵上。

          ?

          六, 多余的后臺(tái)輸出

          好幾個(gè)循環(huán)嵌套在一起~~~ 也行, 就算是因?yàn)闃I(yè)務(wù)邏輯需要,沒(méi)別的辦法也將就了。 好幾個(gè)循環(huán)嵌套在一起查數(shù)據(jù)庫(kù), 咱們最好還是開(kāi)動(dòng)一下腦筋, 看看有什么更好的辦法。如果還是沒(méi)別的辦法, 那也湊合了。 可這種情況您就別在后臺(tái)輸出 SQL 語(yǔ)句啦, 每次一執(zhí)行程序,成百上千個(gè) SQL 語(yǔ)句在后臺(tái)輸出, 查數(shù)據(jù)庫(kù)才用了一兩秒,結(jié)果輸出這些 SQL 就用了半分鐘。 您自己就沒(méi)覺(jué)出程序慢在哪里嗎? 您調(diào)試程序的時(shí)候輸出一下也就算了, 提交到正式運(yùn)行的環(huán)境時(shí),就麻煩您,勞您大駕~~ 把那些輸出注釋掉吧,實(shí)在不行留幾個(gè)重要的輸出就行了。 讓這種代碼影響系統(tǒng)性能~~ 也太冤了吧。

          ?

          七, 打腫臉充胖子

          我也不知道這條算不算惡習(xí),也許不算,在有些人眼里還是好事。但也要看具體情況,經(jīng)常有些人寫(xiě)代碼不喜歡用 IDE ,只用 EDITPLUS 這類(lèi)工具。按常理說(shuō),初學(xué)者都應(yīng)該盡量用這些編輯器寫(xiě)代碼,對(duì)加深學(xué)習(xí)印象有好處。也有人說(shuō)高手不屑于用那些 IDE ,我少見(jiàn)多怪, 這種絕頂高手我沒(méi)見(jiàn)過(guò)。

          但咱平時(shí)工作的時(shí)候,要的是效率,您不是那種高手就乖乖的用 IDE 吧。經(jīng)常見(jiàn)到有些人,為查一個(gè)方法的調(diào)用,搜來(lái)搜去的。真正的高手是工作效率最高的人,不是用最簡(jiǎn)單工具的人。


          //20061019 start
          ??????? 一些補(bǔ)充:?

          有些人提到用EDITPLUS的效率其實(shí)也很高, 這點(diǎn)我也承認(rèn). 但我想說(shuō)明一下, 我所見(jiàn)到的用EDITPLUS那個(gè)人, 根本沒(méi)有發(fā)揮出editplus應(yīng)有的效率和功能. 在他的手里editplus只是一個(gè)多了顏色區(qū)分的記事本. 編譯程序還是用javac , 也不會(huì)用ANT, 發(fā)布程序還是手工拷貝. 號(hào)稱(chēng)四年經(jīng)驗(yàn)的程序員, 剛到公司時(shí)用了一天時(shí)間重裝好電腦后, 寫(xiě)了一個(gè)打印hello world的程序測(cè)試環(huán)境. 結(jié)果不寫(xiě)static void main方法, 直接就要用java去運(yùn)行. 運(yùn)行不成功還說(shuō)系統(tǒng)配置有問(wèn)題, 需要再重裝.? 每次幫他調(diào)試程序, 想查一個(gè)方法的調(diào)用, 一個(gè)文件一個(gè)文件的搜, 看得我這個(gè)急...........???? 我的希望是不管用什么工具, 要讓這個(gè)工具在自己的手里發(fā)揮出最大的作用來(lái), 如果用editplus非常純熟的話, 我也會(huì)很佩服那個(gè)人的, 而且會(huì)虛心的向他學(xué)習(xí)使用技巧

          可他把時(shí)間全耽誤在這上了, 這樣的工作效率, 加班都是活該的
          //20061019 end



          ??? 今天就寫(xiě)這么多,
          大家還遇到過(guò)什么樣的編程惡習(xí),歡迎補(bǔ)充。

          大家不要總是抱怨什么工資太少,工作量太大。工作效率這玩意兒是要經(jīng)驗(yàn)來(lái)做基礎(chǔ),這沒(méi)錯(cuò),經(jīng)驗(yàn)少也沒(méi)事。咱平時(shí)寫(xiě)程序的時(shí)候多上點(diǎn)心,多對(duì)自己的代碼思考一下,多動(dòng)動(dòng)腦子。自然就能總結(jié)出最好的工作經(jīng)驗(yàn)了,工作效率自然就提高了。

          也別總是說(shuō)什么 STRUTS 不好, HIBERNATE 太慢,不屑去用它。人家的程序能在全世界流行,自然有他的過(guò)人之處。多讀讀他的代碼,學(xué)習(xí)一下他到底好在哪里,如何才能把這些優(yōu)點(diǎn)應(yīng)用到自己的代碼上。這才是最重要的。

          ?也許咱們寫(xiě)不出什么高超的代碼技巧,寫(xiě)不出什么華麗的算法,但如果能在一些習(xí)慣,細(xì)節(jié)上做到精益求精,那也對(duì)得起自己的代碼了。


          ??? 寫(xiě)出上面這些代碼的人,如果你的工資真的很少,那我只能惋惜的說(shuō)一句:你的工資是可憐了點(diǎn),但看您寫(xiě)的這代碼,連這點(diǎn)工資都不應(yīng)該給你!!

          posted on 2006-10-16 23:27 小強(qiáng) 閱讀(5651) 評(píng)論(45)  編輯  收藏 所屬分類(lèi): 技術(shù)相關(guān)

          FeedBack:
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-16 23:48 | 馬嘉楠
          沒(méi)有注釋的代碼確實(shí)太痛苦了
          如果你對(duì)業(yè)務(wù)邏輯再不是很熟悉,那就是相當(dāng)?shù)耐纯嗔?


          用拼音做變量名也不是新鮮事了,
          最近碰到一個(gè),數(shù)據(jù)庫(kù)的字段名字就用拼音簡(jiǎn)寫(xiě),
          都?xì)馔卵耍?nbsp; 回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 00:05 | kangxm
          嚴(yán)重理解!!!

          k他!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 07:17 | xiaosilent
          最不能容忍的就是前兩點(diǎn)了:沒(méi)有注釋和不遵守規(guī)范。

          不過(guò)你公司也夠變態(tài)的。明知道代碼風(fēng)格有問(wèn)題,還不讓改...  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 07:47 | fengzl
          我們公司更狠,人家其他公司給我們作的內(nèi)部管理平臺(tái)人家都放棄維護(hù)了(為什么?寫(xiě)的那個(gè)叫垃圾!要啥沒(méi)啥~連數(shù)據(jù)庫(kù)視圖都不給標(biāo)出來(lái),運(yùn)行數(shù)據(jù)庫(kù)和文檔有嚴(yán)重差異)
          丟給我讓我改東改西,活活累死  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 08:57 | 捕風(fēng)
          我之前也有幸遇到這樣的代碼。
          N個(gè)頁(yè)面都是2000~3000行代碼,鮮有注釋?zhuān)s進(jìn)混亂,數(shù)據(jù)庫(kù)字段和程序變量全是拼音簡(jiǎn)寫(xiě),不明就里的代碼(他100行我就能用10行以內(nèi)替換)。
          嚴(yán)重吐血!!!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 09:09 | hi
          第三條,笑死我了  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 09:09 | itvincent
          那個(gè)縮進(jìn)超出屏幕經(jīng)典!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 09:46 | 水流年似
          餅干啊! 看來(lái)你是真的 很郁悶啊 !寫(xiě)了那么多! 我沒(méi)什么好說(shuō)的!支持下代碼規(guī)范吧 呵呵!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 09:56 | Qutr
          看了一和二的最后一句我直接噴了。
          樓主很幽默阿  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 10:08 | 雙面
          代碼縮進(jìn)混亂也就忍了,咱用IDE格式化一下,也勉強(qiáng)可以看得過(guò)去,注釋沒(méi)有也就沒(méi)有啦,最TMD郁悶的是直接COPY以前或別人的的類(lèi)來(lái)改,您老人家把業(yè)務(wù)邏輯改了,方法里的代碼也改了,就不能順手把人家寫(xiě)過(guò)注釋也改下嗎?不想改?刪掉也可以啊!!這樣的注釋比沒(méi)有還可怕。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 10:21 | greco
          其它的規(guī)范沒(méi)什么異議,只是想說(shuō)注釋的問(wèn)題。忘了在哪本書(shū)上的哪位大師說(shuō)過(guò),如果在一段代碼(50行左右)中出現(xiàn)2次注釋?zhuān)钦f(shuō)明你該重構(gòu)了。看不清業(yè)務(wù)邏輯說(shuō)明,這些業(yè)務(wù)邏輯很混亂,是堆砌出來(lái)的成果。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 11:46 | 曲靜波
          如果一個(gè)類(lèi)擁有2000行的代碼已經(jīng)是不合理的啦。應(yīng)該重構(gòu)。至于代碼縮進(jìn)是IDE format的功能。注釋問(wèn)題,是該寫(xiě)的,而且每個(gè)方法都要寫(xiě)成javadoc的形式。中文名的問(wèn)題,也可以理解。如果用中文做類(lèi)名反編譯過(guò)來(lái)應(yīng)是亂碼~~~  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 12:36 | yuyu123
          這只是在class文件里面吧,還好調(diào)點(diǎn),我現(xiàn)在改的jsp被<%%>包圍著幾千行的java代碼,再加幾百行零散分布的<script>和沒(méi)有縮進(jìn)的HTML,無(wú)語(yǔ)啊!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 13:29 | 萬(wàn)金油
          第一經(jīng)常范.....  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 19:15 | 布衣郎
          沒(méi)有規(guī)矩,不成方圓,好的代碼是讓所有人都看得懂的,而最差的代碼只能給機(jī)器看了。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 20:32 | 卡卡西
          數(shù)日之后有幸遇見(jiàn)了當(dāng)初寫(xiě)這代碼的老兄,問(wèn)過(guò)之后立刻暈倒,原來(lái)是這個(gè)代碼是參照別的模塊的樣子寫(xiě)的,別的模塊在這里都有 N 個(gè)程序分支,通過(guò) if 來(lái)判斷后決定調(diào)用哪個(gè) model 里的方法。但他這個(gè)模塊很簡(jiǎn)單,沒(méi)有什么分支,就是調(diào)用那一個(gè)方法,但他寫(xiě)代碼時(shí),看別人的模塊在這里都進(jìn)行 if 判斷了,所以覺(jué)得自己也應(yīng)該判斷一下,于是就出現(xiàn)了上面這樣的代碼。
          ————————————————————————————————————————————————
          狂倒狂倒狂倒狂倒狂倒狂倒狂倒狂倒狂倒狂倒狂倒。。。。。。。。。。。。。
          狂汗狂汗狂汗狂汗狂汗狂汗狂汗狂汗狂汗狂汗狂汗狂汗。。。。。。。。。。。
          狂暈狂暈狂暈狂暈狂暈狂暈狂暈狂暈狂暈狂暈狂暈狂暈狂暈。。。。。。。。

          最后無(wú)言!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 22:16 | lagoon
          汗!!
          半路出家,沒(méi)有一點(diǎn)軟件工程的思想啊  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-17 22:25 | Java小白
          NB,支持一個(gè)!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-18 13:17 | Lionheart
          更惡心的是,Html標(biāo)記都用Java的字符串組裝起來(lái),然后用一個(gè)Out.pringln(String),搞到頁(yè)面上去,基本上是這樣的,我們的業(yè)務(wù)邏輯是在Jsp里面寫(xiě)的,我們的顯示代碼是在Java類(lèi)里面包裝的,暈阿

          strRtn = "<td colspan=8><table width='100%' border='0' cellspacing='0' cellpadding='1'><tr>";
          strRtn += "<td align='center' valign='center' class='list_td_bar' ></td>";
          strRtn += "<td align='center' valign='center' class='list_td_bar' colspan='2' >[[ 0^workflow^workflow.wf_leavebill.AcceptNumber^ ]] </td>";
          strRtn += "<td align='center' valign='center' class='list_td_bar' colspan='2' >[[ 0^workflow^workflow.wf_leavebill.AcceptDate^ ]] </td>";
          strRtn += "<td align='center' valign='center' class='list_td_bar' colspan='4' >[[ 0^workflow^workflow.wf_leavebill.CurrentStatus^ ]] </td></tr>";
            回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-18 14:40 | 123bingbing
          增開(kāi)7群,號(hào)碼 30440732
          8群 30756649
          9群 30178567
          10群 28694497

          我們的qq群:15096318 學(xué)習(xí)程序的都可以來(lái)
            回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-18 15:59 | 小強(qiáng)
          @Lionheart


          Lionheart真是說(shuō)到我心里了, 我剛剛又遇到了這樣一個(gè)代碼, 整個(gè)模塊沒(méi)有JSP, 所有的JSP,HTML, 連JS代碼都是在servlet里Out.pringln(String)的...........天啊, 神啊救救我吧............... 我們工程布署不規(guī)范, 哪怕是改個(gè)普通的工具類(lèi)都要重啟才行.重啟的可是weblogic呀, ..........累死人不償命啊  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-19 16:05 | teak
          我的同事,寫(xiě)了個(gè)3000行的jsp頁(yè)面,重構(gòu)后600行。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-19 16:52 | hyifeng
          哈哈,笑死我了。

          我和博主一樣辛苦,
          我曾接手一個(gè)統(tǒng)計(jì)項(xiàng)目,在不了解業(yè)務(wù)邏輯的情況下,啃所有的代碼。
          代碼沒(méi)有任何注釋。
          不一樣的是,我看的是C++,應(yīng)該比看Java更悲慘。

          變量名是一大堆英文縮寫(xiě),很多名稱(chēng)都是非常相似的。

          看這些代碼我也是搜索,上下翻飛。
          有時(shí)候調(diào)試也派不上什么用場(chǎng),因?yàn)榈教幎加杏?jì)算和集合操作,
          沒(méi)有明白邏輯的情況下,跟蹤也不會(huì)知道他在干什么。
          一邊看一邊做標(biāo)記,然后假想......

          唯一好比較好的是,代碼還算規(guī)范。
            回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-22 10:35 | LifeFree
          恩,我經(jīng)常接觸到這樣的代碼,從剛寫(xiě)代碼的新人到寫(xiě)過(guò)超過(guò)十年代碼的系統(tǒng)架構(gòu)師,都多少存在這樣的問(wèn)題,原因很多。
          基本上要依靠寫(xiě)程序的人的自律,和腦子里時(shí)時(shí)有自己要寫(xiě)出好的代碼的這根弦。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-23 12:57 | alex[匿名]
          我們的業(yè)務(wù)邏輯是在Jsp里面寫(xiě)的,我們的顯示代碼是在Java類(lèi)里面包裝的
          --------------
          感覺(jué)這個(gè)最彪悍  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-30 10:28 | nada
          樓主幽默!!有針對(duì)性,寫(xiě)的好  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-30 15:26 | darkmagi
          比起神州數(shù)碼的易飛ERP, 這些只能是小巫見(jiàn)大巫
          易飛ERP, 所有的表, 全部用編號(hào),最變態(tài)的一個(gè)表, 物品基本信息表, 400多個(gè)字段, 字段名MB001--MB422, 天哪, 隨便寫(xiě)點(diǎn)什么東西都要查N久的表, 真是沒(méi)有最丑陋, 只有更丑陋
            回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-30 21:33 | suntower
          樓上的,這就是您見(jiàn)怪了灑。
          人家是故意這么做的,好讓您不好修改。這樣就可以拿過(guò)去讓他們幫您改了,好收錢(qián)。
          我見(jiàn)過(guò)一個(gè)php程序,函數(shù)名全是64位編碼的。
          就是function R34527348357r65r62389543928549($var879854296)這樣的,這是故意加密的了。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-31 13:36 | Samuel Cai
          to 小強(qiáng)
          關(guān)于五,沒(méi)錯(cuò),一般都是用版本控制軟件來(lái)讓代碼,如果你做了什么功能,可以通過(guò)比較來(lái)看你的修改。
          因此,你可以分兩步提交,第一是只修正縮進(jìn),記得注釋說(shuō)沒(méi)有改動(dòng)代碼。第二才是添加你的功能,這樣別的人就可以很方便的看出你做了什么改動(dòng)。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-10-31 16:48 | hotleave
          呵呵,其他的還都沒(méi)有犯過(guò),只是經(jīng)常用拼音做變量或函數(shù)名,因?yàn)樵鄣腅文不行。開(kāi)了一個(gè)IDE后,再開(kāi)金山詞霸機(jī)器又太卡了。
          至于中文變量名,既然支持,用一下也無(wú)防,還清楚明了呢。我不反對(duì)用中文變量名,雖說(shuō)我沒(méi)有用過(guò)。^-^  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2006-11-01 10:44 | 閔毓
          文筆不錯(cuò),說(shuō)的都是經(jīng)典,強(qiáng)力支持。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2007-01-14 14:15 | Alex
          有點(diǎn)意思,尤其是這句"你丫是不是寫(xiě)著代碼睡著了? 臉正好砸在 TAB 鍵上。"

          摟主的脾氣特投我,有機(jī)會(huì)聊聊
            回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2007-03-21 11:07 | lendo
          強(qiáng)烈地支持,再簡(jiǎn)單的方法也要堅(jiān)持寫(xiě)注釋?zhuān)@樣形成習(xí)慣,到了業(yè)務(wù)復(fù)雜的時(shí)候就能體現(xiàn)他的價(jià)值了  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2007-03-22 07:34 | chorsg
          理解!
          我公司做的項(xiàng)目當(dāng)初老總招了幾個(gè)中專(zhuān)生,另人不解的中專(zhuān)生里面還有原來(lái)是學(xué)醫(yī)的,前段時(shí)間改他們的代碼真想砸電腦。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2007-05-09 23:02 | 監(jiān)聽(tīng)器
          樓主幽默!!有針對(duì)性,寫(xiě)的好。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2008-01-04 22:35 | talentluo
          "你丫是不是寫(xiě)著代碼睡著了? 臉正好砸在 TAB 鍵上。"
          這句太逗了。。。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2008-01-10 17:19 | iu
          trstyyufvguiljvj; fgxerajuy6 jmyhfi kuyfi67edjhgc gdi76io8y9 uyhfol mhjfui6yrfi67rorf kuyr9ibn g 7t08 8typt7sgfhg i8g fi  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2008-05-19 11:15 | xushaoo
          其實(shí)沒(méi)必要去怨責(zé)那些人,你也許說(shuō),你在修改的時(shí)候麻煩,但是也許你修改的時(shí)間還抵不上別人開(kāi)發(fā)的時(shí)間,別人可能兩星期出個(gè)項(xiàng)目,國(guó)內(nèi)哪有你說(shuō)的那種好情況,給你寫(xiě)注釋什么的,沒(méi)時(shí)間~~~~  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)[未登錄](méi)
          2009-05-08 17:04 | feng
          對(duì)我們程序員來(lái)說(shuō),時(shí)間就是生命啊,這些惡習(xí)其實(shí)就是在浪費(fèi)我們的時(shí)間  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2009-05-15 22:25 | C.Kevin
          狂笑....  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2009-09-22 02:32 | xjay
          汗。我還見(jiàn)過(guò)數(shù)據(jù)庫(kù)表直接用字母a,b,c,d...字段用a1,a2,a3...的呢,更強(qiáng)悍。  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2009-09-28 13:26 |
          沒(méi)辦法啊,我剛剛開(kāi)始工作,就遇到了老兄說(shuō)的這個(gè)問(wèn)題,看他的代碼就像看天書(shū)一樣,頭疼啊@捕風(fēng)
            回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2010-01-21 11:19 | 樂(lè)瘋了
          舉個(gè)例子 我同事寫(xiě)的 TJQuery 方法名。我看了半天都不知道是啥 后來(lái)看了整套過(guò)程 才發(fā)現(xiàn)原來(lái)是 統(tǒng)計(jì)查詢。我日  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)[未登錄](méi)
          2010-08-16 14:07 | snowolf
          @馬嘉楠
          有天晚上,我為了這種問(wèn)題,重構(gòu)了一遍數(shù)據(jù)庫(kù)!  回復(fù)  更多評(píng)論
            
          # re: 說(shuō)一說(shuō)編程惡習(xí)
          2014-08-05 10:10 | mino
          支持,惡習(xí)與效率。  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 武穴市| 巢湖市| 陇川县| 麻阳| 石棉县| 孟连| 涟源市| 资兴市| 西吉县| 安泽县| 福海县| 崇礼县| 盐源县| 西平县| 军事| 新丰县| 金华市| 杭州市| 夏邑县| 宜兰县| 麻阳| 古丈县| 永济市| 莱州市| 沁源县| 乌恰县| 呼玛县| 丰台区| 应用必备| 黔西县| 乌鲁木齐县| 海南省| 深圳市| 甘德县| 高青县| 黔西县| 天柱县| 东海县| 邛崃市| 辽阳市| 哈尔滨市|