![]() |
1
13
我看到最大的两个疏漏: 对于操作系统,我更喜欢Tanenbaum而不是Silberschatz,但两者都很好: 至于顺序,那要看你的兴趣了。先决条件不多,编译器的自动机是最明显的先决条件。先读自动机的书,然后读龙的书。 我不知道你有多少本书,但我知道的那些书足够好,这可能意味着其他的书也不错。 你少了一些 logic 和 discrete math 书也是。 别忘了一些 database theory |
![]() |
2
12
我发现最好的方法就是选择你最喜欢的大学,访问他们的网站,查看学位课程。许多大的学校每门课程都有必读读物。麻省理工学院的开放课程软件就是一个很好的例子。
|
![]() |
4
6
麻省理工学院几年前推出了他们的“开放课件”项目。他们把书/家庭作业/讲座放到网上,这样你就可以跟着麻省理工学院的课程走了: |
![]() |
5
4
这本书真的很好 或者只是 现场最好的 例如,在 编译器 Programming Language Pragmatics 这本书虽然有点杂乱无章,但读起来很可爱(我从来没有教过它,所以我说不出学生是怎么想的。)我不知道有一本关于autodidact编译器构造的好书,尽管你可能会看看Cooper和Torczon的 Engineering a Compiler |
![]() |
6
3
对不起,你不能用读一本书或几本书来代替四年的大学生活,不管这些书有多好。如果可以,为什么会有人上大学? |
![]() |
7
3
首先,我不担心。但是如果你想要一本书来学习一些抽象的CS思想,我推荐你 The Turing Omnibus 或 Theoretical Introduction to Programming 如果我决定雇佣两个程序员,两个都没有太多经验,但一个有CS学位,另一个没有,我会雇佣那个有CS学位的。但是当你比较两个有着十几年经验的程序员时,学位并不重要。 |
![]() |
8
3
一些可能被认为更“可选”的主题可能是:
|
![]() |
9
3
The Elements of Computing Systems 这本书带你从硬件设计的基础一直到用面向对象语言编写程序。使用模拟器,你可以建立一个完整的计算机。然后编写一个汇编程序、一个操作系统、一个编译器(用于编译为在虚拟机上运行的面向对象语言),然后用该语言编写一个游戏。
您可以查看一些示例章节,也可以使用模拟器 here . 强烈推荐! (即使是CS毕业生) |
![]() |
10
2
我想你可以把其他大部分的书拿来参考,好好吸收 Programming Pearls 全部。这样做会让你比我见过的90%的程序员都优秀。 |
![]() |
11
2
阅读这些主题的书籍并不意味着你了解它们。在数学上做数学,在代码上编码,等等,这些都能帮助你理解,并显示出你最终了解了这门学科。 |
![]() |
12
1
我不知道在美国是怎么回事,但在我的国家,我们学习离散数学和图论入门,然后才学习形式语言和自动机。 |
![]() |
13
1
在做任何事情之前,先读一读 Computer Science: a Modern Introduction . 这将给你一个很好的基础,并概述有追求的主题。 Introduction to Algorithms 非常好。对于函数式编程的介绍,我建议您 ML for the working programmer . 区分计算机科学家和程序员的领域:离散数学基础,VLSI和系统架构的基本理解,密码学和安全基础的理解,可计算性理论的理解,信息理论的理解。 |
![]() |
14
1
|
![]() |
15
1
这张单子不错。这两个主题我肯定会加入到混合是离散数学和网络。您可能感兴趣的其他主题包括编译器、计算机图形学、分布式操作系统。人工智能还有一些很酷的子领域,比如计算机视觉和机器学习。为了处理所有这些,你肯定需要线性代数和概率。 不言而喻,光靠读书是不可能真正掌握计算机科学的。要真正理解每一个主题,你必须在其中做项目。我还建议看一下麻省理工学院的开放式课件,教授们在那里发布教学大纲、课堂讲稿和作业。 |
![]() |
16
1
您还应该有一本关于通用数据库的书,而不必深入了解Oracle、MySQL、sqlserver等的细节。 |
![]() |
17
1
Concepts, Techniques and Models of Computer Programming 似乎有我见过的各种高级语言编程风格和技术的最广泛的概述。 |
![]() |
18
0
网页设计知识在就业方面也非常有用。 我不明白你为什么要自己动手。即使是一所“充其量也很平庸”的大学,也能教给你比你自己好得多的技能。这一切都是为了会见那些在计算机行业有实际工作经验的人。 决定你成绩的不是大学而是你付出的努力。 我的回答也许对你没有帮助,因为我不知道你从哪里来。在我居住的苏格兰,我可以免费上大学,但对你来说可能不是这样。 |
![]() |
19
0
File Structures: An object oriented approach with C++ 很多关于块设备和文件结构的好信息你在你列出的书中都找不到。因为人们不喜欢他的代码示例,它在Amazon上得到了一些评论,但这本书的重点是教授概念,而不是给出剪切粘贴的代码示例。 还要确保有一本关于编译器的书 |
![]() |
20
0
|
![]() |
21
0
“四人帮” Design Patterns book . 我在大学上的设计模式课程可能是我上过的最有益的课程。 |
![]() |
Okonjo Mitchel · CS50凯撒:分段故障问题 3 年前 |
![]() |
Baraa · 而我在java中得到无限的while循环 3 年前 |
![]() |
deficiencyOn · 用DP求解“背包” 7 年前 |
![]() |
Robbie · 使用嵌套的if-else语句理解Do-While循环 7 年前 |
![]() |
Andrei · 查找两个数组中的差异[重复] 7 年前 |
![]() |
Shkarik · 为什么我在Scala中的二进制搜索实现如此缓慢? 7 年前 |