作为计算机专业学生,最应该学习的课程前五位是什么?

26 个答案

张小兵 ,NUDTer,计算机+军事=?

75 票,来自 徐东, hongjinan, Lance Chen 更多 , 冯 子力, 向阳, 乔恒博, 彭勇, 陈微风, 骆驰, JeOam, 欧阳睿容, Leone, 岳国庆, 梁丽, 陈冰, 赖天涤, 罗泽响, 李秉帅, 伟伟, 朱晨鸣, 郭超, 陈欣欣, 程亦超, 张钦尧, 赵萌婕, 周亚兵, 张新望, 黄振华, frank, Marvin, 王优, 张秋雁, 廖伟志, 孙博轩, 超柏何, 陈然, 林立伟, hitsmaxft, 肖雄, 王泽龙, 冬皓Geekenese, Jeson Chen, 老饕, zengo, 冀培亮, sqybi, ACShiryu, 徐奇昊, 冯东, 万虎, 邓亚峰, 张嘉明, cwyalpha, 曾薇薇, 王召京, greenmoon55, 朱劭俊, Clude, 王亮, 石明, 彭国兴, Sosi, 杨扬, 醉清风, 尹晓宇, 陈超, 李卿, 桂莅, 厉成LCmoon, 陈大云, 蒙畅, 陈文鑫, 赵雯倩, 顾尘, jexchan
计算机专业概念有点大。我本人毕业于国防科技大学计算机科学与技术专业,个人觉得就计算机科学与技术专业而言,以下这些是必修的:

1、计算机组成原理(包括先修课程“数字逻辑与数字系统”,简称“数电”):这是一门硬件基础课,学完后你能清楚的知道如何从用最简单的数字元件,像搭积木一样构成整个计算机系统,那就算及格了。

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

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

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

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

以上这些不难做到,我觉得是基础中的基础,我偏激的以为,不能掌握他们就不应该获得学位。
知乎是一个真实网络问答社区,在这里可以寻找答案、分享知识,发现一个更大的世界。
想阅读更多有趣的问题和答案,赶快填写下面的表格申请注册吧!
请使用常用邮箱,注册后不能修改
请填写真实姓名,这会加快邀请确认速度
介绍一下你自己,比如你的职业、公司、或专业特长、兴趣爱好等

已有帐号了?请登录

忘记密码?
知乎博客 知乎协议 © 2011 知乎