学习推荐书籍--程序员

前言

本文主要是写一些程序员通用的经典书籍,与具体编程语言无关,希望给初学者或者想深入的朋友一些建议,帮助成长。 

编程类

《代码大全》下载地址

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

《算法导论》下载地址

深入讨论各类算法,并着力使这些算法的设计和分析能为各个层次的读者接受。各章自成体系,可以作为独立的学习单元。算法以英语和伪代码的形式描述,具备初步程序设计经验的人就能看懂。说明和解释力求浅显易懂,不失深度和数学严谨性。可以作为参考书。 

《计算机程序设计艺术》卷1下载地址  卷2下载地址 卷3下载地址

也是讲算法的,这部书被誉为20世纪最重要的20部著作之一,与Einstein的<<相对论>>并列,是计算机科学领域的权威著作.全书共分 7卷,目前已经出版了3卷,被誉为"计算机程序设计理论的荷马史诗","可与牛顿的<<自然科学的数学原理>>媲美的巨著".作者数学方面的功底造就了本书严谨的风格,虽然本书不是用当今流行的程序设计语言描述的,但这丝毫不损伤它"程序设计史诗"的地位.道理很简单,它内涵的设计思想是永远不会过时的.The Art of Computer Programming 原计划要出七册,但目前只完成了三册. 

《深入理解计算机系统》下载地址

 主要介绍了计算机系统的基本概念,包括最底层的内存中的数据表示、流水线指令的构成、虚拟存储器、编译系统、动态加载库,以及用户应用等。书中提供了大量实际操作,可以帮助读者更好地理解程序执行的方式,改进程序的执行效率。此书以程序员的视角全面讲解了计算机系统,深入浅出地介绍了处理器、编译器、操作系统和网络环境,是这一领域的权威之作。 

《编译原理》下载地址

 全面、深入地探讨了编译器设计方面的重要主题,包括词法分析、语法分析、语法制导定义和语法制导翻译、运行时刻环境、目标代码生成、代码优化技术、并行性检测以及过程间分析技术,并在相关章节中给出大量的实例。

 

修养类

《卓有成效的程序员》下载地址

这是一本写给程序员的、关于如何提高生产效率的书,给我很大启发的一本书。 

《程序员修炼之道》下载地址

 由一系列独立的部分组成,涵盖的主题从个人责任、职业发展,到用于使代码保持灵活并且易于改编和复用的各种架构技术,利用许多富有娱乐性的奇闻轶事、具有思想性的例子及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。

 

软件开发方法论


《面向对象分析与设计》 下载地址
OO设计必读:讲述了面向对象的基本思想、主要概念以及相应的表示法,并给出了建模过程指导。本书注重理论与实践相结合,给出大量的例题和一个内容较为详尽的案例分析,详述了建模概念的运用以及进行面向对象建模的方法与技术。

《Unix编程艺术》下载地址
打开你的眼界:作者将UNIX三十年中未见纸端的艰难胜利的软件工程智慧融入文字,使UNIX家族成为最好最具创新软件的哲学、设计模式、工具、文化和传统,Raymond将之第一次带给我们,并向我们展示它们如何影响着当今的Linux和开源运动。通过大量来自顶尖项目的实例,你将学会如何运用这些智慧经验来建造更优雅、更可移植、更加好用和更加长久的软件。
 
《测试驱动开发》下载地址
你不一定要TDD,但是你一定要学会做单元测试。
 Kent Beck先生最早在其极限编程(XP)方法论中,向大家推荐“测试驱动”这一最佳实践,还专门撰写了《测试驱动开发》一书,详细说明如何实现。

 

软件开发过程

了解软件开发过程不单纯是提高程序员个人的良好编程习惯,也是增强团队协作的基础。 

《解析极限编程 拥抱变化》XP 下载地址
 
这是Kent Beck名著的第二版,中英文对照。没什么好说的,必读书籍。 该书适用于中小型团队在需求不明确或者迅速变化的情况下进行软件开发的轻量级方法学,介绍了XP背后的思想——它的根源、哲学、情节等。
 
 
《统一软件开发过程》UP 下载地址
 
其实UP和敏捷并不一定冲突,UP也非常强调迭代,测试,但是UP强调的文档和过程驱动却是敏捷所不取的。不管怎么说,UP值得你去读,毕竟在中国真正接受敏捷的企业很少,你还是需要用UP来武装一下自己的,哪怕是披着UP的XP。 
 
 
《敏捷建模》AM 下载地址
 
Scott Ambler的名著,这本书非常的progmatic,告诉你怎么既敏捷又UP,把敏捷和UP统一起来了,又提出了很多progmatic的建议和做法。你可以把《解析极限编程 拥抱变化》、《统一软件开发过程》和《敏捷建模》这三本书放在一起读,看XP和UP的不同点,再看AM是怎么统一XP和UP的,把这三种理论融为一炉,形成自己的理论体系,那么你也可以去写书了。 
 
 
《敏捷软件开发》下载地址
由享誉全球的软件开发专家和软件工程大师Robert C.Martin将向您展示如何解决软件开发人员、项目经理及软件项目领导们所面临的最棘手的问题。这本综合性、实用性的敏捷开发和极限编程方面的指南。
 
《快速软件开发》 下载地址
 
这也是一本名著。可以这样说,有本书在手,你就有了一个项目管理的高级参谋给你出谋划策,再也不必担心自己不能胜任的问题了。这本书不是讲管理的理论的,在实际的项目管理中,讲这些理论是不解决问题的,这本书有点类似于“软件项目点子大全”之类的东西,列举了种种软件项目当中面临的各种问题,以及应该如何解决问题的点子,你只需要稍加变通,找方抓药就行了。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值