写点什么

有史以来最受欢迎的 25 本编程书籍

  • 2020-04-09
  • 本文字数:2982 字

    阅读完需:约 10 分钟

有史以来最受欢迎的25本编程书籍

推特上一位名为 Pierre de Wulf 的网友突发奇想,有史以来最受欢迎的编程书籍到底是哪些?为了找到程序员们最为推崇的那些编程书籍,他使用 Python编写了脚本,拉取了大量的相关数据,最终得出了这 25 本技术好书。以下是推荐结果。

程序员修炼之道:从小工到专家

作者:David Thomas & Andrew Hunt,67%推荐度



《程序员修炼之道》由一系列的独立部分组成,涵盖的主题从个人责任、职业发展,直到用于使代码保持灵活、并且易于改编和复用的各种架构技术。利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。

代码整洁之道

作者:Robert C. Martin,66%推荐度



软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。本书提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践。这些实践在本书中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

代码大全(第 2 版)

作者:Steve McConnell,42%推荐度



这是一本完整的软件构建手册,涵盖了软件构建过程中的所有细节。它从软件质量和编程思想等方面论述了软件构建的各个问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。这本书中所论述的技术不仅填补了初级与高级编程技术之间的空白,而且也为程序员们提供了一个有关编程技巧的信息来源。这本书对经验丰富的程序员、技术带头人、自学的程序员及几乎不懂太多编程技巧的学生们都是大有裨益的。可以说,无论是什么背景的读者,阅读这本书都有助于在更短的时间内、更容易地写出更好的程序。

重构:改善既有代码的设计

作者:Martin Fowler,35%推荐度



重构,一言以蔽之,就是在不改变外部行为的前提下,有条不紊地改善代码。多年前,正是本书原版的出版,使重构终于从编程高手们的小圈子走出,成为众多普通程序员日常开发工作中不可或缺的一部分。本书也因此成为与《设计模式》齐名的经典著作,被译为中、德、俄、日等众多语言,在世界范围内畅销不衰。

深入浅出设计模式

作者:Eric Freeman / Bert Bates / Kathy Sierra / Elisabeth Robson,29.4%推荐度



《深入浅出设计模式》(影印版)的编写运用许多最新的研究,包括神经生物学、认知科学以及学习理论,这使得《深入浅出设计模式》(影印版)能够将这些设计模式深深地烙印在你的脑海中,不容易被遗忘。你将会更擅长于解决软件设计中的问题,并能够和你的团队成员用模式的语言来更好地沟通。

人月神话

作者:Frederick P. Brooks Jr,27.9%推荐度



作者为人们管理复杂项目提供了颇具洞察力的见解,既有很多发人深省的观点,也有大量的软件工程实践。书中的内容来自布鲁克斯在 IBM 公司 System 360 家族和 OS 360 中的项目管理经验。初版的 20 年后,布鲁克斯重新审视了他原先的观点,增加了一些新的想法和建议。新增加的章节包括:原著中一些核心观点的精华;在经过了一个时代以后,Brooks 博士对原先观点新的认识;1986 年的经典文章《没有银弹》;对 1986 年所下论断(在 10 年内不会出现银弹)现在的认识。

程序员的职业素养

作者:Robert Martin,27.9%推荐度



本书是编程大师 Bob 大叔 40 余年编程生涯的心得体会, 讲解成为真正专业的程序员需要什么样的态度、原则,需要采取什么样的行动。作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来人引路,助其职业生涯迈上更高台阶。本书适合所有程序员,也可供所有想成为具备职业素养的职场人士参考。

修改代码的艺术

作者:Michael Feathers,26.4%推荐度



