本文来源于:程序员书库(ID:OpenSourceTop)编译

书单来自:https://medium.com/@shvetsovdm/essential-books-that-every-programmer-should-read-a61565095781

读书,囤书,看看顶级程序员都在读哪些书。读过其中不少的书籍,都不愧为经典之作。

Toptal公司副总裁Bozhidar Batsov在他的演讲中提到:作为一名程序员,需要掌握15本书:

  • 《Inside the Machine》美亚评分 4.6

  • 《代码大全》豆瓣评分 9.3

  • 《具体数学》豆瓣评分 9.6

  • 《计算机程序的构造和解释》豆瓣评分9.5

  • 《程序设计方法(中文版)》 豆瓣评分 8.7

Bozhidar认为,即使你有20年的编程经验,你也可以从上面的书中学到很多。

  • 《算法设计手册》和《算法》可以让你对算法有更好的理解

  • 想成为一名优秀的程序员一定要知道编译器是如何运行的《编译原理》

  • 每个程序员都应该懂点C语言《C程序设计语言》豆瓣评分 9.4

  • 《 UNIX环境高级编程(第3版)》豆瓣评分 9.5

  • 《UNIX网络编程卷2》豆瓣评分8.3

这些书对于优秀的开发人员来说都是必不可少的,而对于使用面向对象语言的程序员,Bozhidar建议:

  • 《测试驱动的面向对象软件开发》豆瓣评分 7.6

  • 《领域驱动设计》 豆瓣评分 8.1

  • 《编程格调 》原版豆瓣评分9.4

众所周知Robert C. Martin,也就是Bob叔是一大名鼎鼎软件工程师、作家、讲师等,其《代码整洁之道》相信许多程序员都拜读过。

罗伯特 C. 马丁

【英】设计模式和敏捷开发先驱,敏捷联盟首任主席

C++ Report前主编,被后辈程序员尊称为“Bob大叔”。20世纪7 0年代初成为职业程序员,后创办Object Mentor公司并任总裁。Martin还是一名多产的作家,至今已发表数百篇文章、论文和博客文章。

《代码整洁之道》

《代码整洁之道:程序员的职业素养》

那么,他会推荐什么书呢:

  • 《设计模式》 豆瓣评分9.1

  • 《计算机程序的构造和解释》 豆瓣评分 9.5

  • 《计算机程序设计艺术》 豆瓣评分 9.5

  • 《图灵的秘密》 豆瓣评分8.8

  • 《重构 第2版》 豆瓣评分 9.2

  • 《解析极限编程》豆瓣评分 8.2

  • 《Redshirts》 豆瓣评分 8.4

  • 《”Bobiverse“三部曲》

Jeff Atwood,Stack Overflow和Discourse的联合创始人,他也分享了一些推荐给开发者的阅读清单:

  • 《代码大全(第2版)》 豆瓣评分 9.3

  • 《人月神话》 豆瓣评分 9.0

  • 《点石成金 : 访客至上的Web和移动可用性设计秘笈》 豆瓣评分 8.2

  • 《快速软件开发》 豆瓣评分 8.5

  • 《人件》 豆瓣评分 8.2

  • 《设计心理学》 豆瓣评分 8.2

  • 《About Face 4: 交互设计精髓》 豆瓣评分 8.6

  • 《软件创新之路》 豆瓣评分 8.5

  • 《编程珠玑》 豆瓣评分 9.1

  • 《程序员修炼之道》 豆瓣评分 8.8

  • 《Web可用性设计》 豆瓣评分 7.8

  • 《正则表达式经典实例》 豆瓣评分 7.0

  • 《The Visual Display of Quantitative Information》 豆瓣评分 9.1

  • 《Visual Explanations》 豆瓣评分 8.6

  • 《Envisioning Information》 豆瓣评分9 9.0

  • 《Beautiful Evidence》 豆瓣评分 8.8

  • 《软件研发之道》 豆瓣评分 8.2

