程序员必读的经典书籍

程序员必读的经典书籍,第1张

程序员需要学习的知识地很多的,需要不断的看书学习,才能不断的提升自己。下面是由我给大家带来关于程序员必读的书籍,希望对大家有帮助!

程序员必读的书籍

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. 文艺青年必看的书

对于初学者来说,看书只是学习的一部分,还有很重要的一部分就是实践,一定要多敲代码,多敲代码,多敲代码。下面给大家推荐几本个人觉得还不错的书。

书是永远都读不完的,但是知识可以是自己的,只有选择适合你自己的书单,才是最佳的解决方案。有些书籍是因为当时有项目需要用到这方面技术才需要看的,比如云计算和大数据相关的书籍,单纯的Java学习者可以忽略这方面的书籍,特此提醒。

1. 《程序员修炼之道》(推荐67%)

The Pragmatic Programmer:From Journeyman to Master

作者:[美]Andrew Hunt,David Thomas

内容简介:

《程序员修炼之道笑罩》之所以在全球范围内广迅拍泛传播,被一代代开发者奉为圭臬,是因为它可以创造出真正的价值:或编写出更好的软件,或探究出编程的本质,而所有收获均不依赖于特定语言、框架和方法。

“要把低级的知识放在代码中,它属于那里;把注释保留给其他的高级说明。”

—— 引自 第2章 务实的方法

2.《代码整洁之道》(推荐66%)

Clean Code:A Handbook of Agile Software Craftsmanship

作者:[美]Robert C. Martin

内容简介:

干净的代码,既在质量上较为可靠,也为后期维护和升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码 *** 作实践,并辅以来自实际项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

“我们都曾经瞟一眼自己亲手造成的混乱,决定弃之不顾,走向新一天。 我们都曾经看到自己的烂代码居然能运行,然后断言能运行的烂程序总比没有强。 我们都曾经说过有朝一日再回头清理。当然,那些日子里,我们都没听过勒布朗( LeBlanc )法则:稍后等于永不( Later equals never.) 。”

——引自 第1章 1.2 糟糕的代码

3.《代码大全》(推荐42%)

Code Complete

作者:[美]Steve McConnell

内容简介:

本书被广泛认为是编程的最佳使用指南,其十多年来一直帮助开发人员编写更好的软件。

这也是一本完整的软件构建手册,涵盖了软件构建过程中的所有细节。它从软件质量和编程思想等方面论述了软件构建的各个问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。

“有效地管理(需求)变更是实现高质量的一个关键。”

——引自 第20章 软件质量概述

4. 《重构》(推荐35%)

Refactoring: Improving the Design of Existing Code

作者:[美]Martin Fowler

内容简介:

书中清晰揭示了重构的过程,解释了重构的原理和实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了60多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。

本书提出的重构准则将帮助开发人员一次一小步地修改代码,从而减少开发过程中的风险。

“过去20年,《重构》一直是我案头必备的图书。每次重读,仍有感悟。对我而言,《重构》的意义不只在于指导代码重构,更在于让人从一开始就知道什么是好的代码,并且尽量写出没有'坏味道'的代码。Martin Fowler这次对本书进行的重构,体现了近年来编程领域的一些思潮变化。看来,既有设计,永远有改进空间。”

——韩磊,《代码整洁之道》译者

5.《深入浅出设计模式》(推荐29.4%)

Head First Design Patterns

作者:[美]Eric Freeman,Bert Bates,Kathy Sierra,Elisabeth Freeman

内容简介:

本书向您展示了功能强大、优雅、可重用、灵活的设计模式,并利用认知科学和学习理论的最新研究来创造多感官的学习体验,采用视觉丰富的形式,专门为大脑的工作方式而设计,而不是使您沉入睡眠的繁琐的文本输入法形式。

“针对接口编程,而不是针对实现编程。”

——引自 影印版 第11页

6.《人月神话》(推荐27.9%)

The Mythical Man-Month:Essays on Software Engineering

作者:[美]Frederick P. Brooks Jr

内容简介:

本书内容亩升羡源于作者Brooks在IBM公司任System/360计算机系列以及其庞大的软件系统OS/360项目经理时的实践经验。在本书中,Brooks为人们管理复杂项目提供了最具洞察力的见解,既有很多发人深省的观点,又有大量软件工程的实践,为每个复杂项目的管理者给出了自己的真知灼见。

“简洁和直白来自概念的完整性。每个部分必须反映相同的原理、原则和一致的折中机制。在语法上,每个部分应使用相同的技巧;在语义上,应具有同样的相似性。因此,易用性实际上需要设计的一致性和概念的完整性。”

——引自 章节 团队的性质

7. 《代码整洁之道:程序员的职业素养》(推荐27.9%)

The Clean Coder:A Code of Conduct for Professional Programmers

