程序员应该读的六本书

转载 2015年07月09日 23:17:28

作为一名程序员,日常的工作除了上班撸代码就是加班撸代码了。撸码其实不难,无非询问Google,StackOverflow,解决方法和demo一箩筐,可是撸的一手好代码着实不易。无独有偶,码农一抓一大把,优秀的程序员却不易寻觅。优秀的程序员既不可能出自各种天花乱坠的培训机构,更不可能来自挖掘机摇篮山东布鲁斯特,大多数优秀的程序员有一个共同点,那就是自学。

为什么是自学呢?首先大学的教育不可能让你成为专家级别的程序员,其次为了能从团队脱颖而出必然付出更多的努力来学习。自学其实是一种很强有力的能力,一旦掌握,许多技术和问题都可以轻松搞定。

中学物理常客牛顿曾说,”如果我比别人看得更远,那是因为我站在巨人的肩上“。他山之石,可以攻玉。阅读大师巨匠的作品无疑是最有效的自学方式之一。业界知名的Bob大叔是代码整洁和面向对象编程的坚定支持推进者,其在这方面的著作可以称得上权威。Martin Fowler同样名声在外,他的关于重构的著作《重构—-改善既有代码的设计》应该是人手一本。阅读诸如上面两位大家的著作,对技术提到大有裨益。

本文讲列举六本业界牛人的著作,也是编程书籍中经典的经典,这几本书并非简单的教程书籍,而是教给你方法和思想来解决现实遇到的问题,提高编码的技艺和境界。

重构—-改善既有代码的设计

refactor

何为重构,一言以蔽之,就是在不改变外部行为的前提下,有条不紊地改善代码。本书虽然使用Java语言书写示例代码,但是其概念与思想同样适合于其他语言。书中,作者以一些平淡无奇,甚至带有坏味道的代码开始,一步一步地修改转变成更加灵活,可重用的代码。通过书中的示例,你会清楚地明白什么才是整洁的代码。重构其实依然成为经验丰富的程序员的必备技能,当你想要改善重构代码时,读一读这本书就会让你有章可循,豁然开朗。

查看详细:亚马逊

代码整洁之道

这是我最喜欢的一本书,不止一次我将它推荐给我的同事,读者还有学生。我认为它可以称得上软件开发与编码方便最好的一本书。Bob大叔我想无需做介绍,他写过一个关于敏捷开发的系列书籍,我的书架上就有他的 《代码整洁之道》,《程序员的职业素养》, 《敏捷软件开发(原则模式与实践)》《敏捷软件开发(原则模式与实践)》《UML for Java For Programmers》, 《Extreme Programming in Practice》等这些书籍。虽然他的这些书有点老旧,但是这些书仍然很有价值,纵使数十年之后,这些书依旧受用,尤其是在面向对象编程方面。 本书不仅仅是告诉你要做什么,还教会你什么不能做。书中有关于代码味道的一个章节,全面列举了大多数程序员遇到的各种错误,其后的章节则详细描述如何纠正这些错误。比如如何将过长的switch声明转换成遵循开放闭合原则的模型,如何利用集成和多态。再次啰嗦一下,这本书确实值得每个程序员拥有。和上本书一样,书中的例子使用Java语言,但依然适合使用其他面向对象编程语言的开发者阅读。想要撸的一手好码,这本书必不可少。

查看详细:亚马逊

代码大全

想必这本书大家都曾阅读过,这就是鼎鼎大名的《代码大全》,从某个角度看,它其实就是C++版的《代码整洁之道》。本书的目标就是帮开发者使用做高质的代码写出更好的软件。同样书中也涉及了编程中常见问题和最佳实践。这本书也可以称得上是必读书籍,尤其是对于C和C++程序员。《代码大全(第2版)》中所论述的技术不仅填补了初级与高级编程实践之间的空白,而且也为程序员们提供了一个有关软件开发技术的信息来源。《代码大全(第2版)》对经验丰富的程序员、技术带头人、自学的程序员及没有太多编程经验的学生都是大有裨益的。可以说,只要您具有一定的编程基础,想成为一名优秀的程序员,阅读《代码大全(第2版)》都不会让您失望。

查看详细:亚马逊

单元测试的艺术

如果非要做一件改善项目,提高开发者水平的事情,我想那就是让开发者掌握单元测试的能力。对于专业的开发者来说,单元测试是一项必备的技能,多数的程序员却不具备TDD(测试驱动开发)的能力。我虽然在不太遵循TDD这种模式,但是也会为自己写的或维护的代码编写单元测试。对于工程来说,开源项目基本都严格遵守执行单元测试,而很多商业的工程则在单元测试方面有所缺失。一个拥有单元测试的项目会变得更加容易维护和更改。本书会介绍成功的项目与失败项目的差别,可维护的代码库与不可维护的代码库之间的区别。本书示例为.NET代码,但这并不会影响你了解单元测试。如果你是一名技术负责人或者项目负责人,这本书可以帮你更好地把控项目代码质量。如果你看Java更舒服的话,也可以看一看这本书《JUnit实战(第2版)》

查看详细:亚马逊

精益软件开发管理之道

