您的位置:首頁 > 業(yè)內(nèi)資訊 > 優(yōu)秀程序員的18大法則
經(jīng)過多年的積累,我發(fā)現(xiàn),下面這些基本的指導(dǎo)法則,可以幫助我成為一個(gè)更加高效的程序員。
程序設(shè)計(jì)法則,與設(shè)計(jì)和工程的原理密切相關(guān)。下面這些編程法則幫助我讓我獲益匪淺,所以我想分享給大家,希望也能幫助大家更高效,生產(chǎn)出的代碼更容易維護(hù),并且bug和缺陷更少。
DRY原則
不要重復(fù)(Don’t repeat yourself)——程序設(shè)計(jì)中一個(gè)最根本的原則就是要避免重復(fù)。許多編程結(jié)構(gòu)(比如循環(huán)、函數(shù)、類等)的存在就是為了避免重復(fù)。一旦重復(fù)(例如,一個(gè)長(zhǎng)表達(dá)式,一系列語句,相同的概念)的話,就會(huì)創(chuàng)建一個(gè)新的抽象。
抽象原則
“每個(gè)在程序中有意義的功能片段應(yīng)該只在源代碼的一處地方實(shí)現(xiàn)!
KISS(Keep it simple, stupid!)原則
簡(jiǎn)單性(避免復(fù)雜性)應(yīng)該永遠(yuǎn)當(dāng)作是一個(gè)重要的目標(biāo)。寫簡(jiǎn)單的代碼,不但花費(fèi)的時(shí)間少,錯(cuò)誤少,而且修改起來也容易。
避免創(chuàng)建YAGNI(You aren’t going to need it)原則
只有當(dāng)你需要的時(shí)候才去添加額外的功能,不需要就不要畫蛇添足。
方法要最簡(jiǎn)單,效果要一樣好
在編程時(shí),我們需要問問自己:“有沒有最簡(jiǎn)單的完成任務(wù)的途徑?”這有助于我們保持一直行走在簡(jiǎn)約設(shè)計(jì)的道路上。
不要讓我思考
這實(shí)際上是由Steve Krug寫的一本書的書名。關(guān)鍵要點(diǎn)是,代碼應(yīng)該盡可能地易于閱讀和理解。如果閱讀人需要大量的思考才能理解代碼,那么或許這代碼還需要被簡(jiǎn)化。
開/閉原則
軟件實(shí)體(類,模塊,函數(shù)等)在擴(kuò)展時(shí)應(yīng)該開放,在修改時(shí)應(yīng)該關(guān)閉。換句話說,你寫的類大家可以擴(kuò)展,但不能修改。
為維護(hù)者寫代碼
值得寫的代碼要保證將來一定值得維護(hù)。未來的你由于經(jīng)歷的代碼太多,也許再回過頭來看這些代碼的時(shí)候,也和其他人一樣,已經(jīng)成為了一個(gè)完全的陌生人。請(qǐng)記住,“寫代碼的時(shí)候,就假設(shè)將來要維護(hù)的人是個(gè)知道你住在哪里的暴力型精神病患者吧。”
最小驚訝原則
最小驚訝原則通常引用于用戶界面方面,但這一原則也適用于編寫代碼。代碼應(yīng)該盡可能地不要讓閱讀者驚訝。遵守標(biāo)準(zhǔn)約定,注釋說什么代碼就做什么,命名是什么意思代碼就是什么意思,盡可能地避免驚訝導(dǎo)致的潛在的負(fù)面影響。
小編推薦閱讀《夢(mèng)幻新誅仙》裝備獲取方式大全最新(輕松掌握各種裝備獲取技巧,為你的角色提升實(shí)力)
閱讀《萬靈啟源SSR抽獎(jiǎng)概率揭曉》SSR抽獎(jiǎng)概率究竟是多少呢?(以游戲?yàn)橹,讓你了解抽?jiǎng)背后的真相)
閱讀《最囧大腦》32關(guān)通關(guān)攻略技巧指南(打破困境,激活大腦,輕松通關(guān))
閱讀深度詳解王者榮耀深淵王者段位要求(從細(xì)節(jié)到實(shí)戰(zhàn),解析深淵王者段位升級(jí)技巧攻略)
閱讀《明日方舟》最強(qiáng)先鋒干員推薦指南(打造最強(qiáng)先鋒戰(zhàn)隊(duì),從干員推薦到培養(yǎng)全解析)
閱讀《魔獸世界》懷舊服技巧指南大全(挑戰(zhàn)圣光的召喚任務(wù),為部落聯(lián)盟贏取榮譽(yù))
閱讀探尋江湖中的寶藏——尋找《煙雨江湖》西子君劍線索的攻略技巧最新(游戲中怎樣獲得西子君劍線索?)
閱讀星露谷物語下水道屏障破解攻略技巧指南(助你輕松突破下水道難關(guān),快速獲得豐厚獎(jiǎng)勵(lì))
閱讀《燃燒意志路奇加點(diǎn)攻略技巧指南》(航海王游戲中路奇如何加點(diǎn),最新推薦匯總)
閱讀王者榮耀史詩皮膚卡意思一覽大全(探索王者榮耀史詩皮膚的故事,了解背后的涵義)
閱讀《重返深淵鎖鐮》武器攻略大全最新(每把武器攻略,助你通關(guān)游戲)
閱讀《DNF》游戲牛郎星的光輝快速獲得攻略技巧(跨越星際盡享榮耀)
閱讀探秘夢(mèng)幻模擬戰(zhàn)手游霧風(fēng)的技能屬性攻略(霧風(fēng)技能解析,讓你成為游戲中的絕佳戰(zhàn)士)
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]
湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)