打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
程序员必读书单(下)

(接上篇)

本篇内容主要为书单的个人成长部分、如何使用这个书单以及其他人的书单。

个人成长

1. 职业规划

软件开发者路线图 是一本优秀且实用的程序员职业规划手册。这本书由若干个模式组成,每个模式都对应于程序员职业生涯中的特定阶段。通过这本书,读者可以很方便的找到自己目前所处的模式(阶段),应该做什么,目标是什么,以及下一个模式(阶段)会是什么。如果你时常感到迷茫,那么请阅读这本 路线图 ,找到自己的位置,确定接下来的方向。

延伸阅读:

  • 卡耐基全集 :非常著名的为人处世书籍。很多人把这本书归类到成功学,但我并不这么认为——在我看来,这本书教的更多的是如何成为一个让大家喜欢的人。作为天天和机器打交道的程序员,这套书会帮助我们与人打交道;

  • 沃顿商学院最受欢迎的谈判课 :这本书不是教你去谈判,而是教你通过谈判(Negotiation)去得到更多(Getting more,这也是这本书的原书书名)。小到买菜砍价,大到争取项目,这本书中的谈判原则会让你收益良多;

  • 程序员健康指南 :作为长期与计算机打交道的职业,程序员往往会受到各式各样疾病的困扰,这本书正是为了解决这个问题而出现:它从改善工作环境,调整饮食结构,预防头痛眼痛,以及进行室内/室外锻炼等方面出发,给出了一套全面且可行的程序员健康改善计划,以帮助程序员打造健康的身体。

2. 思维方式

作为程序员,我们需要不断地学习——既要学习新技术,也要学习如何解决各种领域的问题。为了提升学习效率,我们需要学习 如何学习。 程序员的思维修炼 正是这样一本讲如何学习的书,它集合了认知科学,神经学,以及行为理论的最新研究成果,并系统的介绍了大脑的工作机制。通过这本书,你将学会如何高效的使用自己的大脑,从而提高思考能力,改善学习效率。

Mastery is not about perfection. It’s about a process, a journey. The master is the one who stays on the path day after day, year after year. The master is the one who is willing to try, and fail, and try again, for as long as he or she lives.

为什么同样资质的人,大多数人会碌碌无为,而只有极少数能做到登峰造极?如何在领域内做到顶尖?如何克服通往顶尖之路上的重重险阻? 如何把事情做到最好 回答了这些问题,并极具哲理的指出登峰造极并不是结果,而是一段永不停止的旅程。阅读这本书不会让你立刻脱胎换骨,但它会指引你走向正确的道路——通往登峰造极之路。

延伸阅读:

  • 怎样解题:数学思维的新方法 :不要被标题中的“数学思维”吓到,它并不仅仅只是一本数学解题书,它所提出的四步解题法(理解题目->拟定方案->执行计划->总结反思)适用于任何领域;

  • 暗时间 : 刘未鹏 所写的关于学习思维方法的文章集,既包含了他对学习方法的思考,也包含了大量进一步阅读的资源;

  • 批判性思维:带你走出思维的误区 :这本书系统的分析了人类思维的常见误区,并针对各个误区给出了解决方案,从而帮助程序员养成严谨正确的思考方式;

  • Conceptual Blockbusting: A Guide to Better Ideas :与批判性思维相反,这本书专注于创造性思维(Creative Thinking),它分析了阻碍创造性思维的常见思维障碍(Blockbuster)以及这些思维障碍背后的成因,并给出了各种方法以破除这些障碍。

3. 求职面试


知己知彼,百战不殆。 金领简历:敲开苹果微软谷歌的大门 是程序员求职的必读书籍,它覆盖了程序员求职的方方面面:从开始准备到编写简历,从技术面试到薪酬谈判。由于该书作者曾在 Google,微软,和苹果任职并进行过技术招聘,因此这本书的内容非常实用。

顺便吐个槽:这本书翻译的还不错,但我实在无法理解封面上的“进入顶级科技公司的葵花宝典”这段文字——找个工作而已,用不着切JJ这么凶残吧。-_-#

