① 程序员必读的经典书籍
程序员需要学习的知识地很多的,需要不断的看书学习,才能不断的提升自己。下面是由我给大家带来关于程序员必读的书籍,希望对大家有帮助!
程序员必读的书籍
1.重构:改善既有代码的设计(软件开发的不朽经典)
何为重构,一言以蔽之,就是在不改变外部行为的前提下,有条不紊地改善代码。本书虽然使用java语言书写示例代码,但是其概念与思想同样适合 于其他语言。书中,作者以一些平淡无奇,甚至带有坏味道的代码开始,一步一步地修改转变成更加灵活,可重用的代码。通过书中的示例,你会清楚地明白什么才 是整洁的代码。重构其实依然成为 经验 丰富的程序员的必备技能,当你想要改善重构代码时,读一读这本书就会让你有章可循,豁然开朗。
2.代码整洁之道(Robert C. Martin力作,韩磊献译)
这是我最喜欢的一本书,不止一次我将它推荐给我的同事,读者还有学生。我认为它可以称得上软件开发与编码方便最好的一本书。Bob大叔我想无需做介绍,他写 过一个关于敏捷开发的系列书籍,我的书架上就有他的 《代码整洁之道》 , 《程序员的职业素养》 , 《敏捷软件开发(原则模式与实践)》 , 《敏捷软件开发(原则模式与实践)》 , 《UML for Java For Programmers》 , 《Extreme Programming in Practice》等这些书籍。虽然他的这些书有点老旧,但是这些书仍然很有价值,纵使数十年之后,这些书依旧受用,尤其是在面向对象编程方面。 本书不仅仅是告诉你要做什么,还教会你什么不能做。书中有关于代码味道的一个章节,全面列举了大多数程序员遇到的各种错误,其后的章节则详细描述如何纠正 这些错误。比如如何将过长的switch声明转换成遵循开放闭合原则的模型,如何利用集成和多态。再次啰嗦一下,这本书确实值得每个程序员拥有。和上本书 一样,书中的例子使用Java语言,但依然适合使用其他面向对象编程语言的开发者阅读。想要撸的一手好码,这本书必不可少。
3.代码大全
两届Software Jolt Award震撼大奖得主!软件开发世界的地图,经典中的经典
想必这本书大家都曾阅读过,这就是鼎鼎大名的《代码大全》,从某个角度看,它其实就是C++版的《代码整洁之道》。本书的目标就是帮开发者使用 做高质的代码写出更好的软件。同样书中也涉及了编程中常见问题和最佳实践。这本书也可以称得上是必读书籍,尤其是对于C和C++程序员。《代码大全(第2 版)》中所论述的技术不仅填补了初级与高级编程实践之间的空白,而且也为程序员们提供了一个有关软件开发技术的信息来源。《代码大全(第2版)》对经验丰 富的程序员、技术带头人、自学的程序员及没有太多编程经验的学生都是大有裨益的。可以说,只要您具有一定的编程基础,想成为一名优秀的程序员,阅读《代码 大全(第2版)》都不会让您失望。
4.单元测试的艺术
世界级软件开发大师,设计模式和敏捷开发先驱,“Bob大叔”Robert C. Martin强力推荐
如果非要做一件改善项目,提高开发者水平的事情,我想那就是让开发者掌握单元测试的能力。对于专业的开发者来说,单元测试是一项必备的技能,多数的程序员 却不具备TDD(测试驱动开发)的能力。我虽然在不太遵循TDD这种模式,但是也会为自己写的或维护的代码编写单元测试。对于工程来说,开源项目基本都严 格遵守执行单元测试,而很多商业的工程则在单元测试方面有所缺失。一个拥有单元测试的项目会变得更加容易维护和更改。本书会介绍成功的项目与失败项目的差 别,可维护的代码库与不可维护的代码库之间的区别。本书示例为.NET代码,但这并不会影响你了解单元测试。如果你是一名技术负责人或者项目负责人,这本 书可以帮你更好地把控项目代码质量。如果你看Java更舒服的话,也可以看一看这本书 《JUnit实战(第2版)》 。
5.精益软件开发管理之道
《精益软件开发管理之道》是一本软件开发 方法 学的书。作者从24个不同的视角,在更大的空间、时间、行业、 文化 背景下,考察了敏捷和精益方法。 《精益软件开发管理之道》详细阐述了敏捷和精益开发方法取得成功的深层原因。《精益软件开发管理之道》包括以下内容:系统思考,以适当足够的方式关注客 户;技术杰出,介绍了杰出软件开发的基础-低耦合的架构、测试驱动的开发过程等;可靠交付,讨论了工作流和日程计划,以及反馈的重要作用;无情改进,讨论 了所有精益组织的基本特点:持续不断、永不满足的改进;卓越的人,卓越的结果来自于卓越的人;一致的领导,讨论在领导团队中达成一致。
6.设计模式:可复用面向对象软件的基础
这本书要么你读过,要么就是听说过,这就是经典的GOF(Gang of Four 中文译为_)设计模式一书。该书作者为四人,分别是Eric Gamma, Richard Helm, Ralph Johnson, 和John Vissides。四位顶尖的面向对象领域专家精心选取了最具价值的设计实践,加以分类整理和命名,并用简洁而易于重用的形式表达出来。本书已经成为面向 对象技术人员的圣经和词典,书中定义的23个模式逐渐成为开发界技术交流所必备的基础知识和语汇。使用这些设计模式,我们可以设计出灵活,优雅和可重用的 可扩展的设计。
7.细说PHP
51CTO“最受读者喜爱的原创IT技术图书”奖
《细说PHP》编写的宗旨是让读者能拥有一本PHP方面的学习和开发使用的最好书籍,对所罗列出的每个知识点都进行了细化和延伸,并力求讲解到位,让读 者可以轻松地读懂。对于几乎每个知识点都有对应且详实的可运行的代码配套,对所有实例代码都附有详细注释、说明及运行效果图。另外在每个章节的最后还为读 者安排了大量的和本章知识点配套的授课课件及自测试题(附加在光盘中),能更好地帮助读者掌握理论知识点,提高实际编程能力,寓学于练。对于入门与提高 PHP技术起到关键作用。
《细说PHP》作者高洛峰。现任北京LAMP兄弟连[1](易第优 教育 )教学总监,五年软件开发工作经验,四年IT教学工作经验。曾在多家上市企业担任过技 术总监、项目经理、高级软件工程师等职务,具有扎实的技术功底。国内资深的高级技术认证讲师,从事IT培训以来累计授课长达6000课时以上,培训近千名 学员成功走向IT岗位,具有丰富的IT教学经验。
程序员的专业技术书
1、《数学之美》第二版
获奖畅销书《数学之美》第一版荣获国家图书馆第八届文津图书奖。
第一版入选广电总局“2014年向全国青少年推荐百种优秀图书书目”,荣获2012-2013年度全行业优秀畅销书。
信息领域大学生必读好书,央视新闻推荐的学科敲门砖。
新版增加了大数据和机器学习等最新内容,以满足人们对当下技术的学习需求;同时,根据专家和读者的反馈更正了错漏,并更新了部分内容。
《数 学之美》第一版上市后深受广大读者欢迎,并荣获国家图书馆第八届文津图书奖。读者说,读了《数学之美》,才发现大学时学的数学知识,比如马尔科夫链、矩阵 计算,甚至余弦函数原来都如此亲切,并且栩栩如生,才发现自然语言和信息处理这么有趣。而今,数学在信息产业中的应用越来越广泛,因此,作者在第二版中增 加了一些内容,尤其是针对大数据和机器学习的内容,以便满足人们对当下技术的学习需求。
2、文明之光 第三册
吴军博士继获奖畅销书《浪潮之巅》、《数学之美》之后的跨界之作
为您讲述他眼中的超越上下五千年的人类文明史
随文津奖得主一起体会科技与人文之美
作 者所选的创作素材来自于十几年来在世界各地的所见所闻,对其内容都有着深刻的体会和认识。《文明之光》系列第三册每个章节依然相对独立,书中全景式地展现 了人类文明发展历程中的多样性。内容涉及音乐、美术、计算机、互联网、金融、硅谷对世界科技发展的启迪、微粒子和宇宙天文学、环境保护八个专题。
3、构建之法:现代软件工程
“做中学 Learning By Doing”的现代方式教授软件工程
李未院士鼎力推荐,众多软工教师一致好评
微软研发总监邹欣力作
推荐软件工程专业学子阅读,了解软件工程真正内涵,懂得“工程”二字真正含义,知道软件工程和计算机科学的区别。了解之后,就知道为何软件工程是就业含金量较高的行业了。
书中设想了大量的场景“学”和“习”,并且用了大量的类比,非常生动有趣。这本教材也对软件工程课老师提出了更高的要求;对学生而言,同样面临着要付出怎样的努力才能学到“干货”的选择。
《构建之法:现代软件工程》共分17章,对照美国ACM/IEEE2013年新出版的计算机科学教学指导 (Computer ScienceCurricula 2013)中的软件工程相关部分,这本教材覆盖了其中大多数Core-Tier1和Core-Tier2的内容。可以说,全书对软件工程内容的覆盖不逊于 任何一本现行的教材,同时讲述了业界最新实践方法。
程序员看的好书籍
1.《哥德尔、埃舍尔、巴赫》
豆瓣评分:9.4 分
作者简介:道格拉斯·理查·郝夫斯台特,中文名侯世达,美国学者、作家。他的主要研究领域包括意识、类比、艺术创造、文学翻译以及数学和物理学探索。 因其着作《哥德尔、埃舍尔、巴赫》获得普立兹奖(非小说类别)和美国国家经典奖(科学类别)。
推荐理由:这是一部天书。在数学,绘画,音乐和 故事 中畅游,却在探讨哲学中最深刻的问题:意识和灵魂如何产生,从哲学角度探讨人工智能和人类智能。当你看完书后,也许你具体记不得太多细节,但是不经意间你会发现它已经深深地影响了你的世界观。
2.《算法导论》
豆瓣评分:9.4 分
作者简介:托马斯·科尔曼,达特茅斯学院计算机科学系教授、系主任;查尔斯·雷瑟尔森,麻省理工学院计算机科学与电气工程系教授,他目前主持 MIT 超级计算技术研究组,并是 MIT 计算机科学和人工智能实验室计算理论研究组的成员;罗纳德·李维斯特,现任麻省理工学院电子工程和计算机科学系安德鲁与厄纳·维特尔比(Andrew and Erna Viterbi)教授。他是 MIT 计算机科学和人工智能实验室的成员,并领导着其中的信息安全和隐私中心。他现在担任国家密码学会的负责人;克利福德·斯坦,哥伦比亚大学计算机科学系和工业工程与运筹学系教授,他还是工业工程与运筹学系的系主任。
推荐理由:这本书深入浅出,全面地介绍了计算机算法。对每一个算法的分析既易于理解又十分有趣,并保持了数学严谨性。本书的设计目标全面,适用于多种用途。涵盖的内容有:算法在计算中的作用,概率分析和随机算法的介绍。书中专门讨论了线性规划,介绍了动态规划的两个应用,随机化和线性规划技术的近似算法等,还有有关递归求解、快速排序中用到的划分方法与期望线性时间顺序统计算法,以及对贪心算法元素的讨论。此书还介绍了对强连通子图算法正确性的证明,对哈密顿回路和子集求和问题的 NP 完全性的证明等内容。
猜你喜欢:
1. 程序员们的专业技术书分享
2. linux程序员必看书籍推荐
3. java程序员必看的书籍推荐
4. 清华大学推荐的青少年阅读书目
5. 文艺青年必看的书
② 如何成为编程高手,程序员要看什么样的书籍,有经验的人说一声,做好是大师级别的人物
作者:金蝶中间件公司CTO袁红岗
不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自己是高手,因为和我心目中真正的高手们比起来,还差的太远。世界上并没有成为高手的捷径,但一些基本原则是可以遵循的。
1. 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。
2. 丰富的想象力。不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法。丰富的想象力是建立在丰富的知识的基础上,除计算机以外,多涉猎其他的学科,比如天文、物理、数学等等。另外,多看科幻电影也是一个很好的途径。
3. 最简单的是最好的。这也许是所有科学都遵循的一条准则,如此复杂的质能互换原理在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc2。简单的方法更容易被人理解,更容易实现,也更容易维护。遇到问题时要优先考虑最简单的方案,只有简单方案不能满足要求时再考虑复杂的方案。
4. 不钻牛角尖。当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。当我遇到难题的时候会去玩游戏,而且是那种极暴力的打斗类游戏,当负责游戏的那部分大脑细胞极度亢奋的时候,负责编程的那部分大脑细胞就得到了充分的休息。当重新开始工作的时候,我会发现那些难题现在竟然可以迎刃而解。
5. 对答案的渴求。人类自然科学的发展史就是一个渴求得到答案的过程,即使只能知道答案的一小部分也值得我们去付出。只要你坚定信念,一定要找到问题的答案,你才会付出精力去探索,即使最后没有得到答案,在过程中你也会学到很多东西。
6. 多与别人交流。三人行必有我师,也许在一次和别人不经意的谈话中,就可以迸出灵感的火花。多上上网,看看别人对同一问题的看法,会给你很大的启发。
7. 良好的编程风格。注意养成良好的习惯,代码的缩进编排,变量的命名规则要始终保持一致。大家都知道如何排除代码中错误,却往往忽视了对注释的排错。注释是程序的一个重要组成部分,它可以使你的代码更容易理解,而如果代码已经清楚地表达了你的思想,就不必再加注释了,如果注释和代码不一致,那就更加糟糕。
8. 韧性和毅力。这也许是"高手"和一般程序员最大的区别。A good programming is 99 weat and 1ffee。高手们并不是天才,他们是在无数个日日夜夜中磨练出来的。成功能给我们带来无比的喜悦,但过程却是无比的枯燥乏味。你不妨做个测试,找个10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。
③ 零基础如何自学编程成为一名程序员,有哪些书推荐
在线学习网站很多,但是在线教育的视频并不是全部免费,有些免费的学习教程只会让你看一小部分,目的是吸引你买付费的课程。因为知识本身是无价的,如果没有回报,创作者如何投入更多的时间和精力去完成更多的更优质的课程呢。下面介绍几个大家常见的在线教育平台,大平台,课程种类多,选择多。
一、B站
B站虽然不是专业的在线教育视频网站,但是该平台内容多,用户流量大,很多教育创作者还是会上传很多优质的教程上传于B站去扩大自己的影响力。所以,如果你想要找一些免费的学习视频,可以来B站先搜索一下,B站选择多,没有广告,不收费。
二、腾讯课堂
腾讯课堂是腾讯推出的专业在线教育平台,聚合大量优质教育机构和名师,下设职业培训、公务员考试、托福雅思、考证考级、英语口语、中小学教育等众多在线学习精品课程,打造老师在线上课教学、学生及时互动学习的课堂。
三、网易云课堂
云课堂,是网易公司倾力打造的在线实用技能学习平台,主要为学习者提供海量、优质的课程,课程结构严谨,用户可以根据自身的学习程度,自主安排学习进度。立足于实用性的要求,云课堂精选各类课程,课程数量已达10000+,课时总数超100000,涵盖实用软件、IT与互联网、外语学习、生活家居、兴趣爱好、职场技能、金融管理、考试认证、中小学、亲子教育等十余大门类,其中不乏数量可观、制作精良的独家课程。
四、慕课
中国大学MOOC是由网易与高教社携手推出的在线教育平台,承接教育部国家精品开放课程任务,向大众提供中国知名高校的MOOC课程。在这里,每一个有意愿提升自己的人都可以免费获得更优质的高等教育。
五、极客学院
极客—jiker,是一群热爱技术、热爱教育的极客们,一起创办的国内领先的 IT 在线咨询及教育平台。
六、课堂在线
学堂在线是清华大学于2013年10月发起建立的慕课平台,是教育部在线教育研究中心的研究交流和成果应用平台,是国家2016年首批双创示范基地项目,是中国高等教育学会产教融合研究分会副秘书长单位,也是联合国教科文组织(UNESCO)国际工程教育中心(ICEE)的在线教育平台。目前,学堂在线运行了来自清华大学、北京大学、复旦大学、中国科技大学,以及麻省理工学院、斯坦福大学、加州大学伯克利分校等国内外一流大学的超过2300门优质课程,覆盖13大学科门类。
其实,自学网站很多,而且每个方向都会有很多专业学习网站,就不再一一列举了。
教育网站千千万,学习方式也很多,不管是通过自学网站学习还是看书学习,都需要学习者自觉且坚持,才能真正的学到东西。不然收集再多优质的课程,也只会躺在你的收藏夹,进不了你的大脑。希望你能通过以上分享找到你喜欢的自学网站和喜欢的教程,然后通过学习提升自己。
④ 求程序员入门书籍,我是学C++的,想考个初级程序员
下面是我根据别人的提示和自己的参考总结出的几个阶段的书籍,希望对你有帮助!!
第一阶段:
1::H.M.Deitel和P.J.Deitel的《 C++ How to Program 》(C++大学教程)
2:: 钱能的《C++程序设计教程》
3::Stanley B.lippman着 侯捷 译的《essential c++》
4::Stanley B.Lippman,Josee LaJoie,Barbara E.Moo的《c++ primer》
5::Bjarne Stroustrup的《the c++ programming language》
第二阶段:
1::Scott Meyers的《effective c++》
2::Herb Sutter的《exceptional c++》
3::Scott Meyers的《more effective c++》
4::Herb Sutter的《more exceptional c++》
第三阶段:
1::Stanley B.lippman的《insied the c++ object model》(深度探索C++ 对象模型)
2::Bjarne Stroustrup的《The design and evolution of c++》(C++的设 计与演化)
3::tephen C. Dewhurst的《C++ Gotchas: Avoiding Common Problems in Coding and Design》(C++程序设计陷阱)
第四阶段:
1:: Nicolai M.Josuttis的《the c++ standard library》(C++标准程序库 —自修教程与参考手册)
2::Scott Meyers的《effective stl》
3::Matthew H. Austern的《generic programming and the stl》(泛型编 程与STL)
4::侯捷的 《stl源码剖析》
第五阶段:
1::Herb Sutter的《exeptional c++ style》
2::《c++ template》
3::Andrei Alexandrescu的《modern c++ design》
第六阶段
1::《C++ 输入输出流及本地化》《C++ Network Programming》《大规模C++程序设计》
2::Barbara E.Moo和Andrew Koenig的《Ruminations On C++》(C++ 沉思录)
其他的:
Stanley B. Lippman,《Inside The C++ Object Model》影印版、中文版《深度探索C++对象模型》
Elements of Reusable Object-Oriented software》影印版、中文版《设计模式:可复用面向对象软件的基础》
John Lakos的着作《Large-Scale C++ Software Design》(《大规模C++程序设计》
Andrew Koenig和Barbara Moo在《Accelerated C++: Practical Programming by Example》《Ruminations on C++》
Bruce Eckel,《C++编程思想》
windows编程系列:
Charles Petzold 的 《Programming Windows》(Windows程序设计)
Jeffrey Richter 的《》(Windows核心编程)和《Advanced Windows》(Windows 高级编程指南)
数据结构和算法
1::清华教授严蔚敏和广东工业大学教授吴伟民的《数据结构(C语言版)》
2::清华教授殷人昆的《数据结构(用面向对象方法与C++描述)》
3::经典书籍:Mark Allen Weiss的《Data Structures and Algorithm Analysis in C》(数据结构与算法分析--C语言描述)和《Data Structures and Algorithm Analysis in C++》(数据结构与算法分析--C++语言描述)
4::王晓东的《算法设计与分析》
5::M.H.Alsuwaiyel(沙特)的 《Algorithms Design Techniques and Analysis》(算法设计技巧与分析)
6::经典:Thomas H.Cormen, Charles E.Leiserson的《Introction to Algorithms》(算法导论)
⑤ 考程序员要看什么书
1、
考试大纲(清华大学出版社)
程序员考试大纲与培训指南(2009版),8元
2、
指定教材(清华大学出版社)
程序员教程(第三版),张淑平主编,57元
程序员教程(第2版),沈林兴主编,57元
3、
试题分析解答(清华大学出版社)
程序员历年试题分析与解答,2008版,38元
4、
参考用书
(清华大学出版社)
程序员考前重点辅导,李锋主编,83元
跨越程序员必备训练,
范立南主编,49元
程序员考试复习与提高(2007版),李锋主编,78元
程序员考试科目1:计算机硬软件基础知识--考点解析及模拟训练(2005版),刘克武主编,48元
程序员考试科目2:程序设计--考点解析及模拟训练(2005版),刘华主编,29元
程序员考试辅导(2005版),谢树煜主编,46元
程序员备考训练(2006版),刘克武等编,19元
备注:最好是看09年以后的书,毕竟是09年改革的。
我在华信智原也正准备考初级程序员,希望我们都过,加油!
⑥ 提升自我,摆脱“内卷”!程序员必看的“反内卷”书有哪些
我认为程序员需要去看一些个人理财的书,同时也需要看一些职场成长的书。
从某种程度上来说,如果想要摆脱竞争的话,程序员最需要做的事情是提高自己的工作能力。与此同时,每个行业的每个工作都会存在一定的竞争现象,特别是对于程序员来讲,程序员的主要核心竞争力在于自己的年龄和时间,但很多程序员根本就意识不到这一点。特别是在年轻的时候,程序员可能会认为自己的工作能力非常强,所以自己才能够领到高薪。但事实上,程序员是通过出卖自己的时间来获得相应的薪水,一个上了年纪的程序员,其实很难获得更好的福利待遇。
最后,我们不能把自己工作与生活的希望寄托在读书的问题上,读书只不过是给人一个思考的方向而已,对于每个人来讲,我们需要自主判断自己的人生选择。
⑦ C\C++程序员需要掌握什么书籍
c/c++程序员需要掌握的书籍大概可以分成几个方面:
计算机基础类书籍,这类书籍包括计算机组成原理、计算机网络、数据库、操作系统、数据结构与算法。
c/c++类专业书籍,这类书籍包括基础的C语言程序设计、C++primer。
扩展类书籍,c/c++相关扩展类,推荐的有C陷阱与缺陷、深度探索C++对象模型、effective C++。
平台扩展类书籍,这类就要看你在哪类系统下做开发,一般常用的系统平台是嵌入式、windows、Unix及ios(object C++),这类书籍就比较多了,可以按照个人需求选择。
按照上述推荐的理由是:
学习计算机语言需要一定的基础,这类基础是非常重要但是很无聊的,后续在做开发的时候会觉得非常实用。
学好语言其实不是非常麻烦的部分,一般的教材类书籍即可,重要而麻烦的是在敲代码的过程中去熟练掌握、运用和创新。
扩展类书籍3可以帮助你更深入的理解你所学到的东西,而深入理解是程序员进阶的必经之路。
平台类书籍略有区别,但是标准C++是一样的,只是针对各自平台做了相应扩展(objectc++除外)。如果需要在某个平台下做开发,或者学习再去学习使用即可。
⑧ 程序员必读的14本书籍
程序员必读书籍有哪些呢?下面是我精心为您整理的程序员必读的14本书籍,希望您喜欢!
程序员必读的14本书籍
1、《代码大全》 史蒂夫·迈克康奈尔
“优秀的编程实践的网络全书,《代码大全》注重个人技术,其中所有东西加起来, 就是我们本能所说的“编写整洁的代码”。这本书有50页在谈论代码布局。” —— Joel Spolsky
Steve McConnell的原作《代码大全》(第1版)是公认的关于编程的最佳实践指南之一, 在过去的十多年间,本书一直在帮助开发人员编写更好的软件。
无论您的经验水平如何,也不管您在怎样的开发环境中工作,也无论项目是大是小, 本书都将激发您的思维并帮助您构建高品质的代码。
2、《计算机程序的构造和解释》
《代码大全》、《重构》和《设计模式》这些经典书会教给你高效的工作习惯和交易细节。 其他像《人件集》、《计算机编程心理学》和《人月神话》这些书会深入软件开发的心理层面。 其他书籍则处理算法。这些书都有自己所属的位置。
然而《计算机程序的构造和解释》与这些不同。 这是一本会启发你的书,它会燃起你编写出色程序的热情; 它还将教会你认识并欣赏美; 它会让你有种敬畏,让你难以抑制地渴望学习更多的东西。
其他书或许会让你成为一位更出色的程序员,但此书将一定会让你成为一名程序员。
3、《C程序设计语言》
《C程序设计语言》(第2版新版)原着即为C语言的设计者之一Dennis M.Ritchie和着名的计算机科学家Brian W.Kernighan合着的 一本介绍C语言的权威经典着作。 我们现在见到的大量论述C语言程序设计的教材和专着均以此书为蓝本。
原着第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。
人们熟知的“hello,world”程序就是由本书首次引入的,现在,这一程序已经成为所有程序设计语言入门的第一课。
4、程序员思维修炼(修订版)
生命中没有什么是一成不变的,人们需要改变自己的习惯和方法。不论你是程序员、软件公司管理者、技术奇人还是思想家,或者你只是想让自己的大脑更聪明一点儿,所有尝试改变自己的人,请把本书当作改变的开始……
5、系统化思维导论
关注人文,掌握思维法则,揭开科学与技术的神秘面纱
“它给我的震撼是第一次我能从全局的角度去看待各个学科,科学也不再是冷冰冰的割裂了的教条,不再是难以理解的一堆符号。”
6、优秀的叛逆者:引领组织变革的力量
Lois Kelly和Carmen Medina用她们的实战经验,向我们展示了如何在工作中赢得信赖、提出想法、处理人际关系、管理冲突和保持理智。”
——亚当•格兰特,沃顿商学院教授,《纽约时报》畅销书Give and Take的作者
7、《重构:改善既有代码的设计》
《重构:改善既有代码的设计》适合软件开发人员、项目管理人员等阅读, 也可作为高等院校计算机及相关专业师生的参考读物。
8、《Site Reliability Engineering》
《SRE:Google运维解密》可以让读者学习到Google工程师在提高系统部署规模、改进可靠性和资源利用效率方面的指导思想与具体实践——这些都是可以立即直接应用的宝贵经验。任何一个想要创建、扩展大规模集成系统的人都应该阅读,该书针对如何构建一个可长期维护的系统提供了非常宝贵的实践经验。
9、《Refactoring》
那时候当我读这本《重构:改善既有代码的设计》时,由于它在关于代码异味的单独章节所花的篇幅,使得这本书非常值这个价。该书非常成功,因为它使重构和代码异味的观念成为主流。
Steve Yegge曾对这本书不吝赞誉之词:
2003年10月,我第一次阅读这本书,有一种不寒而粟的感觉。如果你意识到,当你想离职时,你已经工作5年。转天我就随意问周围:“嗯,你已经读过重构方面的书,对吧?我只是随便问问,因为我很久以前读过,当然不是现在。”在我所调查的20个人中,只有一个人
10、《Peopleware》
在大学时我读到这本《人件》,该书似乎很令人信服,甚至所有的研究结果都支持该书的观点:不设置截止日期就比设置截止日期要好;办公室比隔间要好,等等。所有开发人员跟我讨论的时候,基本都赞同这些观点。
11、《编程珠玑》
尽管我不得不羞愧地承认,书中一半的东西我都没有理解,但我真的推荐《编程珠玑》,书中有些令人惊奇的东西。 – Matt Warren
12、《修改代码的艺术》by Michael Feathers
我认为没有任何一本书能向这本书一样影响了我的编程观点。它明确地告诉你如何处理其他人的代码,含蓄地教会你避免哪些(以及为什么要避免)。
同意。很多开发人员讨论用干净的石板来编写软件。但我想几乎所有开发人员的某些时候是在吃其他开发人员的狗食。– Bernard Dy
13、《编码:隐匿在计算机软硬件背后的语言》
我推荐CharlesPetzold的《编码》。在这个充满工具和IDE的年代,很多复杂度已经从程序员那“抽取”走了,这本书一本开眼之作。 –hemil
14、《程序员健康指南》