朋友讓我推薦幾本書(shū),他準(zhǔn)備推薦給團(tuán)隊(duì),要求是:
沒(méi)有具體要求,你覺(jué)得值得一讀就行……
這些年七七八八讀過(guò)幾本書(shū),和軟件開(kāi)發(fā)相關(guān)的圖書(shū)初步分成以下五類(lèi):
- 語(yǔ)言和平臺(tái)
- 設(shè)計(jì)和架構(gòu)
- 需求、交互和產(chǎn)品
- 過(guò)程和項(xiàng)目管理
- 團(tuán)隊(duì)管理
- 個(gè)人和其他
今天先推薦幾本我讀過(guò)的(有些技術(shù)過(guò)時(shí)了可能沒(méi)有用,有些書(shū)絕版了不一定買(mǎi)得到),以后再找機(jī)會(huì)推薦未讀的好書(shū)。
每個(gè)人的經(jīng)歷和目標(biāo)不同,我推薦的書(shū)不一定適合,切入正題之前做個(gè)簡(jiǎn)單的自我介紹,
我曾經(jīng)迷戀 C++,后期專(zhuān)注于 .NET 平臺(tái),跳出各個(gè)語(yǔ)言和平臺(tái)的低級(jí)重復(fù)之后開(kāi)始接觸面向?qū)ο笤O(shè)計(jì)、軟件架構(gòu)和需求分析。創(chuàng)業(yè)前,以桌面端和 Web 端的企業(yè)應(yīng)用為主;創(chuàng)業(yè)后,以面向終端用戶的移動(dòng)端產(chǎn)品為主。
在軟件公司帶了兩年項(xiàng)目之后發(fā)現(xiàn)我還是適合做技術(shù),于是以成為優(yōu)秀架構(gòu)師為目標(biāo)專(zhuān)注于技術(shù)路線,2010 年離開(kāi)軟件公司后開(kāi)始意識(shí)到「軟技能」的重要性,來(lái)上海創(chuàng)業(yè)后開(kāi)始關(guān)注「產(chǎn)品、運(yùn)營(yíng)和團(tuán)隊(duì)管理」。
1. 語(yǔ)言和平臺(tái)
1.1. Essential C++ 中文版
上大學(xué)時(shí)讀都是教材或老師推薦的書(shū),工作后讀到這本書(shū)才明白什么是 C++,薄薄的一本,至今還能想起侯捷老師開(kāi)篇的那句
有了滿漢全席,為何還眷顧清粥小菜?
這是一本面向有其他語(yǔ)言基礎(chǔ)要快速上手使用 C++ 的開(kāi)發(fā)者的圖書(shū)。
- 原作名 : Essential C++
- 作者 : Stanley B. Lippman
- 出版年 : 2001
- https://book.douban.com/subject/1215826/
1.2. C++ Primer 中文版
學(xué)習(xí)任何語(yǔ)言,都應(yīng)該讀一本該領(lǐng)域內(nèi)和《C++ Primer》齊名的書(shū)。書(shū)名雖然叫 Primer,實(shí)際上包含了 C++ 的方方面面,讀了這本書(shū)我才知道 Multi-paradigm 這個(gè)概念。
- 原作名 : C++ Primer
- 作者: Stanley B. Lippman / Josee Lajoie
- 出版年 : 2002
- https://book.douban.com/subject/1208731/
1.3. Visual C++ 技術(shù)內(nèi)幕(第四版)
這本書(shū)的譯者是「潘愛(ài)民」老師,我是從這本書(shū)開(kāi)始學(xué)習(xí) Framework 的,盡管 MFC 不是那么優(yōu)秀。
- 原作名: Inside Visual C++, 4th Ed.
- 作者: David J. Kruglinski
- 出版年: 1999
- https://book.douban.com/subject/1027574/
1.4. Effective C# 中文版
寫(xiě)代碼時(shí)經(jīng)常會(huì)遇到「向左走,向右走」的時(shí)刻,看起來(lái)兩條路都能到達(dá),但是哪條更高效呢?這本書(shū)會(huì)給你答案。
除了這本《Effective C#》之外,《Effective C++》和《More Effective C++》《Effective Java》都值得一讀。
- 原作名: Effective C#: 50 Specific Ways to Improve Your C#
- 作者: Bill Wagner
- 出版年 : 2007
- https://book.douban.com/subject/2054931/
1.5. Microsoft .NET 框架程序設(shè)計(jì)
- 原作名: Applied Microsoft .NET Framework Programming
- 作者: Jeffrey Richter
- 出版年 : 2003
- https://book.douban.com/subject/1141221/
1.6. NET 組件程序設(shè)計(jì)
- 原作名: Programming .NET Components, 2nd Edition
- 作者: Juval Lowy
- 出版年: 2007
- https://book.douban.com/subject/2133150/
1.7. LINQ 實(shí)戰(zhàn)
- 原作名 : LINQ in Action
- 作者 : Fabrice Marguerie / Steve Eichert / Jim Wooley
- 出版年: 2009
- https://book.douban.com/subject/3810446/
1.8. SQL 語(yǔ)言藝術(shù)
- 原作名: The Art of SQL
- 作者 : Stéphane Faroult
- 出版年 : 2008
- https://book.douban.com/subject/3012601/
1.9. 網(wǎng)站重構(gòu)——應(yīng)用 Web 標(biāo)準(zhǔn)進(jìn)行設(shè)計(jì)
- 原作名 : Designing with Web Standards
- 作者 : Jeffrey Zeldman
- 出版年 : 2005
- https://book.douban.com/subject/1230451/
- https://book.douban.com/subject/6011420/
2. 設(shè)計(jì)和架構(gòu)
2.1. 敏捷軟件開(kāi)發(fā)——原則、模式與實(shí)踐
- 原作名: Agile Software Development: Principles, Patterns, and Practices
- 作者: Robert C·Martin
- 出版年: 2003
- https://book.douban.com/subject/1140457/
2.2. UML 和模式應(yīng)用(原書(shū)第 3 版)
- 原作名: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development
- 作者 : Craig Larman
- 出版年: 2006
- https://book.douban.com/subject/1792387/
2.3. 企業(yè)應(yīng)用架構(gòu)模式
- 原作名: Patterns of Enterprise Application Architecture
- 作者: Martin Fowler
- 出版年: 2004
- https://book.douban.com/subject/1230559/
- https://book.douban.com/subject/4826290/
2.4. 軟件架構(gòu)師的 12 項(xiàng)修煉
- 原作名: Essential Skills for Software Architects
- 作者: Dave Hendricksen
- 出版年 : 2012
- https://book.douban.com/subject/10746257/
2.5. 構(gòu)建高性能 Web 站點(diǎn)——改善性能和擴(kuò)展規(guī)模的具體做法
- 作者: 郭欣
- 出版年 : 2009
- https://book.douban.com/subject/3924175/
2.6. 大型網(wǎng)站系統(tǒng)與 Java 中間件開(kāi)發(fā)實(shí)踐
- 作者: 曾憲杰
- 出版年 : 2014
- https://book.douban.com/subject/25867042/
2.7. 白帽子講 Web 安全
- 作者: 吳翰清
- 出版年 : 2012
- https://book.douban.com/subject/10546925/
2.8. App 研發(fā)錄:架構(gòu)設(shè)計(jì)、Crash 分析和競(jìng)品技術(shù)分析
- 作者: 包建強(qiáng)
- 出版年 : 2015
- https://book.douban.com/subject/26649050/
2.9. 測(cè)試驅(qū)動(dòng)開(kāi)發(fā)
- 原作名: Test Driven Development: By Example
- 作者: Kent Beck
- 出版年 : 2004
- https://book.douban.com/subject/1230036/
2.10. 布道之道——引領(lǐng)團(tuán)隊(duì)擁抱技術(shù)創(chuàng)新
- 原作名: Driving Technical Change: Why People on Your Team Don't Act on Good Ideas, and How to Convince Them They Should
- 作者 : Terrence Ryan
- 出版年 : 2012
- https://book.douban.com/subject/6990284/
2.11. 應(yīng)用框架的設(shè)計(jì)與實(shí)現(xiàn)—— .NET 平臺(tái)
- 原作名 : Developing Application Frameworks in .NET
- 作者: 陳新
- 出版年 : 2005
- https://book.douban.com/subject/1429555/
3. 需求、交互和產(chǎn)品
3.1. 軟件需求最佳實(shí)踐—— SERU 過(guò)程框架原理與應(yīng)用的新描述
- 作者: 徐峰
- 出版年 : 2008
- https://book.douban.com/subject/3265691/
3.2. 軟件開(kāi)發(fā)的創(chuàng)新思維
- 原作名: The Inmates Are Running the Asylum
- 作者 : Alan Cooper
- 出版年 : 2003
- https://book.douban.com/subject/1241266/
3.3. 瞬間之美——Web 界面設(shè)計(jì)如何讓用戶心動(dòng)
- 原作名: Designing the Moment: Web Interface Design Concepts in Action
- 作者 : Jr·Robert Hoekman
- 出版年 : 2009
- https://book.douban.com/subject/3886044/
3.4. 啟示錄——打造用戶喜愛(ài)的產(chǎn)品
- 原作名: Inspired: How To Create Products Customers Love
- 作者 : Marty Cagan
- 出版年 : 2011
- https://book.douban.com/subject/5914587/
3.5. 結(jié)網(wǎng)@改變世界的互聯(lián)網(wǎng)產(chǎn)品經(jīng)理
- 作者 : 王堅(jiān)
- 出版年 : 2013
- https://book.douban.com/subject/5376384/
- https://book.douban.com/subject/24305938/
3.6. 從點(diǎn)子到產(chǎn)品——產(chǎn)品經(jīng)理的價(jià)值觀與方法論
- 作者 : 劉飛
- 出版年 : 2017
- https://book.douban.com/subject/26927349/
3.7. 增長(zhǎng)黑客——?jiǎng)?chuàng)業(yè)公司的用戶與收入增長(zhǎng)秘籍
- 作者: 范冰
- 出版年 : 2015
- https://book.douban.com/subject/26541801/
3.8. 精益創(chuàng)業(yè)——新創(chuàng)企業(yè)的成長(zhǎng)思維
- 原作名: The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses
- 作者 : Eric Ries
- 出版年: 2012
- https://book.douban.com/subject/10945606/
4. 過(guò)程和項(xiàng)目管理
4.1. 項(xiàng)目管理修煉之道
- 原作名 : Manage It!: Your Guide to Modern, Pragmatic Project Management
- 作者 : Johanna Rothman
- 出版年 : 2009
- https://book.douban.com/subject/4058336/
4.2. 統(tǒng)一軟件開(kāi)發(fā)過(guò)程
- 原作名: The Unified Software Development Process
- 作者: Ivar Jacobson / Grady Booch / James Rumbaugh
- 出版年: 2002
- https://book.douban.com/subject/1093505/
4.3. 解析極限編程——擁抱變化
- 原作名: Extreme Programming Explained: Embrace Change (Second Edition)
- 作者: Kent Beck / Cynthia Andres
- 出版年 : 2011
- https://book.douban.com/subject/1099376/
- https://book.douban.com/subject/6828074/
4.4. 精益開(kāi)發(fā)實(shí)戰(zhàn)——用看板管理大型項(xiàng)目
- 原作名: Lean from the Trenches: Managing Large-Scale Projects with Kanban
- 作者 : Henrik Kniberg
- 出版年 : 2012
- https://book.douban.com/subject/11620809/
4.5. 看板方法——科技企業(yè)漸進(jìn)變革成功之道
- 原作名: Kanban: Successful Evolutionary Change for Your Technology Business
- 作者: David J. Anderson
- 出版年 : 2014
- https://book.douban.com/subject/25788807/
4.6. 看板實(shí)戰(zhàn)
- 原作名 : Kanban in Action
- 作者 : Marcus Hammarberg / Joakim Sundén
- 出版年 : 2016
- https://book.douban.com/subject/26729634/
4.7. 精益產(chǎn)品開(kāi)發(fā)——原則、方法與實(shí)施
- 作者 : 何勉
- 出版年 : 2017
- https://book.douban.com/subject/27116921/
5. 團(tuán)隊(duì)管理
5.1. 格魯夫給經(jīng)理人的第一課
- 原作名 : High Output Management
- 作者 : Andrew S. Grove
- 出版年 : 2011
- https://book.douban.com/subject/5431183/
5.2. 重新定義公司——谷歌是如何運(yùn)營(yíng)的
- 原作名: How Google Works
- 作者 : Eric Schmidt / Jonathan Rosenberg
- 出版年: 2015
- https://book.douban.com/subject/26582822/
5.3. 創(chuàng)業(yè)維艱——如何完成比難更難的事
- 原作名: The Hard Thing About Hard Things
- 作者: Ben Horowitz
- 出版年: 2015
- https://book.douban.com/subject/26306686/
5.4. 聯(lián)盟——互聯(lián)網(wǎng)時(shí)代的人才變革
- 原作名: The Alliance: Managing Talent in the Networked Age
- 作者 : Reid Hoffman / Ben Casnocha / Chris Yeh
- 出版年 : 2015
- https://book.douban.com/subject/26308014/
5.5. 打造 Facebook ——親歷 Facebook 爆發(fā)的 5 年
- 作者: 王淮 / 祝文讓
- 出版年: 2013
- https://book.douban.com/subject/20471120/
5.6. 輕有力——用 90 后思維管理 90 后
- 作者: 韓慶峰
- 出版年 : 2014
- https://book.douban.com/subject/25817260/
6. 個(gè)人和其他
6.1. 至關(guān)重要的關(guān)系
- 原作名 : The Start-Up of You: Adapt to the Future, Invest in Yourself, and Transform Your Career
- 作者 : Reid Hoffman / Ben Casnocha
- 出版年 : 2013
- https://book.douban.com/subject/24530336/
6.2. 金字塔原理——思考、寫(xiě)作和解決問(wèn)題的邏輯
- 原作名 : The Minto Pyramid Principle
- 作者 : Barbara Minto
- 出版年 : 2002
- https://book.douban.com/subject/1020644/
6.3. 極客與團(tuán)隊(duì)——軟件工程師的團(tuán)隊(duì)生存秘笈
- 原作名: Team Geek:A Software Developer's Guide to Working Well With Others
- 作者: Brian W. Fitzpatrick / Ben Collins-Sussman
- 出版年 : 2012
- https://book.douban.com/subject/21372237/
6.4. PSP 軟件工程師的自我改進(jìn)過(guò)程
- 原作名 : PSP: A Self-Improvement Process for Software Engineers
- 作者 : Watts Humphrey
- 出版年 : 2006
- https://book.douban.com/subject/1837616/
6.5. 少有人走的路 : 心智成熟的旅程
- 原作名: The Road Less Traveled
- 作者 : M. Scott Peck
- 出版年 : 2007
- https://book.douban.com/subject/1775691/
6.6. 不要因?yàn)樽叩锰h(yuǎn)而忘記為什么出發(fā)——陳虻,我們聽(tīng)你講
- 作者 : 徐泓
- 出版年 : 2013
- https://book.douban.com/subject/20453024/
6.7. 離開(kāi)微軟 改變世界——一名微軟高管的意外人生
- 原書(shū)名 : Leaving Microsoft to Change the World: An Entrepreneur's Quest to Educate the World's Children
- 作者 : John Wood
- 出版年: 2007
- https://book.douban.com/subject/2159830/