同样是来自 金领简历 作者的作品, 程序员面试金典(第 5 版) 专注于技术面试题,它既包含了 IT 企业(诸如微软,Google,和苹果)的面试流程以及如何准备技术面试,也包含了大量(超过200道)常见技术面试题题目以及解题思路。无论你打算进入国内企业还是外企,你都应该把这本书的题目练一遍,以找到技术面试的感觉(我在求职时就曾经专门搞了一块白板,然后每二十分钟一道题的练习,效果很不错)。

延伸阅读:

  • 编程之美:微软技术面试心得 :恐怕是国内技术面试第一书,这本书里面的多数题目都曾经是国内IT企业面试的必问题目。这本书的缺点是它太旧而且被用滥了(以至于一些企业开始避免使用这本书上的题目)——但你可以把它当成一本算法趣题来读;

  • 剑指 Offer:名企面试官精讲典型编程题 :相对于东拼西凑的XX面试宝典, 剑指Offer 是一本少见的国产精品技术面试书籍,尽管这本书的技术面试题目不多(60 余道),但作者为大多数题目都给出了不同方式的解法,并分析了这些解法之间的优劣,此外作者还以面试官的视角分析了技术面试的各个环节,从而帮助读者把握技术面试;

  • 人人都有好工作:IT 行业求职面试必读 :可以把它看做 金领简历 的补充阅读——这本书的特点在于它给出了非常详细的简历/求职信/电子邮件编写技巧,而这正是不少国内程序员所缺乏的。

4. 英语写作

词汇量决定阅读能力,语法决定写作能力。计算机专业词汇并不多,但精确性非常重要,因此每个程序员都应具备良好的英语语法,但程序员并不需要过于专业的英语语法——掌握常用语法并把它用对就可以。 The Only Grammar Book You’ll Ever Need 正好可以满足这个需求,尽管它篇幅不大(不足 200 页),却覆盖了英语中的关键语法以及常见错误。把这本书读两遍,它会大幅度提高你的英语写作能力。

既是最畅销的英语写作书籍,也是计算机书籍中引用最多的非计算机书籍。 风格的要素 用极其简练的语言讲述了如何进行 严肃,精确,清楚 的英语写作。从这本书中,你不仅可以学到英语写作,更可以学到一种严谨至简的处事态度,而这正是专业开发所必需的。

延伸阅读:

  • 牛津英语用法指南(第 3 版) :全面且权威的英语用法指南,它覆盖语法,词汇,发音,以及修辞等方面,并兼顾口语和书面语,以帮助读者掌握合理的英语用法(Proper English Usage)。不要被这本书的篇幅(1000 多页)吓到——原书并没有这么厚,因为这本书被翻译成中文但又得保留原有的英文内容,所以它的篇幅几乎翻了一倍。考虑到这本书使用的词汇都很基础,所以我认为具有英语基础的读者直接阅读原版( Practical English Usage )会更合适;

  • 写作法宝:非虚构写作指南(30周年纪念版) :详尽的非虚构(Non-Fiction)写作指南,无论你要写地方,技术,商务,运动,艺术,还是自传,你都可以从这本书中找到珍贵的建议;

  • 中式英语之鉴 :中国人使用英语最大的问题就是会把中式思维掺杂其中,从而形成啰里啰嗦不伦不类的中式英语(Chinglish)。 中式英语之鉴 系统的探讨了中式英语以及其成因,然后根据成因对中式英语进行归类,并对每个类别给出了大量的实际案例以及修改建议。如果你想摆脱中式英语,那么这本书是绝好的起点。

如何使用这个书单

学而不思则罔,思而不学则殆。

不愤不启,不悱不发。举一隅不以三隅反,则不复也。

不闻不若闻之,闻之不若见之,见之不若知之,知之不若行之,学至于行之而止矣。

来自他人的书单

它山之石,可以攻玉。我在本文最后给出其他中外优秀程序员的书单,以便参考&补充。

刘未鹏(暗时间作者)

以下同一条目下用“/”隔开的表示任选,当然也可以都读。

  1. 编码:隐匿在计算机软硬件背后的语言

  2. 深入理解计算机系统 / Windows 核心编程 / 程序员的自我修养

  3. 代码大全 / 程序员修炼之道

  4. 编程珠玑 / 算法概论 / 算法设计 / 编程之美

  5. C 程序设计语言

  6. C++ 程序设计语言 / C++ 程序设计原理与实践 / Accelerated C++

  7. 计算机程序的构造与解释

  8. 代码整洁之道 / 实现模式

  9. 设计模式 / 敏捷软件开发(原则模式与实践)

  10. 重构

