65

计算机领域必读的经典书籍清单

 4 years ago
source link: https://www.tuicool.com/articles/vAjquqV
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

点击上方 蓝字 关注我们

下面开始今天的学习~

6jEFzev.png!web

由于计算机科学是一个庞大的学科体系,在学习的过程中要对这个体系的知识都有一定的了解,下面按照分类和体系进行说明,以及推荐一些书籍清单。

数学,算法和数据结构作为计算机科学的底层学科对于深入了解计算机运作模 式等是必不可少的,这里推荐:

iuaY7ny.jpg!web

豆瓣评分: 9.5

深入理解计算机系统(CSAPP)

从名称上来看 这本书 讲的是对系统的深入挖掘,然而本书非常适合作为一个入门读物,在了解计算机前开始阅读,可以对计算机相关概念有一个简要的了解。

bEJRnqz.jpg!web

豆瓣评分: 9.5

计算机程序的构造和解释(SICP)

这本书讲的是从数据抽象、过程抽象、迭代、高阶函数等编程和控制系统复杂性的思想,到数据结构和算法,到编译器/解释器、编程语言设计。

baqmMrm.jpg!web

豆瓣评分: 9.3

算法导论

MIT 的经典算法教材,虽然可能其中的伪代码表示法不适合所有的人轻松阅读,但是对于算法描述的地位依然非常靠前。

RnAF3ij.jpg!web

豆瓣评分: 9.6

具体数学

本书介绍了计算机的数学基础,内容涉及求和、取整函数、数论、二项式系数、特殊数、母函数(发生函数)、离散概率、渐近等,面向从事计算机科学、计算数学、计算技术诸方面工作的人员,以及高等院校相关专业的师生。

这三本书分别由人民邮电出版社,和机械工业出版社引进(也是所谓黑皮系列书籍),建议的阅读顺序是 CSAPP -> SICP -> 算法导论 -> 具体数学 ,难度依次增加,全篇哪怕只是当作看维基百科,一般看完之后也能对目前正在运作的计算机有一个更好的理解。

编程语言

C++ 作为一个编程语言的主力军,目前依然建议大家学习。除了大家都推荐的 C++ Primer 以外,由于 C++ 的版本一直在迭代,所以这里推荐一些没有那么主流的书,如下:

73UrUn3.jpg!web

豆瓣评分: 8.2

C++ 编程规范

两位知名的 C++ 专家将全球 C++ 界 20 年的集体智慧和经验凝结成一套编程规范。这些规范可以作为每一个开发团队制定实际开发规范的基础,更是每一位C++程序员应该遵循的行事准则。书中对每一条规范都给出了精确的描述,并辅以实例说明。

AJ7vIjb.jpg!web

豆瓣评分: 7.5

《  超越 C++ 标准库

Boost 库是除了标准库之外,很实用的一个库,这本书作为 Boost 的入门书已经超越了导读功能。

uMvaEzY.jpg!web

豆瓣评分: 9.6

Effective Modern C++

C++11 虽然填上了一些 C++98 的坑,但又引入了不少新坑。很多新特性并不像它们表面上看起来那样简单。不过 Meyers 确实功力深厚,每个特性的前因后果都讲得一清二楚,给出的使用建议也很贴合实际。

Python 相关,这里需要注意的是,现在的主流标准已经是 Python 3,应该尽量避免看 Python 2 的书:

EBjaaam.jpg!web

豆瓣评分: 8.6

Python Cookbook

这是一本入门书,《Python Cookbook(第3版)中文版》介绍了 Python 应用在各个领域中的一些使用技巧和方法,其主题涵盖了数据结构和算法,字符串和文本,数字、日期和时间,迭代器和生成器,文件和 I/O,数据编码与处理,函数,类与对象,元编程,模块和包,网络和 Web 编程,并发,实用脚本和系统管理,测试、调试以及异常,C 语言扩展等。

编程范式

除了对于常见编程语言的掌握以及一些实际的项目经验外,对于编程范式的理解也可以使你的能力提升一个档次,这里推荐:

v2MjuiJ.jpg!web

豆瓣评分: 9.2

Head First 设计模式

这本书每章都介绍了几个设计模式,完整地涵盖了四人组版本全部 23 个设计模式。前言先介绍这本书的用法;第 1 章到第 11 章陆续介绍的设计模式为 Strategy、Observer、Decorator、AbstractFactory、Factory Method、Singleton,Command、Adapter、Facade、TemplateMethod、Iterator、Composite、State、Proxy.

Z7z6Fjf.jpg!web

豆瓣评分: 8.1

七周七语言——理解多种编程范型

书中介绍了 Ruby、Io、Prolog、Scala、Erlang、Clojure 和 Haskell 这七种语言,关注每一门语言的精髓和特性,重点解决如下问题:这门语言的类型模型是什么,编程范式是什么,如何与其交互,有哪些决策构造和核心数据结构,有哪些独特的核心特性。

工程向开发

不仅仅是软件工程,而是在面向工程的开发,即一个成熟的大型软件是如何组织,编写的,这里推荐:

BnYNfy2.jpg!web

瓣评分: 9.1

敏捷软件开发

这本书深入而生动地使用真实案例讲解了面向对象设计的基本原则、重要的设计模式、UML 和敏捷方法。

Q7RbAvQ.jpg!web

豆瓣评分: 9.1

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

这本书解释了重构的原理(principles)和最佳实践方式(best practices),并指出在何时何地你应该开始挖掘你的代码以求改善。

faqaMbQ.jpg!web

豆瓣评分: 9.3

代码大全

这本书并不是代码的「大全」,书的英文名《Code complete》的意思是完成代码,本书将教你如何一步步完成开发,避免遇到作者在实践中遇到的各种问题。

互动话题

看过以上书籍的小伙伴可以在评论区和大家一起讨论,或者推荐一些你觉得值得阅读的书籍~

U3uMbae.png!web

本文作者:Nova Kwok

编辑&版式:霍霍

声明:本文归 “力扣” 版权所有,如需转载请联系。

文中部分图片来源于网络,为非商业用途使用,如有侵权联系删除。

推荐阅读

Mvye2mu.png!web

i6JfMjn.jpg!web

u67bMnu.png!web

zm26viF.png!web

yYr6rqJ.png!web

vam2EvY.gif

MRfiqmn.jpg!web

zYzYRvy.png!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK