好的程序員從來不靠格子衫或者顏值吃飯,對(duì)一個(gè)程序員來說,代碼質(zhì)量以及洞悉軟件編寫之道的能力比什么都重要。 當(dāng)你已經(jīng)開始在意代碼質(zhì)量的時(shí)候,不妨反思一下自己的代碼是否易于維護(hù)和重構(gòu),它能重復(fù)利用么?是否風(fēng)格保持一致?一段好的代碼,會(huì)讓閱讀的人賞心悅目,就好比讀一篇美文,而面對(duì)一段爛代碼,閱讀者只會(huì)在讀完后高喊:這什么玩意兒? 因此,一段高品質(zhì)的代碼,應(yīng)該是普通開發(fā)者能夠快速,輕松理解的代碼。反之,則不能稱之為高品質(zhì)代碼。 在這篇文章中,我將介紹一套關(guān)于提高代碼質(zhì)量的書籍,我認(rèn)為每個(gè)開發(fā)人員都必須閱讀并遵循這些書籍。我將這些書稱為“關(guān)于代碼質(zhì)量的黃金書籍”。 1、《重構(gòu)》 這本書是經(jīng)典之作。它使重構(gòu)成為軟件開發(fā)的主流概念。作者在本書中首次介紹了“smell”的比喻。并且引入了70多種可行的重構(gòu)技術(shù),這些技術(shù)目前依然被全世界的開發(fā)人員使用。 2、《代碼大全》 它從軟件質(zhì)量和編程思想等方面論述了軟件構(gòu)建的各個(gè)問題,并詳細(xì)論述了緊跟潮流的新技術(shù)、高屋建瓴的觀點(diǎn)、通用的概念,還含有豐富而典型的程序示例。本書涵蓋的知識(shí)點(diǎn)不僅廣而且全面,它也是因此而聞名。 3、《代碼質(zhì)量》 之所以推薦這本書,是因?yàn)樗蜃x者展示了代碼質(zhì)量的不同方面,包括可移植性,可靠性和可維護(hù)性。本書不僅解釋了與代碼質(zhì)量相關(guān)的潛在問題和常見錯(cuò)誤,而且還提供了足夠的細(xì)節(jié)和示例,使讀者能夠完全理解其中的概念和準(zhǔn)則。 4、《代碼整潔之道》 這是該領(lǐng)域的另一本具有里程碑意義的書。它引入了著名的童子軍規(guī)則,該規(guī)則被認(rèn)為是軟件系統(tǒng)維持高代碼質(zhì)量的有效指南。此外,本書還提供了編寫高度可維護(hù)代碼的最佳實(shí)踐的完整列表。 5、《設(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á)出來。書中分類描述了一組設(shè)計(jì)良好、表達(dá)清楚的軟件設(shè)計(jì)模式,這些模式在實(shí)用環(huán)境下特別有用。 6、《編程珠璣》 在書中,作者選取許多具有典型意義的復(fù)雜編程和算法問題,解決方案的代碼均以C/C++語(yǔ)言編寫,不僅有趣,而且有很大的實(shí)戰(zhàn)示范意義。每章后所附習(xí)題極具挑戰(zhàn)性和啟發(fā)性,書末給出了簡(jiǎn)潔的解答。 7、《軟件設(shè)計(jì)重構(gòu)》 本書主要介紹25個(gè)軟件架構(gòu)壞味,它們?cè)诖_定設(shè)計(jì)問題時(shí)的作用以及可用的重構(gòu)方法,并結(jié)合圖表和示例給出了詳盡說明,旨在引領(lǐng)讀者掌握代碼易讀、易修改的關(guān)鍵,讓代碼具備重構(gòu)能力。另外,本書將何時(shí)應(yīng)該重構(gòu)、重構(gòu)時(shí)遇到的一些常見問題穿插在了示例講解中。 |
|