云风(中国游戏编程先行者,前网易游戏部门资深程序员,简悦创始人)

  1. C++ 编程思想

  2. Effective C++

  3. 深度探索 C++ 对象模型

  4. C++ 语言的设计与演化

  5. C 专家编程

  6. C 陷阱与缺陷

  7. C 语言接口与实现

  8. Lua 程序设计

  9. 链接器和加载器

  10. COM 本质论

  11. Windows 核心编程

  12. 深入解析 Windows 操作系统

  13. 程序员修炼之道

  14. 代码大全

  15. UNIX 编程艺术

  16. 设计模式

  17. 代码优化:有效使用内存

  18. 深入理解计算机系统

  19. 深入理解 LINUX 内核

  20. TCP/IP 详解

洪强宁(豆瓣技术总监)

  1. 代码大全

  2. 人月神话

  3. 编码:隐匿在计算机软硬件背后的语言

  4. 计算机程序设计艺术

  5. 程序员修炼之道

  6. 设计模式

  7. 计算机程序的构造与解释

  8. 重构

  9. C 程序设计语言

  10. 算法导论

陈皓(CoolShell博主)

  1. 点石成金:访客至上的 Web 和移动可用性设计秘笈

  2. 重来:更为简单有效的商业思维

  3. 黑客与画家

  4. 清醒思考的艺术

  5. TCP/IP 详解

  6. UNIX 环境高级编程

  7. UNIX 网络编程

张峥(微软亚洲研究院副院长)

  1. 算法概论

  2. Data Structure and Algorithms

  3. C 程序设计语言

  4. UNIX 操作系统设计

  5. 编译原理

  6. 计算机体系结构:量化研究方法

  7. 当下的幸福

  8. 异类:不一样的成功启示录

Jeff Atwood(Stackoverflow联合创始人)

  1. 代码大全

  2. 人月神话

  3. 点石成金:访客至上的Web和移动可用性设计秘笈

  4. 快速软件开发

  5. 人件

  6. The Design of Everyday Things

  7. 交互设计精髓

  8. The Inmates Are Running the Asylum

  9. GUI设计禁忌 2.0

  10. 编程珠玑

  11. 程序员修炼之道

  12. 精通正则表达式

Joel Spolsky(Stackoverflow联合创始人)

软件项目管理

  1. 人件

  2. 人月神话

  3. 快速软件开发

编程技艺

  1. 代码大全

  2. 程序员修炼之道

编程哲学

  1. 禅与摩托车维修艺术

  2. 哥德尔、艾舍尔、巴赫:集异璧之大成

  3. 建筑模式语言

界面设计

  1. 点石成金:访客至上的 Web 和移动可用性设计秘笈

  2. 交互设计精髓

  3. The Design of Everyday Things

资本运作

  1. 漫步华尔街

图形设计

  1. 写给大家看的设计书

思维方式

  1. 影响力

  2. Helplessness On Depression, Development and Death

编程入门

  1. 编码:隐匿在计算机软硬件背后的语言

  2. C 程序设计语言

DHH(Ruby on Rails创始人)

  1. Smalltalk Best Practice Patterns

  2. 重构

  3. 企业应用架构模式

  4. 领域驱动设计

  5. 你的灯亮着吗?发现问题的真正所在

参考

  1. 怎样花两年时间去面试一个人

    http://mindhacks.cn/2011/11/04/how-to-interview-a-person-for-two-years/

  2. What is the single most influential book every programmer should read?

    http://stackoverflow.com/questions/1711/what-is-the-single-most-influential-book-every-programmer-should-read

  3. Recommended Reading for Developers

    http://blog.codinghorror.com/recommended-reading-for-developers/

  4. Book Reviews – Joel Spolsky

    http://www.joelonsoftware.com/navlinks/fog0000000262.html

  5. The five programming books that meant most to me

    https://signalvnoise.com/posts/3375-the-five-programming-books-that-meant-most-to-me

以上。

是时候关注一个只分享干货的公众号了

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
程序员必读经典书单(高清PDF版)
少儿编程是什么?也许您的孩子,就是下一个“编程达人”!
计算机专业推
【免费赠书】2018年最新Python书单
为什么会有这么多种程序设计语言?
程序员必读的十三本经典书籍
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服