程序猿必读的六本书

作为一名程序猿,日常的工作除了上班撸代码就是加班撸代码了。

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

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

中学物理常客牛顿曾说,”假设我比别人看得更远,那是由于我站在巨人的肩上“。

他山之石。能够攻玉。阅读大师巨匠的作品无疑是最有效的自学方式之中的一个。

业界知名的Bob大叔是代码整洁和面向对象编程的坚定支持推进者。其在这方面的著作能够称得上权威。Martin Fowler相同名声在外,他的关于重构的著作《重构—-改善既有代码的设计》应该是人手一本。阅读诸如上面两位大家的著作,对技术提到大有裨益。

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


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

图片描写叙述

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

代码整洁之道

图片描写叙述
这是我最喜欢的一本书。不止一次我将它推荐给我的同事,读者还有学生。

我觉得它能够称得上软件开发与编码方便最好的一本书。

Bob大叔我想无需做介绍,他写过一个关于敏捷开发的系列书籍。我的书架上就有他的《代码整洁之道》,《程序猿的职业素质》。《敏捷软件开发(原则模式与实践)》。《敏捷软件开发(原则模式与实践)》。《UML for Java For Programmers》。 《Extreme Programming in Practice》等这些书籍。尽管他的这些书有点老旧。可是这些书仍然非常有价值,纵使数十年之后,这些书依旧受用,尤其是在面向对象编程方面。

本书不不过告诉你要做什么。还教会你什么不能做。书中有关于代码味道的一个章节,全面列举了大多数程序猿遇到的各种错误,其后的章节则具体描写叙述怎样纠正这些错误。比方怎样将过长的switch声明转换成遵循开放闭合原则的模型。怎样利用集成和多态。再次啰嗦一下。这本书确实值得每一个程序猿拥有。和上本书一样,书中的样例使用Java语言,但依旧适合使用其它面向对象编程语言的开发人员阅读。想要撸的一手好码,这本书不可缺少。

代码大全

图片描写叙述

想必这本书大家都曾阅读过,这就是鼎鼎大名的《代码大全》,从某个角度看。它事实上就是C++版的《代码整洁之道》。

本书的目标就是帮开发人员使用做高质的代码写出更好的软件。

相同书中也涉及了编程中常见问题和最佳实践。这本书也能够称得上是必读书籍,尤其是对于C和C++程序猿。

《代码大全(第2版)》中所论述的技术不仅填补了0基础与高级编程实践之间的空白,并且也为程序猿们提供了一个有关软件开发技术的信息来源。《代码大全(第2版)》对经验丰富的程序猿、技术带头人、自学的程序猿及没有太多编程经验的学生都是大有裨益的。能够说,只要你具有一定的编程基础。想成为一名优秀的程序猿。阅读《代码大全(第2版)》都不会让你失望。

单元測试的艺术

图片描写叙述

假设非要做一件改善项目。提高开发人员水平的事情。我想那就是让开发人员掌握单元測试的能力。

对于专业的开发人员来说,单元測试是一项必备的技能。多数的程序猿却不具备TDD(測试驱动开发)的能力。我尽管在不太遵循TDD这样的模式。可是也会为自己写的或维护的代码编写单元測试。对于project来说,开源项目基本都严格遵守运行单元測试。而非常多商业的project则在单元測试方面有所缺失。一个拥有单元測试的项目会变得更加easy维护和更改。本书会介绍成功的项目与失败项目的区别,可维护的代码库与不可维护的代码库之间的区别。本书演示样例为.NET代码,但这并不会影响你了解单元測试。

假设你是一名技术负责人或者项目负责人,这本书能够帮你更好地把控项目代码质量。

假设你看Java更舒服的话。也能够看一看这本书《JUnit实战(第2版)》。

精益软件开发管理之道

图片描写叙述

《精益软件开发管理之道》是一本软件开发方法学的书。作者从24个不同的视角,在更大的空间、时间、行业、文化背景下,考察了敏捷和精益方法。《精益软件开发管理之道》具体阐述了敏捷和精益开发方法取得成功的深层原因。

《精益软件开发管理之道》包含下面内容:系统思考,以适当足够的方式关注客户;技术杰出,介绍了杰出软件开发的基础-低耦合的架构、測试驱动的开发过程等;可靠交付,讨论了工作流和日程计划。以及反馈的重要作用;无情改进,讨论了全部精益组织的基本特点:持续不断、永不满足的改进;卓越的人,卓越的结果来自于卓越的人;一致的领导,讨论在领导团队中达成一致。

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

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

使用这些设计模式,我们能够设计出灵活。优雅和可重用的可扩展的设计。


原文參考:6 Books to Learn and Master Programming and Coding – Must Read

posted on 2017-06-19 15:07  yjbjingcha  阅读(255)  评论(0编辑  收藏  举报

导航