我想在材料中涵盖相当于典型的CS本科课程,所以我正在制作一系列书籍来涵盖典型的主题。我将列表分成了一些主题,从我做过的研究中,我认为是强制性的和可选的。我想帮助确认主题是否正确分割,以及书籍是否正确。另外,如果我遗漏了任何重要的主题,或者是否超出了本科水平,请告诉我。
感谢您的时间!
关于暂停状态的编辑:我不相信这个问题是偏离主题的,因为我不是要求推荐书籍 - 我问的是我列出的主题是否表示典型的CS课程,如果缺少任何重要的主题。书籍链接仅在我选择的书籍不适合该主题的情况下,并且可以在必要时删除。
强制
操作系统:Operating System Concepts
网络:Computer Networking: A Top-Down Approach
离散数学:Concrete Mathematics
数据结构和算法:Introduction to Algorithms
计算机架构:Computer Systems: A Programmer's Perspective
自动机理论:Introduction to the Theory of Computation
编译器:通过龙书向我推荐Engineering a Compiler。
数据库理论:An Introduction to Database Systems
编程语言概念和设计:Programming Language Pragmatics
OPTIONAL
密码学:Cryptography Engineering: Design Principles and Practical Applications
功能编程:Learn You a Haskell for Great Good!
人工智能:Artificial Intelligence: A Modern Approach
计算机图形:Real-Time Rendering
答案 0 :(得分:0)
您的名单非常适合与计算机科学直接相关的科目。但是,数学很轻松。在我自己的B.Sc.在计算机科学中我也有大量的微积分,线性代数,代数(群,环等),统计,解析几何和数值分析。计算机科学的一些应用严重依赖于那些:
我从未使用过大量的代数,但我听说它对密码学非常重要。 : - )
对于开发更多常规应用程序的程序员来说,您的列表非常好,但对于那些对这些更专业领域感兴趣的人(这仍然非常重要),这些主题非常重要。