粗大猛烈进出白浆视频,两性色午夜视频免费播放,国内精品一区二区三区在线观看,精品无人乱码一区二区三区的特点

思誠科技 seecen LOGO
咨詢熱線:0791-87557233
 您現(xiàn)在的位置:  首頁 > 職場人生 

克服敲代碼之“癢”

來源:網(wǎng)絡(luò)    更新時間:2014-5-30

 

 

許多年前我剛開始學(xué)編程時,朋友曾說過一個笑話:差勁的程序員有兩種,一種是開始就寫main函數(shù)的;還有一種是上來就上網(wǎng)找各種類庫源代碼的。當(dāng)時我并不能完全理解:編程序,不去找類庫源代碼,不從main函數(shù)開始,那要怎么做呢?后來才逐漸明白,上來就寫main函數(shù),或者上來就找類庫找源代碼,歸根到底都是因為不能克制對于代碼的沖動。直接寫代碼當(dāng)然很“爽”,很有“成就感”?墒牵@樣做真的是好事嗎?

在現(xiàn)實生活中,我確實看到相當(dāng)多的程序員寫代碼的沖動相當(dāng)強烈,甚至難以克制。這可能是因為任何軟件都需要以代碼的形式來實現(xiàn),拿到一個任務(wù),直接寫代碼可以為程序員帶來強烈的成就感。在心里想個明白或在紙上寫寫畫畫,反而成了一種難以克制的煎熬。但有經(jīng)驗的人都知道,程序不等于代碼,程序的含義和復(fù)雜性遠遠超過代碼;沒有明晰的需求,沒有清楚的頭腦,沒有良好的規(guī)劃,寫出來的代碼就成了無源之水,無本之木,寫得越爽,后果可能越嚴重。

我曾經(jīng)見過一套系統(tǒng),其中充滿了各種狀態(tài)碼的條件判斷,這種情況本來很正常,不幸的是所有的狀態(tài)碼都是硬編碼的數(shù)字,整個系統(tǒng)就是一本天書:一會兒判斷這里是否等于2,一會兒判斷那里是否大于7……究其原因是程序員覺得這些狀態(tài)碼無非就是“用數(shù)字代表狀態(tài)”,所以隨便選些數(shù)字就好了,2代表什么,7對應(yīng)什么,自己記得就好了。更重要的是,硬編碼的狀態(tài)碼“用起來方便”,敲代碼的速度大大提升——不需要查找變量,也不需要輸入整個變量名。這種系統(tǒng)的問題相信大家都猜得到,維護和修改起來無比痛苦。因此,盡管寫這些程序的程序員已有一兩年甚至更多年的工作經(jīng)驗,但很難說他們有“職業(yè)素養(yǎng)”。

與此相反,重構(gòu)的人員吸取了之前的教訓(xùn)。雖然全部硬編碼看起來不爽,用起來更不爽,人人都有立刻動手改掉它的沖動,但重構(gòu)時不是首先改代碼,而是先仔細閱讀程序,編寫了一份包含所有狀態(tài)碼的圖表(并且打印出來供隨時查閱),再根據(jù)狀態(tài)碼的意義和使用場景,重新設(shè)計狀態(tài)碼(因為各個狀態(tài)之間還存在邏輯關(guān)系,所以需要以自定義類型表示狀態(tài)),最后才動手編碼完成重構(gòu)。事實證明,這種策略是非常成功的:閱讀代碼、制定圖表、重新設(shè)計需要三周的時間,真正的重構(gòu)只用幾天就順利完成了,而且從此以后維護和修改的難度大大降低,真正達到了重構(gòu)的目的。完成重構(gòu)工作的程序員,工作經(jīng)驗并不比最初編寫程序的人多,他們沒有一開始就寫代碼,甚至沒有花太多時間在代碼上,更沒有用到高深莫測的技術(shù),但他們身上體現(xiàn)出來的,恰恰是可貴的職業(yè)素養(yǎng)。

幾乎所有程序員都喜歡狂敲代碼的快感,但職業(yè)程序員必須要克制寫代碼的沖動,在寫代碼之前花更多時間理解需求,設(shè)計系統(tǒng),制定規(guī)劃,這樣寫出來的代碼才會更加精練,更加聰明,整個程序也因此更有價值。貢獻更有價值的程序才是程序員職業(yè)素養(yǎng)的體現(xiàn)。

作者余晟,非正統(tǒng)技術(shù)愛好者,畢業(yè)于計算機系,副修中文,《正則指引》作者。

 

  • 上一篇文章:

  • 下一篇文章:
  •  

    0791-87557233

    重視每個來電 珍惜您的時間
    思誠者開發(fā)沙龍
    江西思誠科技有限公司  贛ICP備17006097號  CopyRight©2014 - 2020