作者:[美]Robert C. Martin

内容简介:

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

“软件行业的飞速改变,意味着软件开发人员必须坚持广泛学习才不至于落伍。”

——引自 第1章 专业主义

8.《修改代码的艺术》(推荐26.4%)

Working Effectively with Legacy Code

作者:[美]Michael Feathers

内容简介:

世界级计算机专家Michael C. Feathers的经典之作,软件开发大师Robert C. Martin作序倾情推荐,修改遗留代码的权威指南。深入剖析修改遗留代码的各种方法和策略,从理解遗留代码、为其编码测试、重构及增加特性等方面给出大量实用建议,是所有程序开发人员必读之作。

“封装是好事情,但可别对测试人员这么说,他们可不这样想。过分庞大的类往往隐藏了过多的东西。”

——引自 第20章 处理大类

9. 《设计模式》(推荐25%)

Design Patterns

作者:[美]Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides

内容简介:

四位顶尖的设计师在面向对象软件的设计方面积累了丰富的经验,针对常见的设计问题提出了一系列简洁、明了的解决方案。这23种设计模式可让设计人员创建更加灵活,美观,可重用的设计,而无需自己再寻找解决方案。

“将系统分解成对象集合要考虑许多因素:封装、粒度、依赖关系、灵活性、性能、演化、复用等等,它们都影响着系统的分解,并且这些因素通常还是互相冲突的。”

——引自 第1章 1.5 组织编目

10. 《程序员面试金典(第6版)》(推荐22%)

Cracking the Coding Interview

作者:[美]Gayle Laakmann McDowell

内容简介:

本书层层紧扣程序员面试的每一个环节,全面而详尽地介绍了程序员应当如何应对面试,才能在面试中脱颖而出。

内容主要涉及面试流程解析,面试官的幕后决策及可能提出的问题,面试前的准备工作,对面试结果的处理,以及出自微软、苹果、谷歌等多家知名公司的189道编程面试题及详细解决方案。

第6版修订了上一版中一些题目的解法,为各章新增了介绍性内容,加入了更多的算法策略,并增添了对所有题目的提示信息。

“我不是招聘人员,我是软件工程师。因此,我知道要当场提出出色的算法,然后在白板上编写无瑕的代码是什么感觉。 作为候选人和面试官,我都经历过这个过程。”

——引自 序

以上呢,是为大家推荐的几本不错的编程书籍资料,大家可以搜索一下读一读,即使无法掌握全部,但充实一下自己的知识量总归没有错!

当然了,除了书籍资料之外,视频教程也是必不可少的,毕竟书本是死的,视频是灵活的,看书的同时不要忘记跟着视频敲代码练项目哦!毕竟以后找工作不是看你能记住多少知识点,而是看你的实战经验,是否能自己开发项目!

在此,我自我推荐一下我们家的Java基础教程,不敢保证有多好,但我们尽全力去辅导:

Java300集零基础适合初学者视频教程_Java初学入门视频基础巩固教程

希望这个回答对你有帮助!

记得有很长的一段时间我都被这本《算法导论》所支配,本书着重将严谨性和全面性融为一体,深入讨论各种算法,并将这些令人捉摸不透的高阶算法翻译为各个阶层都能理解的语言。全书各章自成体系,可以作为独立的学习单元,具备初步程序设计经验的人就能看懂;说明和解释力求浅显易懂,不失深度的同时体现了数学的严谨性

这本书的作者是托马斯•科尔曼(Thomas H. Cormen),是达特茅斯学院计算机科学系教授、系主任。目前的研究兴趣包括:算法工程、并行计算、具有高延迟的加速计算。他分别于1993年、1986年获得麻省理工学院电子工程和计算机科学博士、硕士学位,师从Charles E. Leiserson教授。由于他在计算机教育领域的突出贡献,Cormen教授荣获2009年ACM杰出教员脊大衡奖。

作为一本严谨的科学研究入门教材,理论的证明充斥了这本书的很大一部分。每一章节的很多题目,都是证明某个引理之类的。

还有一本就是这本《C++ Primer》,这本久负盛名的 C++经典教程,经过八年的历练,这次有了一个史无前例的更新。除了令全球无数程序员从中受益,这本书更是基于全新的 C++11标准进行了全面而彻底的内容更新。非常难能可贵的是,《C++ Primer 中文版(第5版)》所有示例均全部采用 C++11 标准改写,这在经典升级版中极其罕见——充分体现了 C++ 语言的重大樱做进展及其全面实践。书中丰富的教学辅助内容、醒目的知识点提示,以及精心组织的编程示范,让这本书在仿祥 C++ 领域的权威地位更加不可动摇。

这两本书无论是初学者入门,或是中、高级程序员提升,本书均为不容置疑的首选。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/yw/12445039.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存