David Heinemeier Hansson,又名DHH, Ruby on Rails的创建者,Basecamp的创始人兼CTO,作家和演说家,分享了对他来说最重要的5本书:

  • 《Smalltalk Best Practice Patterns》

  • 《重构》 豆瓣评分 9.2

  • 《企业应用架构模式》 豆瓣评分 8.3

  • 《领域驱动设计》 豆瓣评分 8.1

  • 《你的灯亮着吗?》 豆瓣评分 8.1

  • 《风格的要素》 豆瓣评分 8.2

  • 《写作法宝》 豆瓣评分 8.5

这份书单里,有没有你最喜欢的书呢?如果没有,留言告诉我们对你影响最大的书籍有哪些?


程序员素养书单

01

重构:改善既有代码的设计(第2版)

书名:《重构:改善既有代码的设计(第2版)》

作者:[美] 马丁·福勒(Martin Fowler)

译者:熊节  林从羽

  • 重构20年,世界软件开发大师MartinFowler的不朽经典

  • 生动阐述重构原理和具体做法,

  • 普通程序员进阶到编程高手的修炼秘笈和代码整洁之道

这本备受关注的第2 版在第1 版的基础上做了全面修订,反映了编程领域业已发生的许多变化。第2 版中介绍的重构列表更加内聚,并用JavaScript 语言重写了代码范例。此外,第2 版中还新增了与函数式编程相关的重构范例,旨在教会读者如何在没有类的环境下开展重构。

02

代码整洁之道:程序员的职业素养

书名:《代码整洁之道:程序员的职业素养》

作者:[美] 罗伯特·C.马丁(Robert C.Martin)

译者:余晟  章显洲

  • 代码整洁之道Clean Code姐妹篇

  • 编程大师40余年心得体会 阐释软件工艺中的原理、技术、工具和实践

  • 助力专业软件开发人员具备令人敬佩的职业素养

软件开发大师Robert C. Martin在书中介绍了真实软件技艺中的各项原则、技术、工具和实践,展示了怎么以自豪、自尊和自信的心态进行软件开发,怎么取得卓越表现和丰硕成果,怎么做到有效沟通和确切估算,怎么以坦诚的心态面对困难,并引导读者认识到专业程序员肩负的责任重大,阐述了什么才是程序员的职业素养。

03

软技能:代码之外的生存指南

书名:《软技能:代码之外的生存指南》

作者:[美] 约翰 Z.森梅兹(John Z.Sonmez)

译者:王小刚

软件行业泰斗级人物Martin和软件架构师Hanselman作序推荐

  • 凸显技术中人的因素 讲解软件专业的所有软技能

  • John是软件开发人员的人生导师

这是一本真正从“人”(而非技术也非管理)的角度关注软件开发人员自身发展的书。书中论述的内容既涉及生活习惯,又包括思维方式,凸显技术中“人”的因素,全面讲解软件行业从业人员所需知道的所有“软技能”。

本书共分为职业篇、自我营销篇、学习篇、生产力篇、理财篇、健身篇、精神篇等七篇,概括了软件行业从业人员所需的“软技能”。通过阅读本书,软件工程人员、编程人员和其他技术人员能够积极思考自己的职业生涯,丰富自己的生活,让自己更接近成功。

04

代码整洁之道

名:《代码整洁之道》

作者:[美] Robert C. Martin

译者:韩磊

  • 捷软件开发系列作者

  • 软件工程大师经典力作

  • 互联网产品与运营专家韩磊献译

《代码整洁之道》提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,《代码整洁之道》作者给出了一系列行之有效的整洁代码操作实践。这些实践在《代码整洁之道》中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

05

编程珠玑(第2版•修订版)

书名:《编程珠玑(第2版•修订版)》

作者:[美] 乔恩·本特利(Jon Bentley)

译者:黄倩 钱丽艳

  • 20余年畅销不衰计算机科学的不朽经典

  • 伟大的计算机科学著作之一

  • 程序员推选的心爱计算机图书

  • 讲解如何正确选择和高效地实现算法 基于C和C++语言编写

《编程珠玑(第2版·修订版)》是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者JonBentley以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。本书的特色是通过一些精心设计的有趣而又颇具指导意义的程序,对实用程序设计技巧及基本设计原则进行了透彻而睿智的描述,为复杂的编程问题提供了清晰而完备的解决思路。《编程珠玑(第2版·修订版)》对各个层次的程序员都具有很高的阅读价值。

