



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、寫出優(yōu)秀的代碼,更需要你有深 作為程序員,寫代碼是需要一種崇高無上的精神來支撐的, 厚的底蘊(yùn)和良好的編碼習(xí)慣。在介紹寫優(yōu)秀代碼的10個技巧之前,我們先來探討一下什么 樣的代碼才是優(yōu)秀的代碼。 穩(wěn)定可靠(Robustness ) 可維護(hù)且簡潔(Maintainable and Simple Code ) 高效(Fast) 簡短(Small) 共享性(Reusable ) 可測試性(Testable ) 可移植性(Portable ) 面對以上的目標(biāo),我們總結(jié)了以下10個寫代碼的技巧,希望對你有所幫助。 1、百家之長歸我所有 其實(shí)寫代碼的方式有很多,每個人都有自己的風(fēng)格,但是眾多的風(fēng)格中總有一些共
2、性的、基 本的寫代碼的風(fēng)格,如為程序?qū)懽⑨尅⒋a對齊,等等。是不是編程規(guī)范?對就是編程規(guī)范。 2、取個好名字 取個好的函數(shù)名、變量名,最好按照一定的規(guī)則起名。還是編程規(guī)范。 3、凌波微步,未必摔跤 這里我用“凌波微步”來形容 goto語句。通常,goto語句使程序跳來跳去,不容易讀, 而且不能優(yōu)化,但是在某種情況下,goto語句反而可以增強(qiáng)程序的可讀性。Just go ahead , not go back 。 4、先發(fā)制人,后發(fā)制于人 Defen sive Codi ng指一些可能會出錯的情況,如變量的初始化等,要考慮到出現(xiàn)錯誤情況 下的處理策略。測試時要多運(yùn)行幾個線程。有些程序在一個線城下
3、運(yùn)行是正常的,但是在多 個線程并行運(yùn)行時就會出現(xiàn)問題;而有些程序在一個CPU運(yùn)行幾個線程是正常的,但是在 多個CPU下運(yùn)行時就會出現(xiàn)問題,因?yàn)閱蜟PU運(yùn)行線程只是狹義的并行,多CPU 一起運(yùn) 行程序,才是真正的并行運(yùn)算。 5、見招拆招,滴水不漏 這里的Error Case (錯誤情況),是指那些不易重視的錯誤。 如果不對Error Case進(jìn)行處理, 程序在多數(shù)情況下不會出錯,但是一旦出現(xiàn)異常,程序就會崩潰。 6、熟習(xí)劍法刀術(shù),所向無敵 用“劍法刀術(shù)”來形容一些API是因?yàn)樗鼈兌际墙?jīng)過了很多優(yōu)秀開發(fā)人員的不斷開發(fā)、測 試,其效率很高,而且簡潔易懂,希望大家能掌握它,熟悉它,使用它。是不是象我們
4、的 ULIB。 7、雙手互搏,無堅(jiān)不摧 這里的測試不是指別人來測試你的代碼,而是指自己去測試。 因?yàn)槟闶菍懘a的原作者,對 代碼的了解最深,別人不可能比你更了解,所以你自己在測試時, 可以很好地去測試哪些邊 界條件,以及一些意向不到的情況。 8、活用斷言 斷言(assertion )是個很好的調(diào)試工具和方法,希望大家能多用斷言,但是并不是所有的 情況下都可以用到斷言。有些情況使用斷言反而不合適。 9、草木皆兵,不可大意 是指在寫代碼時,要小心一些輸入的情況,比如輸入文件、TCP的sockets、函數(shù)的參數(shù)等 等,不要認(rèn)為使用我們的API的用戶都知道什么是正確的、什么是錯的,也就是說一定要 考慮
5、到對外接口的出錯處理問題。 10、最咼境界,無招勝有招 最好能重用別人開放的 意思就是說盡量避免寫太多的代碼,寫的越多,出錯的機(jī)會也越多。 接口函數(shù)或直接調(diào)用別人的api 。 以下無正文 僅供個人用于學(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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程合同抵押貸款合同范本
- 2025江蘇蘇州獅山商務(wù)創(chuàng)新發(fā)展集團(tuán)有限公司及下屬板塊公司招聘10人筆試參考題庫附帶答案詳解
- Maytansine-derivative-M24-生命科學(xué)試劑-MCE
- Enzyme-IN-3-disodium-生命科學(xué)試劑-MCE
- 科技短視頻創(chuàng)新技術(shù)傳播策略
- 電子俱樂部合同范本
- 東莞廣東東莞市自然資源局黃江分局自主(公開)招聘聘用人員筆試歷年參考題庫附帶答案詳解
- 上海2025年上海市青浦區(qū)教育系統(tǒng)招聘教師488人筆試歷年參考題庫附帶答案詳解
- 修房建筑合同范本
- epc設(shè)備合同范本
- 紅色喜慶大氣軍令狀2022頒獎誓師大會動態(tài)PPT模板
- 綠化養(yǎng)護(hù)工作計(jì)劃15篇
- 防災(zāi)減災(zāi)工程學(xué)第六章火災(zāi)害課件
- DB11 938-2022 綠色建筑設(shè)計(jì)標(biāo)準(zhǔn)
- 部編版語文八年級下冊第六單元名著導(dǎo)讀《鋼鐵是怎樣煉成的》問答題 (含答案)
- 2022譯林版新教材高一英語必修二單詞表及默寫表
- 全國青少年機(jī)器人技術(shù)等級考試:二級培訓(xùn)全套課件
- 九種中醫(yī)體質(zhì)辨識概述課件
- 小學(xué)數(shù)學(xué)計(jì)算能力大賽實(shí)施方案
- 古詩詞誦讀《虞美人》課件-統(tǒng)編版高中語文必修上冊
- 文物學(xué)概論-中國古代青銅器(上)
評論
0/150
提交評論