豆瓣评分8.4以上的经典计算机书单分享

摘要:
读者可以清楚地理解,学习计算机系统的内部工作原理将进一步帮助他们将来从事计算机科学研究人员和工程师的工作。它还有助于为进一步研究计算机体系结构、操作系统、编译器和网络连接做准备。程序优化、内存层次结构、链接、异常控制流、虚拟内存和内存管理、系统级I/O、网络编程和并发编程。本书介绍了这些方面如何影响应用程序和系统程序员。


豆瓣评分8.4以上的经典计算机书单分享第1张

01 算法导论

豆瓣评分8.4以上的经典计算机书单分享第2张

《算法导论》自第一版出版以来,已经成为世界范围内广泛使用的大学教材和专业人员的标准参考手册。

这本书全面论述了算法的内容,从一定深度上涵盖了算法的诸多方面,同时其讲授和分析方法又兼顾了各个层次读者的接受能力。各章内容自成体系,可作为独立单元学习。所有算法都用英文和伪码描述,使具备初步编程经验的人也可读懂。全书讲解通俗易懂,且不失深度和数学上的严谨性。第二版增加了新的章节,如算法作用、概率分析与随机算法、线性编程等,几乎对第一版的各个部分都作了大量修订。

  02 深入理解计算机系统

豆瓣评分8.4以上的经典计算机书单分享第3张

从程序员的视角,看计算机系统!

本书适用于那些想要写出更快、更可靠程序的程序员。通过掌握程序是如何映射到系统上,以及程序是如何执行的,读者能够更好的理解程序的行为为什么是这样的,以及效率低下是如何造成的。粗略来看,计算机系统包括处理器和存储器硬件、编译器、操作系统和网络互连环境。而通过程序员的视角,读者可以清晰地明白学习计算机系统的内部工作原理会对他们今后作为计算机科学研究者和工程师的工作有进一步的帮助。它还有助于为进一步学习计算机体系结构、操作系统、编译器和网络互连做好准备。

本书的主要论题包括:数据表示、C程序的机器级表示、处理器结构,程序优化、存储器层次结构、链接、异常控制流、虚拟存储器和存储器管理、系统级I/O、网络编程和并发编程。书中所覆盖的内容主要是这些方面是如何影响应用和系统程序员的。例如,在讲述数据表示时,本书说明了用来表示数字的表示方法是有限的,它能够近似地表示整数和实数,但是这种表示方法是有限制的,程序员必须了解。在讲述高速缓存时,本书讨论了矩阵代码中的循环变量的顺序是如何影响程序的性能的。在讨论网络互连时,本书描述了并发服务器如何能有效地处理来自多个客户端的请求。

03 操作系统概念

豆瓣评分8.4以上的经典计算机书单分享第4张

《操作系统概念》内容简介:非常小型的操作系统,如篇首的小恐龙所使用的驱动手持设备的操作系统,是Silberschatz、Galvin和Gagne第七版《操作系统概念》中的一种前沿应用。通过保留最新的,保持有意义的,并改编为课程最需要的内容,这本引导市场潮流的教材继续指导着操作系统课程。第七版不仅提供最新且最有意义的系统,同时还从更深层次揭示了那些在当今操作系统发展过程中仍保持不变的基本概念。通过拥有这种坚实的概念基础,学生们能更容易理解与特定系统相关的细节问题。

04 TCP/IP详解 卷1:协议

豆瓣评分8.4以上的经典计算机书单分享第5张

《TCP/IP详解卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者W.Richard Stevens用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。《TCP/IP详解卷1:协议》适合作为计算机专业学生学习网络的教材和教师参考书。也适用于研究网络的技术人员。

05 TCP/IP详解 卷2:实现

豆瓣评分8.4以上的经典计算机书单分享第6张

《TCP/IP详解·卷2:实现》完整而详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。《TCP/IP详解·卷2:实现》不仅说明了插口API和协议族的关系以及主机实现与路由器实现的差别。还介绍了4.4BSD-Lite版的新的特点。《TCP/IP详解·卷2:实现》适用于希望理解TCP/IP协议如何实现的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。

06 TCP/IP详解 卷3:TCP事务协议、HTTP、NNTP和UNIX域协议

豆瓣评分8.4以上的经典计算机书单分享第7张

《CP.IP详解(卷3):CP事务协议.HP.P和UIX域协议》是“TCP/IP详解系列”的延续。主要内容包括:TCP事务协议,即T/TCP,这是对TCP的扩展,使客户-服务器事务更快、更高效和更可靠;TCP/IP应用,主要是HTTP和NNTP;UNIX域协议,这些协议提供了进程之间通信的一种手段。当客户与服务器进程在同一台主机上时,UNIX域协议通常要比TCP/IP快一倍。《CP.IP详解(卷3):CP事务协议.HP.P和UIX域协议》同样采用了大量的实例和实现细节,并参考引用了卷2中的大量源程序。适用于希望理解TCP/IP如何工作的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。

07 Linux内核设计与实现

豆瓣评分8.4以上的经典计算机书单分享第8张

《Linux内核设计与实现(原书第3版)》详细描述了Linux内核的设计与实现。内核代码的编写者、开发者以及程序开发人员都可以通过阅读本书受益,他们可以更好理解操作系统原理,并将其应用在自己的编码中以提高效率和生产率。

《Linux内核设计与实现(原书第3版)》详细描述了Linux内核的主要子系统和特点,包括Linux内核的设计、实现和接口。从理论到实践涵盖了Linux内核的方方面面,可以满足读者的各种兴趣和需求。

