編寫(xiě)優(yōu)秀代碼的十個(gè)技巧_第1頁(yè)
編寫(xiě)優(yōu)秀代碼的十個(gè)技巧_第2頁(yè)
編寫(xiě)優(yōu)秀代碼的十個(gè)技巧_第3頁(yè)
編寫(xiě)優(yōu)秀代碼的十個(gè)技巧_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、寫(xiě)出優(yōu)秀的代碼,更需要你有深 作為程序員,寫(xiě)代碼是需要一種崇高無(wú)上的精神來(lái)支撐的, 厚的底蘊(yùn)和良好的編碼習(xí)慣。在介紹寫(xiě)優(yōu)秀代碼的10個(gè)技巧之前,我們先來(lái)探討一下什么 樣的代碼才是優(yōu)秀的代碼。 穩(wěn)定可靠(Robustness ) 可維護(hù)且簡(jiǎn)潔(Maintainable and Simple Code ) 高效(Fast) 簡(jiǎn)短(Small) 共享性(Reusable ) 可測(cè)試性(Testable ) 可移植性(Portable ) 面對(duì)以上的目標(biāo),我們總結(jié)了以下10個(gè)寫(xiě)代碼的技巧,希望對(duì)你有所幫助。 1、百家之長(zhǎng)歸我所有 其實(shí)寫(xiě)代碼的方式有很多,每個(gè)人都有自己的風(fēng)格,但是眾多的風(fēng)格中總有一些共

2、性的、基 本的寫(xiě)代碼的風(fēng)格,如為程序?qū)懽⑨尅⒋a對(duì)齊,等等。是不是編程規(guī)范?對(duì)就是編程規(guī)范。 2、取個(gè)好名字 取個(gè)好的函數(shù)名、變量名,最好按照一定的規(guī)則起名。還是編程規(guī)范。 3、凌波微步,未必摔跤 這里我用“凌波微步”來(lái)形容 goto語(yǔ)句。通常,goto語(yǔ)句使程序跳來(lái)跳去,不容易讀, 而且不能優(yōu)化,但是在某種情況下,goto語(yǔ)句反而可以增強(qiáng)程序的可讀性。Just go ahead , not go back 。 4、先發(fā)制人,后發(fā)制于人 Defen sive Codi ng指一些可能會(huì)出錯(cuò)的情況,如變量的初始化等,要考慮到出現(xiàn)錯(cuò)誤情況 下的處理策略。測(cè)試時(shí)要多運(yùn)行幾個(gè)線程。有些程序在一個(gè)線城下

3、運(yùn)行是正常的,但是在多 個(gè)線程并行運(yùn)行時(shí)就會(huì)出現(xiàn)問(wèn)題;而有些程序在一個(gè)CPU運(yùn)行幾個(gè)線程是正常的,但是在 多個(gè)CPU下運(yùn)行時(shí)就會(huì)出現(xiàn)問(wèn)題,因?yàn)閱蜟PU運(yùn)行線程只是狹義的并行,多CPU 一起運(yùn) 行程序,才是真正的并行運(yùn)算。 5、見(jiàn)招拆招,滴水不漏 這里的Error Case (錯(cuò)誤情況),是指那些不易重視的錯(cuò)誤。 如果不對(duì)Error Case進(jìn)行處理, 程序在多數(shù)情況下不會(huì)出錯(cuò),但是一旦出現(xiàn)異常,程序就會(huì)崩潰。 6、熟習(xí)劍法刀術(shù),所向無(wú)敵 用“劍法刀術(shù)”來(lái)形容一些API是因?yàn)樗鼈兌际墙?jīng)過(guò)了很多優(yōu)秀開(kāi)發(fā)人員的不斷開(kāi)發(fā)、測(cè) 試,其效率很高,而且簡(jiǎn)潔易懂,希望大家能掌握它,熟悉它,使用它。是不是象我們

4、的 ULIB。 7、雙手互搏,無(wú)堅(jiān)不摧 這里的測(cè)試不是指別人來(lái)測(cè)試你的代碼,而是指自己去測(cè)試。 因?yàn)槟闶菍?xiě)代碼的原作者,對(duì) 代碼的了解最深,別人不可能比你更了解,所以你自己在測(cè)試時(shí), 可以很好地去測(cè)試哪些邊 界條件,以及一些意向不到的情況。 8、活用斷言 斷言(assertion )是個(gè)很好的調(diào)試工具和方法,希望大家能多用斷言,但是并不是所有的 情況下都可以用到斷言。有些情況使用斷言反而不合適。 9、草木皆兵,不可大意 是指在寫(xiě)代碼時(shí),要小心一些輸入的情況,比如輸入文件、TCP的sockets、函數(shù)的參數(shù)等 等,不要認(rèn)為使用我們的API的用戶都知道什么是正確的、什么是錯(cuò)的,也就是說(shuō)一定要 考慮

5、到對(duì)外接口的出錯(cuò)處理問(wèn)題。 10、最咼境界,無(wú)招勝有招 最好能重用別人開(kāi)放的 意思就是說(shuō)盡量避免寫(xiě)太多的代碼,寫(xiě)的越多,出錯(cuò)的機(jī)會(huì)也越多。 接口函數(shù)或直接調(diào)用別人的api 。 以下無(wú)正文 僅供個(gè)人用于學(xué)習(xí)、研究;不得用于商業(yè)用途。 t o 員 b k ogfljirogeifcc, TOpBicnob3 groimio 麻yqeHuicic 碼 egoBua Hedo 員冶hbi ucno 員 B3OBaTbCEb KoMMepqeckux qeiix. For personal use only in study and research; not for commercial use. Nur f u r den pers?nlichen f u r Studien, Forschung, zu kommerziellen Zwecken verwendet werden. Pour l e

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論