开发者生态
morning
街头斗殴计算机科学家的书单
2026-11-15
1 阅读
约7分钟阅读
num42
字号:
Edsger Dijkstra 正在关注您 2025 年版。这与您将看到的大多数“程序员最佳书籍”列表非常不同,其中包括《代码完整》、《干净的代码》、《实用手淫者的渴望手淫》和《设计懒汉》等类似的书目。当你继续前进时,你就会明白这一切。这些书值得你读,这样你就可以用刀砍那些混蛋了。你需要阅读所有这些吗?我想,只有当你想了解里面的东西时。入门巷战 Stepanov、从数学到通用编程和编程要素 Gustedt、Modern C Hanson、C 接口和实现 Stroustrup、C++ 编程语言 Josuttis、C++ Move Semantics,因为需要 200 页解释的语言功能值得研究吗?不,因为这本书比任何有关该语言的文本都更好地证明了 Rust 的合理性。 Klabnik, Nichols, and Krycho, The Rust Programming Language need you write in C or C++?不一般。但它们是一种通用语言,在您将遇到的大多数硬件上实现,并作为所有重要操作系统的本机 API 表达。 rust 是一种非常好的书写和阅读语言,更不用说他妈的一直在谈论了,所以别再说了。 Brawling combat Dijkstra, A Discipline of Programming .计算机科学领域最美丽的一本书,一页又一页。 Knuth, The Art of Computer Programming , especially volumes 1 and 4B, third edition Warren, Hacker's Delight .确保您获得第二版 Stevens 和 Rago,UNIX 环境中的高级编程,至少获得第二版,最好是第三版 Stevens,UNIX 网络编程,第二版 Abelson + Sussman,计算机程序的结构和解释,CS 教科书的最佳封面,第二版 Varghese,网络算法 McKusick,FreeBSD 操作系统的设计和实现 Kerrisk,Linux 编程接口 Garcia + Widjaja,通信网络。兄弟,你还会 ARQ 吗? Kleinrock, Queueing Systems , especially volume 1. this is why they made you take prob/stats. Hennessy + Paterson, Computer Architecture: A Quantitative Approach .旧版本不会将材料锁定在网上,但……更旧。 Kennedy, Optimizing Compilers for Modern Architectures .如果您想实际实现编译器,请确保您获得了 Muchnik 的高级编译器设计和实现以及 CLRS、Samet 算法简介、McKenney 度量和多维数据结构、并行编程难吗?如果是,您能做什么?尽管书名很荒谬,但这本书非常出色,涵盖了在其他地方找不到的内容。如果给书命名对你来说这么难,你为什么不寻求帮助呢? Crochemere 等人,字符串算法。就像听起来一样,真正的力量 de frappe Culler 等人、并行计算机架构 Ward + Halstead、计算结构 Shriver + Smith、高性能微处理器 Vazirani 的剖析、近似算法 Raghaven + Motwani、随机算法 Garey 和 Johnson、计算机和难处理性。意识到你已经承诺解决一个 np 完全问题总是令人尴尬的。 Sipser, Introduction to the Theory of Computation .但不像意识到你已经承诺解决一个无法确定的问题那么尴尬。还有泵引理! Galub + Van Loan,矩阵计算。这几乎是一本纯粹的数学教科书,但漫游的多种族矩阵团伙构成了许多街头斗殴。对于高级街头霸王Ahora + Barak,计算复杂性Pierce,类型和编程语言Okasaki,纯函数数据结构Van Roy + Hardidi,计算机编程的概念、技术和模型Barendregt,Lambda 微积分。确实,在激烈的刀战中,λ 立方体很少有用。在戴着头巾、皮手套和弹簧刀度过一整天之后,即使是打架者最终也必须回家,回到家人身边,回到火场、食物和 F 系统身边。在紧要关头,其令人眼花缭乱的黄色外壳可以蒙蔽对手。 speaking of math, you might want to take a look at Axler's Linear Algebra Done Right and Knuth's Concrete Mathematics .你会想知道你的组合学、你的概率/统计数据和你的线性代数。通过 diffeqs 进行微积分是有必要了解的,但我是一个相当铁杆的书呆子,但我发现自己并不经常集成东西。现在去街上打架吧。我没有列出机器学习,因为我不喜欢机器学习。没有量子书籍,因为量子对于巷战还没有用处(我们都期待这种情况改变)。我没有列出任何 SIMT/加速器书籍,因为它们都是垃圾。我没有列出任何信息安全,因为信息安全是 QA 的一个子领域,跟我斗吧。没有链接,因为我是一个懒惰的人。我听说过有关 Tim Roughgarden 的算法书籍的好消息,并将它们放在我的书架上以便很快阅读,但还无法与它们交谈。我
这篇文章对您有帮助吗?
订阅66必读
每日精选科技资讯,直达你的邮箱