程序员成长系列--应该读的通用技术书籍列表
曾经看过一篇文章,说程序员分为5种境界,比诗人还多2重境界。
第一重,芳辰追逸趣,禁苑信多奇。在这个阶段,我们大多是还没有入门 第二重,壮志饥餐胡虏肉,笑谈渴饮匈奴血。在这个阶段,其实我们已经入门 第三重,昨夜西风凋碧树。独上高楼,望尽天涯路。处在这一阶段的人,多已经过了第二重天的癫狂期,开始思考为什么了 第四重,衣带渐宽终不悔,为伊消得人憔悴。终于,找到了一个方向,找到了一本或者几本看起来能够诠释我们心中郁结的书。 第五重,会当凌绝顶,一览众山小。也许是一个机缘巧合,也许是一个上天的恩赐,有一天你突然顿悟了,然后发现其实世界就是万法归一,这就是道。 |
那么怎么通过读书突破一个又一个境界那?从今天开始,我将分几篇说明一下程序员成长需要的那些方面的知识和能力,从点从面上做一些说明。不到之处请指导。
读书推荐前10部!
1、《代码大全(第2版) 》 史蒂夫·迈克康奈尔推荐数:1684 适合达到第三层的程序员
Steve McConnell的原作《代码大全》(第1版)是公认的关于编程的最佳实践指南之一, 在过去的十多年间,本书一直在帮助开发人员编写更好的软件。 现在,作者将这本经典著作全新演绎,融入了最前沿的实践技术,加入了上百个崭新的代码示例, 充分展示了软件构建的艺术性和科学性。 McConnell汇集了来自研究机构、学术界以及业界日常实践的主要知识, 把最高效的技术和最重要的原理交织融会为这本既清晰又实用的指南。 无论您的经验水平如何,也不管您在怎样的开发环境中工作,也无论项目是大是小, 本书都将激发您的思维并帮助您构建高品质的代码。 《代码大全(第2版))》做了全面的更新,增加了很多与时俱进的内容,包括对新语言、新的开发过程与方法论的讨论等等。 购买地址 2、《程序员修炼之道:从小工到专家*亨特(Andrew Hunt)》点击书名购买推荐数:1504 适合达到第1层的程序员 对于那些已经学习过编程机制的程序员来说,这是一本卓越的书。 或许他们还是在校生,但对要自己做什么,还感觉不是很安全。
《程序员修炼之道:从小工到专家》内容简介:《程序员修炼之道》由一系列独立的部分组成, 涵盖的主题从个人责任、职业发展,知道用于使代码保持灵活、并且易于改编和复用的各种架构技术, 利用许多富有娱乐性的奇闻轶事、有思想性的例子及有趣的类比, 全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。 无论你是初学者,是有经验的程序员,还是软件项目经理,《程序员修炼之道:从小工到专家》都适合你阅读。 3、《计算机程序的构造和解释(原书第2版)》 点击购买推荐数:916 适合达到第三层的程序员 就个人而言,这本书目前为止对我影响醉倒的一本编程书。 《代码大全》、《重构》和《设计模式》这些经典书会教给你高效的工作习惯和交易细节。 其他像《人件集》、《计算机编程心理学》和《人月神话》这些书会深入软件开发的心理层面。 其他书籍则处理算法。这些书都有自己所属的位置。 然而《计算机程序的构造和解释》与这些不同。 这是一本会启发你的书,它会燃起你编写出色程序的热情; 它还将教会你认识并欣赏美; 它会让你有种敬畏,让你难以抑制地渴望学习更多的东西。 其他书或许会让你成为一位更出色的程序员,但此书将一定会让你成为一名程序员。 同时,你将会学到其他东西,函数式编程(第三章)、惰性计算、元编程、虚拟机、解释器和编译器。 一些人认为此书不适合新手。 个人认为,虽然我并不完全认同要有一些编程经验才能读此书,但我还是一定推荐给初学者。 毕竟这本书是写给著名的6.001,是麻省理工学院的入门编程课程。 此书或许需要多做努力(尤其你在做练习的时候,你也应当如此),但这个价是对得起这本书的。 4、《c程序设计教程 谭浩强C语言入门经典开发书籍》推荐数:774 适合达到第1层的程序员
《C程序设计语言》(第2版新版)讲述深入浅出,配合典型例证,通俗易懂,实用性强, 适合作为大专院校计算机专业或非计算机专业的C语言教材,也可以作为从事计算机相关软硬件开发的技术人员的参考书。 《C程序设计语言》(第2版新版)原著即为C语言的设计者之一Dennis M.Ritchie和著名的计算机科学家Brian W.Kernighan合著的 一本介绍C语言的权威经典著作。 我们现在见到的大量论述C语言程序设计的教材和专著均以此书为蓝本。 原著第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。 人们熟知的“hello,world”程序就是由本书首次引入的,现在,这一程序已经成为所有程序设计语言入门的第一课。 5、《算法导论 原书第3版/第三版 中文版》推荐数:671 适合达到第三层的程序员 《代码大全》教你如何正确编程; 《人月神话》教你如何正确管理; 《设计模式》教你如何正确设计…… 在我看来,代码只是一个工具,并非精髓。 开发软件的主要部分是创建新算法或重新实现现有算法。 其他部分则像重新组装乐高砖块或创建“管理”层。
6、《重构:改善既有代码的设计 正版》推荐数:617 适合达到第三层的程序员 《重构:改善既有代码的设计》清晰地揭示了重构的过程,解释了重构的原理和最佳实践方式, 并给出了何时以及何地应该开始挖掘代码以求改善。 书中给出了70多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。 《重构:改善既有代码的设计》提出的重构准则将帮助你一次一小步地修改你的代码,从而减少了开发过程中的风险。 《重构:改善既有代码的设计》适合软件开发人员、项目管理人员等阅读, 也可作为高等院校计算机及相关专业师生的参考读物。
7、《Head First 设计模式(中文版)》推荐数:617 适合达到第三层的程序员 自1995年出版以来,本书一直名列Amazon和各大书店销售榜前列。 近10年后,本书仍是Addison-Wesley公司2003年最畅销的图书之一。 中文版销售逾4万册。
8、《人月神话(32周年中文纪念版)》推荐数:588 适合达到第1层的程序员 在软件领域,很少能有像《人月神话》一样具有深远影响力并且畅销不衰的著作。 Brooks博士为人们管理复杂项目提供了最具洞察力的见解。 既有很多发人深省的观点,又有大量软件工程的实践。 本书内容来自Brooks博士在IBM公司System/360家族和OS/360中的项目管理经验。 该书英文原版一经面世,即引起业内人士的强烈反响,后又译为德、法、日、俄中等多种语言,全球销量数百万册。 确立了其在行业内的经典地位。 9、《计算机程序设计艺术卷4A组合算法1英文版精/图灵原版》推荐数:542 适合达到第5层的程序员 《计算机程序设计艺术》系列著作对计算机领域产生了深远的影响。 这一系列堪称一项浩大的工程,自1962年开始编写,计划出版7卷,目前已经出版了4卷。 《美国科学家》杂志曾将这套书与爱因斯坦的《相对论》等书并列称为20世纪最重要的12本物理学著作。 目前Knuth正将毕生精力投入到这部史诗性著作的撰写中。
10、《编译原理(第二版)》推荐数:462 适合达到第4层的程序员 我从没忘过此书的第一版封面。 此书让我知道了编译器是多么地神奇绝妙。- DB |
当然了,这里的排名并不具有什么权威性,但绝对可以说都是好书,这11本外还有很多书虽然票数不是那么多,但大家估计都耳熟能详,比如《Effective C++》(中文版《Effective C++:改善程序与设计的55个具体做法(第三版)中文版 》),《Clean Code》(中文版《代码整洁之道》),《Effective Java》(中文版《Effective Java中文版(第2版)》等 。
记得有位先哲曾说过:一种编程语言的重要性并不在于语言本身,而是在于这种语言来体现出来的编程思维模式。所以说,并不是你用到的书才去读,读书是一种习惯。
前十部书属于比较通用的技术书籍。下一篇,推荐前端开发工程师/html、js等设计和开发书籍。
也可以看看一下读后感
[《乔布斯传》读后感]
[《人月神话》读后感及下载购买地址]
程序员成长系列--应该读的通用技术书籍列表相关推荐
- 菜鸟程序员成长记Java系列(二)
菜鸟程序员Java系列之mybaits 上个篇聊了数据库连接,本次聊一下mybaits的集成 pom.xml文件多加了 <dependency><groupId>org.myb ...
- 典型的 C++ 程序员成长经历
From:http://blog.csdn.net/breakerzy/article/details/7399872 一个典型的 C++ 程序员成长经历: 1. 完整的学一遍 C++ 所有语言特性 ...
- 程序员成长的10个阶段
我的程序员成长之路 程序员的成长经历往往很相似,大部分的人走过了最前面相同的一段路,而有的人则走得更远.总结自己这些年来的历程,这也许能让年轻的程序员少走一些弯路,成长得更快:或许更好一些,能让大家从 ...
- 程序员成长之路--软件架构
程序员成长之路--软件架构 一.想成为一个合格的架构师,你要知道软件架构是个什么概念,明白架构的定义: 1.软件架构是一个系统的草图. 2.软件架构描述的对象是直接构成系统的抽象组件. 3.各个组件之 ...
- 加拿大程序员趣闻系列 1/N
第一篇 加拿大的工作机会 1. 自我介绍下 先自我介绍下, 我是一个来到加拿大2年的Android程序员. 之前在国内的几个Top 5的大公司里干过几年, 现在漂到了海外. 在加拿大这2年, 感受还是 ...
- 原创电子书《菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师》
<菜鸟程序员成长之路:从技术小白到阿里巴巴Java工程师> 国庆节快乐!一年一度长度排第二的假期终于来了. 难得有十一长假,作者也想要休息几天啦. 不管你是选择出门玩,还是在公司加班,在学 ...
- 程序员成长之路(四)之有用的网址
2019独角兽企业重金招聘Python工程师标准>>> 通过Java来测试JSON和Protocol Buffer的传输文件大小 http://www.jb51.net/articl ...
- 加拿大程序员趣闻系列 2/N : 薪酬福利篇
第二篇 薪酬福利本篇 先祝大家新快乐. 我们这不放假, 我自己只好请了15号与16号两天,即除夕和初一休息. 好在19号是法定假日family day, 所以我请2天, 变成了休息5天. 除了过新年, ...
- 程序员进阶系列:年少不懂爱家家,懂了已是猿中人。
正式分享之前,先回忆一下作者年少时的一次真实的面试囧途. 经验老道的面试官: 先问个简单的问题,i++ 与 ++i 有啥区别? 年少懵懂的攻城狮: i++ 先把操作数加 1,然后把操作数放入表达式中运 ...
最新文章
- 计算机上机报告-origin,Origin 8上机练习1
- Java中的JSON
- 博弈论经典算法(一)——对抗搜索与Alpha-Beta剪枝
- zuk z2 Android7.0官方,首发ZUK Z2官方固件ZUI2.5安卓7.0卡刷包!
- Java临时缓存API –测试早期草案评审RI
- C语言笔试常考知识点
- Win7系统不能录音怎么办
- MyReport报表引擎2.7.4.0新功能
- Axure RP 8 获取焦点的应用
- Redis_21_RedisCluster集群版搭建和SpringBoot的使用(实践开发类)
- 话费充值api接口 手机话费充值功能接入
- 哈迪-温伯格平衡(Hardy-Weinberg equilibrium)法则
- Python实现车牌摇号小程序
- 组播IP与组播Mac的对应关系
- 中国古代神器 兵器详解
- 出现最多的字母——python
- 无法完成操作。服务无法在此时接受控制信息。
- 计算机学院副院长竞聘稿,继续教育学院副院长竞聘演讲稿
- kerberos kubernetes读音
- linux中atoi函数的实现 值得借鉴,atoi 函数实现