机器学习与深度学习书单

01

深度学习

书名:《深度学习》

作者:【美】Ian Goodfellow(伊恩·古德费洛), 【加】Yoshua Bengio(约书亚·本吉奥), 【加】Aaron Courville(亚伦·库维尔)

译者:赵申剑  黎彧君 李凯 符天凡

  • AI圣经,deeplearning中文版,2018年图灵奖获奖者作品,业内人称“花书”

  • 人工智能机器学习深度学习领域奠基性经典畅销书

本书囊括了数学及相关概念的背景知识,包括线性代数、概率论、信息论、数值优化以及机器学习中的相关内容。同时,它还介绍了工业界中实践者用到的深度学习技术,包括深度前馈网络、正则化、优化算法、卷积网络、序列建模和实践方法等,并且调研了诸如自然语言处理、语音识别、计算机视觉、在线推荐系统、生物信息学以及视频游戏方面的应用。最后,本书还提供了一些研究方向,涵盖的理论主题包括线性因子模型、自编码器、表示学习、结构化概率模型、蒙特卡罗方法、配分函数、近似推断以及深度生成模型。

02

人工智能(第2版)

书名:《人工智能(第2版)》

作者:[美] 史蒂芬·卢奇(Stephen Lucci),丹尼·科佩克(Danny Kopec)

译者:林赐

  • 人工智能百科全书

  • 易于上手的人工智能自学指南

  • 涵盖机器学习 深度学习 自然语言处理 神经网络 计算机博弈等各种知识 图文详细 讲解细致 配备丰富的教学资源和学习素材

美国经典教材,在美亚上,被评价为自Russell & Norvig的《人工智能:一种现代方法》之后更好的教材,更加适合本科生使用。

本书是作者结合多年教学经验、精心撰写的一本人工智能教科书,堪称“人工智能的百科全书”。全书涵盖了人工智能简史、搜索方法、知情搜索、博弈中的搜索、人工智能中的逻辑、知识表示、产生式系统、专家系统、机器学习和神经网络、遗传算法、自然语言处理、自动规划、机器人技术、高级计算机博弈、人工智能的历史和未来等主题。

本书提供了丰富的教学配套资源,适合作为高等院校人工智能相关专业的教材,也适合对人工智能相关领域感兴趣的读者阅读和参考。

03

Python 神经网络编程

书名:《Python 神经网络编程》

作者:[英]塔里克·拉希德(Tariq Rashid)

译者:林赐

  • 人工智能深度学习机器学习领域又一重磅力作

  • 自己动手用Python编写神经网络

  • 美亚排名前茅荣获众多好评 全彩印刷 图表丰富

本书将带领您进行一场妙趣横生却又有条不紊的旅行——从一个非常简单的想法开始,逐步理解神经网络的工作机制。您无需任何超出中学范围的数学知识,并且本书还给出易于理解的微积分简介。本书的目标是让尽可能多的普通读者理解神经网络。读者将学习使用Python开发自己的神经网络,训练它识别手写数字,甚至可以与专业的神经网络相媲美。