本书是继《重构》和《重构与模式》之后探讨修改代码技术的又一里程碑式的著作,书中不仅讲述面向对象语言(Java、C#和 C++)代码,也有专章讨论 C 这样的过程式语言。作者将理解、测试和修改代码的原理、技术和最新工具(自动化重构工具、单元测试框架、仿对象、集成测试框架等),与解依赖技术和大量开发和设计优秀代码的原则、最佳实践相结合,许多内容非常深入,而且常常发前人所未发。书中处处体现出作者独到的洞察力,以及多年开发和指导软件项目所积累的丰富经验和深厚功力。通过这部集大成之作,你不仅能掌握最顶尖的修改代码技术,还可以大大提高对代码和软件开发的领悟力。

设计模式:可复用面向对象软件的基础

作者:Erich Gamma / Richard Helm / Ralph Johnson / John Vlissides,25%推荐度



这本书结合设计实作例从面向对象的设计中精选出 23 个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。书中分类描述了一组设计良好、表达清楚的软件设计模式,这些模式在实用环境下特别有用。此书适合大学计算机专业的学生、研究生及相关人员参考。书中涉及的设计模式并不描述新的或未经证实的设计,只收录了那些在不同系统中多次使用过的成功设计。

程序员面试金典

作者:Gayle Laakmann McDowell,22%推荐度



本书是原谷歌资深面试官的经验之作,层层紧扣程序员面试的每一个环节,全面而详尽地介绍了程序员应当如何应对面试,才能在面试中脱颖而出。第 1~7 章主要涉及面试流程解析、面试官的幕后决策及可能提出的问题、面试前的准备工作、对面试结果的处理等内容;第 8~9 章从数据结构、概念与算法、知识类问题和附加面试题 4 个方面,为读者呈现了出自微软、苹果、谷歌等多家知名公司的 150 道编程面试题,并针对每一道面试题目,分别给出了详细的解决方案。

11-25 名书籍详情

  • 软技能 : 代码之外的生存指南,22%推荐度

  • Soft Skills by John Sonmez

  • 点石成金 : 访客至上的网页设计秘笈,19.1%推荐度

  • Don’t Make Me Think by Steve Krug

  • 编码,19.1%推荐度

  • Code by Charles Petzold

  • 算法导论,17.6%推荐度

  • Introduction to Algorithms by Thomas H. Cormen / Charles E. Leiserson / Ronald L. Rivest / Clifford Stein

  • 人件,17.6%推荐度

  • Peopleware by Tom DeMarco & Tim Lister

  • 编程珠玑,16.1%推荐度

  • Programming Pearls by Jon Bentley

  • 企业应用架构模式,14.7%推荐度

  • Patterns of Enterprise Application Architecture by Martin Fowler

  • 计算机程序的构造和解释,13.2%推荐度

  • Structure and Interpretation of Computer Programs by Harold Abelson / Gerald Jay Sussman / Julie Sussman

  • 计算机程序设计艺术,10.2%推荐度

  • The Art of Computer Programming

  • 领域驱动设计 : 软件核心复杂性应对之道,10.2%推荐度

  • Domain-Driven Design by Eric Evans

  • 编程人生 : 15 位软件先驱访谈录,推荐度 10.2%

  • Coders at Work by Peter Seibel

  • 快速软件开发 : 有效控制与完成进度计划,推荐度 8.8%

  • Rapid Development by Steve McConnell

  • The Self-Taught Programmer,8.8%推荐度(暂无中文版)

  • 算法,8.8%推荐度

  • Algorithms by Robert Sedgewick & Kevin Wayne

  • 持续交付 : 发布可靠软件的系统方法,8.8%推荐度

  • Continuous Delivery by Jez Humble & David Farley


以上的编程经典,你看过哪几本?还有哪些中文作者的编程书籍是你强烈推荐的?


欢迎留言一起讨论!


2020-04-09 15:086455
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 390.1 次阅读, 收获喜欢 1982 次。

关注

评论 1 条评论

发布
用户头像
正在看编码:这本书简单到很容易翻完
2020-04-09 21:25
回复
没有更多了
发现更多内容

Android工程师最容易遇到4个瓶颈是什么,安卓开发入门教程

android 程序员 移动开发

Android大厂技术面试题汇总,享学课堂Android架构师

android 程序员 移动开发

Android学习路线!扔物线朱凯android视频

android 程序员 移动开发

Android客户端Web页面通用性能优化实践,面试心得体会

android 程序员 移动开发

Android开发两年:动脑学院2019android

android 程序员 移动开发

Android免打包多渠道统计如何实现,面试突击版

android 程序员 移动开发

android双击事件响应,动脑学院vip视频破解

android 程序员 移动开发

Android外包是如何转正华为的,音视频开发面试

android 程序员 移动开发

Android大厂面试真题解析大全,flutter框架

android 程序员 移动开发

Android实习面试经验汇总,温故而知新

android 程序员 移动开发

Android工作经验6年,动脑学院vip课程分享

android 程序员 移动开发

Android工程师跳槽经验分享,资深大牛带你了解源码

android 程序员 移动开发

云管平台的作用以及应用行业简单介绍

行云管家

云计算 云服务 云平台 混合云 云管平台

Android体系化进阶学习图谱,扔物线五期

android 程序员 移动开发

Android培训那里好,享学课堂Android架构师vip

android 程序员 移动开发

Android基础入门教程,享学课堂Android架构师vip

android 程序员 移动开发

Android岗面试12家大厂成功跳槽,这操作真香

android 程序员 移动开发

Android事件体系全面总结+实践分析,爆火的Android面试题

android 程序员 移动开发

云计算服务包括哪三种服务?怎么定义?

行云管家

云计算 网络安全 云资源 云管理

Android大厂高级面试题灵魂100问,Android经典面试

android 程序员 移动开发

web技术分享| React版本 anyRTC示例对等连接

anyRTC开发者

大前端 音视频 WebRTC React 实时通信

Android已死,享学课堂

android 程序员 移动开发

Android开发两年:扔物线课程怎么样

android 程序员 移动开发

Android大厂面试真题解析大全,10年Android开发经验

android 程序员 移动开发

Android岗,享学课堂架构师vip

android 程序员 移动开发

Android开发人员不得不收集的代码,2021年您应该知道的技术之一

android 程序员 移动开发

Android初级开发是如何一步步成为高级开发,含答案解析

android 程序员 移动开发

Android原生开发如何深入进阶,解析底层原理

android 程序员 移动开发

Android外包是如何转正网易的,Android高级工程师面试实战

android 程序员 移动开发

Android多态实现原理,android开发艺术探索pdf百度网盘

android 程序员 移动开发

Android学习笔记在互联网上火了,系列教学

android 程序员 移动开发

有史以来最受欢迎的25本编程书籍_文化 & 方法_小智_InfoQ精选文章