开发者社区> 问答> 正文

自学计算机专业要学习哪些课程?

我想自学大学的计算机课程需要买哪些教材

展开
收起
知与谁同 2018-07-21 15:50:09 1788 0
1 条回答
写回答
取消 提交回答
  • 1、计算机组成原理(包括先修课程“数字逻辑与数字系统”,简称“数电”):这是一门硬件基础课,学完后你能清楚的知道如何从用最简单的数字元件,像搭积木一样构成整个计算机系统,那就算及格了。 一门名为计算机体系结构是本课程的扩充包,对于了解近代计算机结构体系当然是必要的,但由于这里讨论的是Top 5,因此我认为计算机组成原理更为基础。

    Computer Systems - A Programer's Perspective (2rd Edition)。

    中文译本是《深入理解计算机系统》。

    2、线性代数,概率与统计和离散数学:要知道,凡是能称之为“科学”的专业,就必须有一定的数学功底,否则难以称作“科学”。这三门课我觉得是本科时期最重要的三门数学课,比高等数学重要。如果你想在计算机科学的道路上走远点,那这三门可是必修的。

    3、MIT开设的《Introduction To algorithm》,中文版叫《算法导论》:我觉得应该学习它而不是国内习惯开设的《数据结构》。数据结构仅仅是算法的一部分,国内的数据结构课程回避了很多本质的东西,仅仅是对一些常见的数据结构的罗列,学起来总有些不痛不痒的感觉。《Introduction To algorithm》虽然有些章节夹杂着很多很让人讨厌的“数学”,但却能从本质上带你领略这门十分必要而且有趣儿的课。

    4、操作系统与编译原理:操作系统可以说是《算法导论》的实验课,最好能在学习期间自己实现一个小型的操作系统,或者操作系统各分系统的Demo。编译原理可能是普遍本科生觉得难的一门课,但是作为CS本科生或者未来的软件科学家,这是基础中的基础,学完之后所有的语言在你看来应该没有太大的区别,这门课应该是离散数学+算法导论的实验课。最好能在学习期间自己实现一个小型的编译器,语言最好能自创,或者是某个已有的你喜欢的语言的基本子集。

    5、掌握一门常用的编程语言和编程技术:能了解你用过的所有的程序内部大致是怎样的,能用你熟悉的语言编写大部分的程序,至少不能是对任何一个程序满头雾水。

    2019-07-17 22:51:52
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
给ITer的技术实战进阶课-阿里CIO学院独家教材(四) 立即下载
程序员面试宝典 立即下载
阿里云总监课第二期——语音基础知识串讲 立即下载