世界顶级的程序员们都在读哪些书?相关推荐

  1. 世界顶级的程序员们告诉你:这些书都是你应该读的

    在很早之前就想整理一份来自经验丰富的顶级程序员推荐阅读的书籍清单,全栈工程师Dmitry Shvetsov整理了Bob叔以及Jeff Atwood and DHH等世界知名程序员曾经在博客中推荐过的书 ...

  2. 世界顶级的程序员大佬都有谁?

    ITWorld整理出了全球最杰出的14位程序员,以下排名不分先后,我们一起来看看都有谁吧? 1. Jon Skeet 个人名望:程序技术问答网站Stack Overflow总排名第一的大神,每月的问答 ...

  3. 程序员搞开源,读什么书最合适?

    | 编辑:李佳阳 | 责编:王玥敏 1998 年,"开源"这一术语诞生于开放软件倡议书(the Open Software Initiative).最初,开源只是一个边缘化的活动, ...

  4. 作为程序员这些都是必读的书

    ON SALE 又到了双十一购物狂欢节.大家有没有想要的好书一直等到双十一打折一次抢购呢? 本次双十一人民邮电出版社图灵教育联合当当网为各位小伙伴们谋福利了! 超低折扣--当当网图灵教育丛书全场 5折 ...

  5. 每个程序员都应该读的书

    在国外一网站stackoverflow看到了一篇贴子,<每个程序员都应该阅读的书>,里面有上百种书,部分图书已由图灵教育出版.因为除了这里面的书,图灵教育认为还有一些值得程序员去阅读的书, ...

  6. 国外程序员推荐:每个程序员都应读的书

    1. <代码大全> 史蒂夫·迈克康奈尔 推荐数:1684 "优秀的编程实践的百科全书,<代码大全>注重个人技术,其中所有东西加起来,就是我们本能所说的"编写 ...

  7. 学习C语言的教材、如何成为一名优秀的C程序员、激发程序员创意的6本书、国外程序员推荐:每个程序员都应读的书

    学习C语言的教材 我的C语言是自学的,这些年看过不少教材. 下面,我对其中一些教材做个点评. 1. How to Think Like a Computer Scientist: C version ...

  8. 国外程序员推荐:每个程序员都应读的书(作为一个码奴,这个也留着)(转)

    国外程序员推荐:每个程序员都应读的书(作为一个码奴,这个也留着)(转)来源: 方健的日志 国外程序员推荐:每个程序员都应读的书 来自:http://www.williamlong.info/archi ...

  9. 每个程序员都应读的书

    国外程序员推荐:每个程序员都应读的书 作者 fmms 2012-03-18 21:33:31 编者按:2008年8月4日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书, ...

  10. 国外程序员推荐:每个程序员都应读的书!!!

    1. <代码大全> 史蒂夫·迈克康奈尔 推荐数:1684 "优秀的编程实践的百科全书,<代码大全>注重个人技术,其中所有东西加起来,就是我们本能所说的"编写 ...

最新文章

  1. ActiveMQ入门教程(三) - ActiveMQ P2P版的HelloWorld
  2. anaconda中的python如何进行关联分析_浅析python,PyCharm,Anaconda三者之间的关系
  3. python编程绘图库turtle如何安装_Python绘图库Turtle详细分析
  4. 山东理工OJ【2121】数据结构实验之链表六:有序链表的建立(插排法)
  5. I love max and multiply HDU - 6971(详细解答)
  6. linux实现内存共享,Linux共享内存实现
  7. C# DateTime日期格式
  8. (转)你确定你的交易系统最快?
  9. SSL证书配置注意事项
  10. python爬虫当当网图书信息_利用python爬虫可视化分析当当网的图书数据!
  11. MAR DASCTF 2021
  12. OpenGL和DirectX是什么?
  13. Linux ---动态监控
  14. 如何把flash.exe转换成家用DVD可以播放的MPG格式
  15. 关于“PS中用魔棒选取之后拖到另一个图层中怎么没颜色了”的解决方法
  16. redis主从配置及主从切换
  17. 通证估值模型-费雪模型与净现值模型详解
  18. Altium Designer 2020 学习笔记(一)-----原理图及原理图库部分(配动态图操作演示)
  19. 你要的能做出炫酷图表的网站来啦
  20. Launcher启动流程

热门文章

  1. AI_Drug: 分子生成模型之VAE(一)
  2. 临床医学计算机思维的应用情况,【临床医学论文】临床医学教育中循证医学思维的应用(共6584字)...
  3. linux javascript开发工具,JavaScript 基础工具清单
  4. MySql 新增数据
  5. iOS Xcode:No account for team 5P2U9V6DNN.
  6. WebStorm+Chrome插件JetBrains IDE Support进行实时调试
  7. 精灵商场项目(二)--Github+EasyUI+商品列表
  8. python聚类系数_NetworkX 计算聚类系数的Python实现
  9. 本地设置测试域名转向
  10. 【你晓得伐】Solr的LIR是个什么东东