如何寫好代碼?這些書里面有答案
一個(gè)程序員具有一定編碼基礎(chǔ)之后,一定想要再進(jìn)一步提升,從會(huì)寫基礎(chǔ)代碼,到會(huì)寫可讀的優(yōu)秀代碼,重構(gòu)現(xiàn)有代碼以及設(shè)計(jì)模式等
如果你已經(jīng)有了一定的編程基礎(chǔ),想要進(jìn)一步的提升自己,不妨從以下幾本書開始:
1、《測(cè)試驅(qū)動(dòng)開發(fā)》
測(cè)試驅(qū)動(dòng)開發(fā),就是先寫測(cè)試,再寫程序,顛覆了先寫程序再做測(cè)試的傳統(tǒng)。書中大部分的示例都是采用Java代碼,部分采用Python代碼,但是即便你不具備Python基礎(chǔ)也可以順利讀完這本書。
2、《重構(gòu): 改善既有代碼的設(shè)計(jì)》
這本書已經(jīng)成為全球有經(jīng)驗(yàn)的程序員手中的利器,既可用來(lái)改善既有代碼的設(shè)計(jì)、提升軟件的可維護(hù)性,又可用于使既有代碼更易理解、煥發(fā)出新的活力。
最新版是今年3月份才出版,依舊沿襲第1 版的結(jié)構(gòu),依次解釋什么是重構(gòu),為什么要重構(gòu),如何通過(guò)“壞味道”識(shí)別出需要重構(gòu)的代碼,以及如何在實(shí)踐中成功實(shí)施重構(gòu)(無(wú)論用的是什么編程語(yǔ)言)。
3、《Head First設(shè)計(jì)模式》
這本書不說(shuō)大家都很熟悉了,里面每章都介紹了幾個(gè)設(shè)計(jì)模式,完整地涵蓋了四人組版本全部23個(gè)設(shè)計(jì)模式。作者可以讓這23個(gè)設(shè)計(jì)模式“活”起來(lái),不再是以往你想象中的那么死氣沉沉。
4、《設(shè)計(jì)模式解析》
這本書會(huì)比《Head First設(shè)計(jì)模式》講的更加深入,本書以作者自身學(xué)習(xí)、使用模式和多年來(lái)為軟件開發(fā)人員(包括面向?qū)ο蠹夹g(shù)老兵和新手)講授模式的經(jīng)驗(yàn)為基礎(chǔ)撰寫而成。通過(guò)易懂的示例代碼闡明了12個(gè)最常用的模式。
5、《編寫可讀代碼的藝術(shù)》
這本書更關(guān)注的是編碼的細(xì)節(jié),總結(jié)了很多提高代碼可讀性的小技巧,看似都微不足道,但是對(duì)于整個(gè)軟件系統(tǒng)的開發(fā)而言,它們與宏觀的架構(gòu)決策、設(shè)計(jì)思想、指導(dǎo)原則同樣重要。正所謂細(xì)節(jié)決定成敗,程序員也一定要注意代碼細(xì)節(jié)。
6、《代碼整潔之道》
本書提出一種觀念:代碼質(zhì)量與其整潔度成正比。Bob叔給出了一系列行之有效的整潔代碼操作實(shí)踐。這些實(shí)踐在本書中體現(xiàn)為一條條規(guī)則(或稱“啟示”),并輔以來(lái)自現(xiàn)實(shí)項(xiàng)目的正、反兩面的范例。只要遵循這些規(guī)則,就能編寫出干凈的代碼,從而有效提升代碼質(zhì)量。
7、《重構(gòu)與模式》
本書開創(chuàng)性地深入揭示了重構(gòu)與模式這兩種軟件開發(fā)關(guān)鍵技術(shù)之間的聯(lián)系,說(shuō)明了通過(guò)重構(gòu)實(shí)現(xiàn)模式改善既有的設(shè)計(jì),往往優(yōu)于在新的設(shè)計(jì)早期使用模式。本書不僅展示了一種應(yīng)用模式和重構(gòu)的創(chuàng)新方法,而且有助于讀者結(jié)合實(shí)戰(zhàn)深入理解重構(gòu)和模式。
8、《設(shè)計(jì)模式》
本書不僅必讀而且適合多讀幾遍,書中結(jié)合設(shè)計(jì)實(shí)作例從面向?qū)ο蟮脑O(shè)計(jì)中精選出23個(gè)設(shè)計(jì)模式,總結(jié)了面向?qū)ο笤O(shè)計(jì)中最有價(jià)值的經(jīng)驗(yàn),并且用簡(jiǎn)潔可復(fù)用的形式表達(dá)出來(lái)。
9、《元素模式》
本書介紹了一類全新的設(shè)計(jì)模式,稱為元素模式(Elemental Design Pattern),其為軟件工程設(shè)計(jì)模式的研究和應(yīng)用打下了基礎(chǔ)。元素模式深深植根于軟件程序設(shè)計(jì)理論的研究,但其目的卻在于實(shí)踐性和實(shí)用性。從程序設(shè)計(jì)的新手,到資深的開發(fā)工程師,都是元素模式的目標(biāo)受眾。