學習軟體開發應該看的書

來源:互聯網
上載者:User

標籤:

學習軟體開發應該看的書 來源: 李越甲的日誌

1、 C語言提升

《c和指標》

《c缺陷和陷阱》

《c專家編程》

這三本書是一個初級C程式員必看的三本書,同時也是應屆新員工必須好好學習的教材,非常適合剛畢業的大學生學習

2、  C++語言提升

《Effective C++:改善程式與設計的55個具體做法》

《More Effective C++:35個改善編程與設計的有效方法(中文版)》

《C++沉思錄》

《C++Templates中文版》

《深度探索 C++ 物件模型》

《泛型程式設計與STL》

我 是一個由C轉向C++的程式員,所以從來沒有系統的學習過C++的文法,往往是用到的什麼學習什麼。如果要系統入門,《C++ primer》倒是不錯。上面的幾本書,我正在讀的是第一本,打算這兩個月可以學完《effective c++》和《more effective c++》,之後再更深一步學習。當然,這裡的學完只是把書看完,做個筆記,要完全的理解書中的內容還需要進一步的實踐。


3、 設計類

《代碼大全》:這是我非常喜歡的一本書,非常適合工作2~3年的人精讀。我在一篇文章中專門做過推薦。

《重構-改善既有代碼的設計》

《代碼整潔之道》

《實現模式》

《程式員應該知道的97件事》

這幾本書一般講的是函數以及更低層次的設計。《代碼大全》完完整整的讀完過,而且做了很多的筆記,獲益良多。《重構》就不必說了,其他幾本書前面大致看了一下,也非常不錯,計劃有時間要好好學習一下。


4、 架構

《軟體體繫結構的藝術》

《領域驅動設計:軟體核心複雜性應對之道》

《軟體架構師應該知道的97件事》

《公司專屬應用程式架構模式》

《面向模式的軟體體繫結構卷1:模式系統》

《軟體架構設計》

《架構師需要知道的97件事》

我 對這一塊比較陌生,這也是我今年的學習重點。《軟體架構設計》這本書我從頭到尾讀過,對軟體架構也只是建立了一個整體的印象。後面這一塊的學習我 會和模式的學習結合起來。首先的學習目標是《面向模式的軟體體繫結構卷1》,之後是《分析模式》《公司專屬應用程式架構模式》《領域驅動設計》。


5、敏捷開發

《測試驅動開發》

《敏捷式軟體開發 (Agile Software Development)——原則、模式與實踐》

《Scrum敏捷專案管理》

《硝煙中的Scrum和XP——我們如何實施Scrum》

《敏捷式軟體開發 (Agile Software Development)》這本書我學習了“原則”這部分,對敏捷式軟體開發 (Agile Software Development)有一個大致的瞭解。其他的書籍對我更像一個參考書。目前還無法安排出大量時間系統學習。


6、 模式

《Java與模式(含盤)》

《實現模式》

《公司專屬應用程式架構模式》

《分析模式 可複用的物件模型》

《反模式:危機中軟體、架構和項目的重構》

《設計模式》

《面向模式的軟體體繫結構卷1:模式系統》

上面講架構的時候說過,模式的學習要和架構結合起來。當然,這是說的更高層次:架構的模式。《實現模式》是面向函數的,《設計模式》是物件導向體系的。《設計模式》我從頭到尾看過,但是還需要在看一遍,當時讀的時候經驗有限,理解的不是很透徹。現在看肯定會有新的收穫。


7、  思想類

《變革中的思索——張亞勤解碼創新》

《技術領導之路——全面解決問題的途徑》

《創新贏天下:九大商界領袖談創新》

《軟體隨想錄:程式員部落酋長Joel談軟體》:這本書裡面的文章都非常不錯。

《華為研發》:把它放在這裡似乎有些不妥。

《駭客與畫家》

《UNIX編程藝術》

《代碼之道》

這些書可以鍛煉一下思想力。我比較喜歡的是《軟體隨想錄》和《代碼之道》,比較期待的是《駭客與畫家》。


8、之美系列

《團隊之美》

《架構之美》

《代碼之美》

這三本書都是選擇一個主題,然後找一些世界級專家來按照這個主題寫一篇文章,所以這幾本書的系統性不強(但並不代表書不好)。可以把它放在手邊,有時間就讀一章,和大師對對話。


9、 開發語言

《PHP 6與MySQL 5基礎教程》

《PHP與MySQL程式設計(第3版)》

《Ruby for Rails 中文版》

我的第一工作語言是c/c++,第二工作語言是python,業餘時間工作語言是PHP。上面的書還少python相關圖書,正在補充,也正在學習。

10、linux/unix

《深入理解LINUX核心》

《深入Linux核心架構》

《UNIX環境進階編程》

《Linux核心設計與實現》

《連結器和載入器》

《Linux進階程式設計》

《ARM嵌入式系統開發:軟體設計與最佳化》

《UNIX編程藝術》

這些書大多是我的一些參考書,《UNIX編程藝術》除外,它是一本很特別的書,值得好好閱讀一下。

另外,我一直想抽時間研究一下linux核心。


11、管理類

《卓有成效的管理者(典藏版)》

《管理的實踐(珍藏版)》

《高效程式員的45個習慣:敏捷開發修鍊之道》

《卓有成效的管理者(典藏版)》這本書我從頭到尾讀過,也做過筆記,這是一本非常好的書。


12、演算法

《演算法導論》

《編程珠璣》

這可以說是我的軟肋。第一本書看不懂,第二本書還沒有看。要努力啊。

上面的分類是我大致的劃分,可能不夠科學。但是用來組織我的書單應該綽綽有餘。

另外,上面的書,有很多內容可能會重複,這需要讀的時候自己根據具體情況取捨了。也可能有些書買不到,不過應該可以找到電子書。

最後,說一下我對讀書的一些看法:

1、有些書必須要精讀,而精讀的時候,必須要做筆記。

2、選擇讀書的時機也很重要,如果你沒有一定的實踐和基礎,讀一些書可能是一件非常痛苦的事情。這個時候,要停下了。如果你對某方面的知識有非常強烈的渴望或需求,這個時候是最好的時機。

3、開發實踐過程中的學習效果最好。

4、 專註。分為兩個層面。第一個層面是要在一個大段的時間(比如90分鐘)內專註,這樣可以提高學習工作效率;第二個層面是長期的專註,及在一個長 的時期內(比如,一個季度,一年)要專註於某一領域,這樣才能才能在某一領域內有積累和突破,不至於淪落為事事皆知但事事不精的泛泛之輩。我目前專註學習 的是c++,之後是模式與架構。

5、在專註的基礎上擴大自己的知識面,要瞭解當前IT技術正在發生哪些變化。

要做個“T”型IT人:既有深度,又有廣度。

學習軟體開發應該看的書

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.