作者Robert Love是一位Linux内核核心开发人员,他分享了在开发Linux 2.6内核过程中颇具价值的知识和经验。本书的主题包括进程管理、进程调度、时间管理和定时器、系统调用接口、内存寻址、内存管理和页缓存、VFS、内核同步、移植性相关的问题以及调试技术。同时本书也涵盖了Linux 2.6内核中颇具特色的内容,包括CFS调度程序、抢占式内核、块I/O层以及I/O调度程序。

08 代码整洁之道

软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。

本书提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践。这些实践在本书中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

本书阅读对象为一切有志于改善代码质量的程序员及技术经理。书中介绍的规则均来自作者多年的实践经验,涵盖从命名到重构的多个编程方面,虽为一“家”之言,然诚有可资借鉴的价值。

09 编程之美

豆瓣评分8.4以上的经典计算机书单分享第9张

这本书收集了约60道算法和程序设计题目,这些题目大部分在近年的笔试、面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。本书的内容分为下面几个部分:

(1)游戏之乐:从游戏和其他有趣问题出发,化繁为简,分析总结。

(2)数字之魅:编程的过程实际上就是和数字及字符打交道的过程。这一部分收集了一些好玩的对数字进行处理的题目。

(3)结构之法:汇集了常见的对字符串、链表、队列,以及树等进行操作的题目。

(4)数学之趣:列举了一些不需要写具体程序的数学问题,锻炼读者的抽象思维能力。

书中绝大部分题目都提供了详细的解说。每道题目后面还有一至两道扩展问题,供读者进一步钻研。

书中还讲述了面试的各种小故事,告诉读者微软需要什么样的技术人才,重视什么样的能力,如何甄别人才。回答读者关于IT业面试,招聘,职业发展的疑问。这本书的很多题目会出现在IT 行业的各种笔试、面试中,但这本书更深层的意义在于引导读者思考,和读者共享思考之乐,编程之美。



10  编程之道

豆瓣评分8.4以上的经典计算机书单分享第10张

本书出自美国一位善于进行哲学思考、有十多年工作经验的程序设计师——杰弗雷·詹姆斯之手,他以一种敏锐的眼光审视着发生在程序设计室里的各种各样的小故事,并利用古老的道家思想对其进行分析。简单的故事蕴含深奥的道理,是本书的最大特色。本书语言优美,比喻生动,可读性极强。

豆瓣评分8.4以上的经典计算机书单分享第11张

关注公众号:不止于编程,首页回复:经典书单,即可获取上述 10 本书单下载地址。

电子书资源仅供交流学习使用

版权归原作者和出版社所有

如果您喜欢本书,请支持订阅购买正版

豆瓣评分8.4以上的经典计算机书单分享第12张

免责声明:文章转载自《豆瓣评分8.4以上的经典计算机书单分享》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇解决服务器复制中SID冲突问题PDA简单打包下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

如何测试本地是否能够正常访问云服务器的 Web 端口

在windows环境下打开DOS命令行 使用telnet命令。例如 telnet www.baidu.com 80 插播一条小知识:DOS下清屏的命令是cls。 首先很不幸,出现了【'telnet' 不是内部或外部命令,也不是可运行的程序 或批处理文件。】这个错误。 这是因为Win7默认没有安装telnet功能,所以你直接用telnet命令是用不了的。你...

LatinIME输入法分析

输入法的设置在res/xml/method.xml的<input-method>标签中,主要设置两个属性: android:settingsActivity,输入法的设置程序入口。 android:isDefault,这个输入法是不是系统的默认输入法。 另外,假设输入法的apk直接push到/system/app/以下的话,算...

Android平台Airplay的实现方法

Airplay属于局域网内异构设备之间分享多媒体数据的一种通信协议。Airplay设备有客户端和服务器之分,一般将小屏IOS设备实现为Airplay客户端,大屏幕设备实现为Airplay服务器。即iPhone, iPad, iPod一般为Airplay客户端,iTV, Macbook设计为Airplay服务器,在小屏和大屏之间分享视频、照片和音乐。Airp...

解决VMwareworkstation无法在windows上运行

步骤 1.在我的电脑上搜索控制面板   2.打开控制面板 3.点击程序 4.点程序和功能 5.点击已安装更新 6.找到最上面的一次微软更新,然后将最新的微软更新更新卸载。 7.重启后就能用了 说白了,就是最后一句话! 图示: 但是,这只能解决一时的问题,电脑终究要更新的,还有一种方法直接到官方下载新版本,里面的东西不会变的...

50个最受网友欢迎的HTML5资源下载列表

完整附件下载地址:http://down.51cto.com/data/413867附件预览: HTML 5游戏源码精选(共含9个游戏源码) http://down.51cto.com/zt/227 15个HTML5入门经典资料合集 http://down.51cto.com/zt/553 HTML 5基础入门学习教程 http://down.51cto...

c#基础之异常处理

  在开发过程中,经常遇到各种各样的小问题,很多是由于基础不牢固,没有经常总结导致的。遇到重复的问题可能可根据以往经验处理,但是对问题本身引发的原因进行深入的了解。工作很多年,但是c#基础像一层冰一样,可能还停留在应届生的阶段。   这里写一些总结帖子,但不会持续写,有时间或者遇到问题时再写,时间比较紧,很多是摘抄网络上的。   目录(仅记录下):   c...