跳转至

优秀书籍

阅读经典书籍是提升水平最快的方式,特别是在具备一定基础后,效率会大大超过看视频。不过,还是那句老话, 只看看书,不做题,你并没有真的看过这本书。

计算机导论

计算机程序的构造和解释

在这个主题里面没有一本书比 《Structure and Interpretation of Computer Programs》( SICP,计算机程序的构造和解释)更加合适了。

20221106163203

SICP 是一本很经典且神奇的书,但是我的承认对于有些人它不是特别好度,并不是它写的不好,而是它太长了,而且有些习题确实比较困难,容易让人产生挫败感。 而且 SICP 采用了 Scheme(一门 Lisp)方言最为教学语言,显得有些另类。但是,正如作者在书中解释的, 选择 Scheme 恰恰是经过了仔细的考虑,他们认为 Scheme 才能用最简单的形式,展示程序员设计的种种方面。

这里有一个关于 SICP 的学习资源:https://github.com/DeathKing/Learning-SICP

这本书相关的课程:CS61A

程序设计方法(中文版)

How to Design Programs, Second Edition

20221106164039

如果你觉得 SICP 实在是太困难了,可以考虑这本《程序设计方法》。

Concepts, Techniques, and Models of Computer Programming

如果你觉得 SICP 对于来说太简单了,可以考虑这本。

20221106164138

计算机组成原理

这部分通常是自底向上的学习计算机的过程。

深入理解计算机系统

Computer Systems: A Programmer's Perspective

我们喜爱《深入理解计算机系统》,因为它的实用性,并且站在程序员的视角。虽然计算机体系结构的内容比本书所涉及的内容多得多,但对于那些想了解计算机系统以求编写更快、更高效、更可靠的软件的人来说,这本书是很好的起点。 https://github.com/izackwu/TeachYourselfCS-CN/blob/master/TeachYourselfCS-CN.md

20221106164313

计算机系统要素

The Elements of Computer Systems: Building a Modern Computer from First Principles

这是一本项目为导向的书,通过这本书读者可以从逻辑电路开始构造计算机,逐渐向上,编译器、操作系统、计算机预言 等等,全部亲手操作一遍。

20221106164551

数据结构和算法

算法设计手册

为什么米有直接推荐红宝书和算法导论呢?因为这一本更容易读,且配套资源更加丰富。

20221106165122

如果你更喜欢视频课程,Skiena 慷慨地提供了他的课程

操作系统

操作系统有很多经典书籍,但是我推荐《操作系统导论》(Operating Systems: Three Easy Piece)。 为什么是这本书?

  • 免费
  • 讲述方法平易近人
  • 作业、项目都有配套,理论不脱离实际

20221108161623

编译原理

编译原理我推荐 Crafting Interpreter。 这本书也是免费开源的,而且实践性很强,适合跟着一起做。

20221108161919

数学书

泛泛这些年的经验,起码在我做程序员的这几年时间(量化对冲基金)对我最有用的数学并不是离散数学、计算理论、 和微积分,而是 线性代数概率论

Introduction to Linear Algebra

如果你没有学过线性代数,Strang 的这本书最适合不过了。这书非常详实。但是,学习数学本身就是一个 消耗时间的事情,而却需要动手亲自计算、推导,才会有所得。

20221108162620

Linear Algebra Done Right

如果你学过线性代数且学的还可以,那么这本书比较适合重拾一些遗忘的线代概念。

20221108162834


最后更新: May 26, 2023
创建日期: May 26, 2023

评论