最近小編看到一張關(guān)于幾本書的信息圖,這些書讓你成為編程專家。雖然我不同意他們那里的所有書籍,但我絕對(duì)同意這六本,這是關(guān)于設(shè)計(jì)模式的歷史經(jīng)典。我想和大家分享一下,如果你更傾向于web編程,你也會(huì)發(fā)現(xiàn)其余的書更有價(jià)值,但如果你是服務(wù)器端或全棧Java程序員,你一定會(huì)發(fā)現(xiàn)值得一讀的前5名。
1.重構(gòu),改進(jìn)現(xiàn)有代碼的設(shè)計(jì)
本書是用Java編寫的,因?yàn)樗侵饕Z言,但其概念和思想適用于任何面向?qū)ο蟮恼Z言,例如C++或C#。本書將教您如何將平庸的代碼轉(zhuǎn)換為可以承受生產(chǎn)負(fù)載和現(xiàn)實(shí)世界軟件開發(fā)噩夢(mèng)的出色代碼,即CHANGE。
最重要的是,Martin通過獲取您經(jīng)??吹降拇a,然后一步一步地轉(zhuǎn)換成更靈活、更可用的代碼,真正地引導(dǎo)您完成這些步驟。通過閱讀他的示例,您將了解干凈代碼的真正定義。
重構(gòu)也是經(jīng)驗(yàn)豐富的程序員的一項(xiàng)屬性,因?yàn)槟墓ぷ黝I(lǐng)域現(xiàn)在包括改進(jìn)代碼以及您的開發(fā)人員的代碼。
2.干凈的代碼
這是我最喜歡的書,我一次又一次地把它推薦給我的程序員同事、讀者、同事和學(xué)生。如果你問我關(guān)于編碼、軟件開發(fā)和一般編程的最好的書是什么,這就是它。
Bob Martin大叔不需要任何介紹,他撰寫了一系列敏捷軟件開發(fā)書籍,其中一些來自我自己
- 干凈的代碼
- 清潔編碼器
- 敏捷軟件開發(fā):原則、模式和實(shí)踐
- 面向Java程序員的UML
- 清潔架構(gòu)
- 并且,實(shí)踐中的極限編程
盡管他的大部分書已有10年的歷史,但它們?nèi)匀缓苡袃r(jià)值,而且我相信它們還會(huì)再保留20年,或者至少在面向?qū)ο缶幊涕_始商業(yè)化之前。干凈的代碼不僅教你做什么,還教你不該做什么。
3.代碼完成
這是我猜大多數(shù)人讀過的關(guān)于編碼實(shí)踐的書。在10000英尺處,它在我看來是C++開發(fā)人員的清潔代碼的對(duì)應(yīng)物。盡管我什至在閱讀Clean Code之前就已經(jīng)閱讀了這本書。很久以前,我的一個(gè)朋友告訴我,在他的小公司里,每個(gè)加入公司的新開發(fā)人員都會(huì)收到一份全新的Code Complete副本。
那是那家小公司的一個(gè)很棒的做法,但后來我才知道,即使是微軟也將這本書的副本分發(fā)給他們的員工,我不知道這有多少道理,但這本書確實(shí)讓我相信了.
這是任何程序員的必讀之書,但更重要的是,它是C、C++程序員必讀的。就像我推薦Java開發(fā)人員閱讀清潔代碼一樣首先在閱讀Code Complete之前,我還建議C++開發(fā)人員在接觸Clean Code之前閱讀這本書。盡管它們?cè)谧罴褜?shí)踐和要避免的常見錯(cuò)誤
4.單元測(cè)試的藝術(shù)
如果我想改進(jìn)項(xiàng)目以及程序員的一件事,就是他們的單元測(cè)試能力。經(jīng)過這么多年或認(rèn)識(shí)到單元測(cè)試必須為專業(yè)開發(fā)人員實(shí)踐之后,您將很難找到精通單元測(cè)試并遵循TDD的開發(fā)人員。
雖然我并不難遵循TDD,但至少,您必須為您編寫的代碼以及您維護(hù)的代碼編寫單元測(cè)試。項(xiàng)目也不例外,除了開源項(xiàng)目,很多商業(yè)的內(nèi)部企業(yè)項(xiàng)目都缺乏單元測(cè)試。
如果您是項(xiàng)目經(jīng)理、團(tuán)隊(duì)負(fù)責(zé)人或技術(shù)負(fù)責(zé)人,請(qǐng)創(chuàng)建適當(dāng)?shù)能浖_發(fā)流程,包括代碼審查、單元測(cè)試、JIRA、編碼標(biāo)準(zhǔn)、SVN提交策略和部署實(shí)踐。您的工作不僅是創(chuàng)建這些流程,還要確保開發(fā)人員不僅遵循而且從中學(xué)習(xí)。
5.實(shí)施精益軟件開發(fā):從概念到現(xiàn)金
這本書告訴你如何在整個(gè)軟件組織中推動(dòng)高價(jià)值的變革,并使其堅(jiān)持下去。它向您展示了如何在真實(shí)的項(xiàng)目、環(huán)境和公司中進(jìn)行精益工作。Tom and Mary Poppendieck(poppendieck.com)在全球范圍內(nèi)教授和咨詢軟件精益原則。
她的方法確定了真正的商業(yè)價(jià)值并使產(chǎn)品團(tuán)隊(duì)能夠意識(shí)到這種價(jià)值,她的新書“Leading Lean Software Development”是為各種領(lǐng)導(dǎo)者編寫的,如項(xiàng)目負(fù)責(zé)人、項(xiàng)目經(jīng)理、C級(jí)管理人員等。
我知道這本書有點(diǎn)晚了,但它對(duì)你的書本身是一個(gè)很好的補(bǔ)充,特別是如果你有志成為技術(shù)領(lǐng)導(dǎo)者或已經(jīng)在做這項(xiàng)工作。
6.設(shè)計(jì)模式,可重用的面向?qū)ο筌浖脑?/h2>
如果還沒有讀過,我相信你一定聽說過這本書。這是經(jīng)典的GOF(Gang of Four)設(shè)計(jì)模式書籍。
我們應(yīng)該感謝四人幫;Eric Gamma、Richard Helm、Ralph Johnson和John Vlissides出色地創(chuàng)建、整合并將其帶入主流軟件開發(fā)。
以上就是北大青鳥長(zhǎng)沙麓谷校區(qū)小編介紹的"零基礎(chǔ)自學(xué)編程應(yīng)該怎么學(xué)?讀什么書管用",希望對(duì)大家有幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為您服務(wù)。