《精益软件开发管理之道》是一本软件开发方法学的书。作者从24个不同的视角,在更大的空间、时间、行业、文化背景下,考察了敏捷和精益方法。《精益软件开发管理之道》详细阐述了敏捷和精益开发方法取得成功的深层原因。《精益软件开发管理之道》包括以下内容:系统思考,以适当足够的方式关注客户;技术杰出,介绍了杰出软件开发的基础-低耦合的架构、测试驱动的开发过程等;可靠交付,讨论了工作流和日程计划,以及反馈的重要作用;无情改进,讨论了所有精益组织的基本特点:持续不断、永不满足的改进;卓越的人,卓越的结果来自于卓越的人;一致的领导,讨论在领导团队中达成一致。

查看详细:亚马逊

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

这本书要么你读过,要么就是听说过,这就是经典的GOF(Gang of Four 中文译为四人帮)设计模式一书。该书作者为四人,分别是Eric Gamma, Richard Helm, Ralph Johnson, 和John Vissides。四位顶尖的面向对象领域专家精心选取了最具价值的设计实践,加以分类整理和命名,并用简洁而易于重用的形式表达出来。本书已经成为面向对象技术人员的圣经和词典,书中定义的23个模式逐渐成为开发界技术交流所必备的基础知识和语汇。使用这些设计模式,我们可以设计出灵活,优雅和可重用的可扩展的设计。

Windows 2000 的安全隐患

Windows 2000 的安全隐患加入时间:01-1-4 下午 08:48:24上一篇  文章分类  下一篇  原文作者avoidnf8@hotmail.com greyzone@compsecur...
  • silversoft
  • silversoft
  • 2001-01-06 00:29:00
  • 486

每一个认真的程序员都应该读的10本经典书籍

 书是知识和智慧的源泉,但是在今天已经很少有人读书了。程序员读书的情况更是少之又少,相反在更多的情况下我们是依赖网络去寻找答案。 科技正高速的向前发展,这个速度超过了人类历史上的任何时期,每隔...
  • Plantago
  • Plantago
  • 2016-03-22 10:05:55
  • 391

程序员应该读的几本书

从毕业到现在一直在IT行业,算下来差不多快接近四年,作为一个不是正统的计算机专业出身的码农,很多方面都有待提高,包括撰写博客,一个人要求进步,首先他要学会分享。为了能够提高自我的能力,我最初的想法就是...
  • meizhou0228
  • meizhou0228
  • 2016-03-08 16:44:15
  • 597

100本顶尖软件开发书籍

根据以下标准来评选: 1)Amazon的浏览次数 ; 2)Amazon的评分 ; 3)google的点击次数 ; 4)是否得到 Jolt 奖 (一本技术书籍只有在获得了Jolt奖之后才能真正奠定经...
  • Vanessa219
  • Vanessa219
  • 2008-07-08 09:41:00
  • 948

Java程序员必读的十本书

作者:Kevin Taylor 来自:Focus on Java 原文:http://java.about.com/od/advancedjava/tp/mustreadjava.htm Kev...
  • piaopiaopiaopiaopiao
  • piaopiaopiaopiaopiao
  • 2013-11-03 22:37:27
  • 2815

【每日一读】推荐程序员们读的三本书

今天自由小编给大家推荐三本书,一本是历时两年的《深入浅出Node.js》,因为版本的迭带,作者一直负责认真的修改。所以版本上大家可以放心。第二本:《自制编程语言》,休闲时自己动手制作编程语言的读物。第...
  • zuoninger
  • zuoninger
  • 2013-11-15 13:37:25
  • 2240

哪本最具影响力的书,是每个程序员都应该读的?

对我影响最大的那本书是 Robert Pirsig 的《禅与摩托车维修艺术 / Zen and the Art of Motorcycle Maintenance》。 不管你做什么事,总是要力求完美,...
  • universsky2015
  • universsky2015
  • 2017-09-13 14:36:45
  • 362

读《程序员的自我修养》有感

《程序员的自我修养》这本书其实最开始是信息安全这门课推荐的书,当时书买了,也看了点,后来就感觉跟没看是一样的,主要是之前根本就没怎么接触,也没写什么读书笔记或者做一些实验来加深对知识的理解,后来上了《...
  • wgsddfe
  • wgsddfe
  • 2013-12-22 22:20:32
  • 1007

[推荐]《人一生要读的60本书》

书  名:人一生要读的60本书作    者: 童小珍、杨飞 出 版 社: 中国书籍出版社 出版日期: 2004年9月第1版 内容简介:  本书所选60本书涵盖政治学、经济学、军事学、社会学、成功学、文...
  • liumangxiong
  • liumangxiong
  • 2006-05-04 11:12:00
  • 3055

春节假期最值得阅读的10本书

[导读]这些书主要展现了科技与人性、财富与历史、创新与成长。有些书是时下热门新书,有些则是经典著作。 无论是已经到家进入休假模式的你,还是奔波在归家途中的你,这个春节是否有时间,或者说有...
  • zhenxiaohui
  • zhenxiaohui
  • 2014-02-03 20:48:01
  • 877
收藏助手
不良信息举报
您举报文章:程序员应该读的六本书
举报原因:
原因补充:

(最多只允许输入30个字)