众所周知,国内每年计算机科班毕业的学生因为不会写代码找不到工作或者转行的大有人在。反观在国外,最好的计算机专业在斯坦福、CMU, MIT等院校,并且很多计算机行业的顶尖人才也大多集聚在北美硅谷。这里可能会有同学问了,国内外CS人才培养真的存在差距吗?篱笆老师从自己在清华学习和CMU学习的经历总结,的确是存在着不小的差距的,但也不是说没有办法通过自己的努力来弥补这种差距,下面篱笆老师就展开为大家分享一下。
第一点:教材质量落后
大多数国内高校计算机专业所用教材要么是自己学校编写的,要么是比较老旧过时的,内容逻辑比较混乱,导致学生读起来比较模糊困难,同时介绍的技术栈也已经早就被行业淘汰了;而海外院校在教材编写上真的是很厉害,很多是行业开山鼻祖的著作,也非常与时俱进,篱笆老师在这里就为同学们推荐几本实用性比较高的计算机书籍教材,记得保存收藏起来。
《数据库系统概念》被卡内基梅隆大学、北大、上海交大等学校采用,《算法导论》:影响全球千万程序员的“算法宝典”,被麻省理工学院、斯坦福大学、康奈尔大学、加州大学伯克利分校等采用,《深入理解计算机系统》被哈佛、CMU、清华、北大等400余所高校采用。另外还有《计算机网络:自顶向下方法》、《Java编程思想》、《编译原理》、《操作系统概念》
第二点:课堂质量差
课堂教案方面,国内的很多老师会使用多年不变的PPT,并且PPT中基本理论型概念知识偏多。教学中也经常出现老师对着PPT照本宣科地讲。而国外很多大学在CS讲授中,老师会花更多精力在教案准备上,知识点更清晰完善,也经常看到和行业比较有联系的案例分享。
课堂互动方面,国内课堂少有同学主动问问题,偶尔有基础比较好的同学回答老师提问。但在国外,无论基础好的和不好的都会提问,有的十分简单,有的就问得比较深。国内的课堂上大部分时间都是老师一个人在说话,而国外课堂,老师会引导学生进行积极的探讨,让学生逐步拥有自己发现问题解决问题的能力。课堂中的学习氛围对于课程的学习也是相当重要的,只有自身参与其中才能更好地了解学习这门知识。
第三点:课后安排不协调
课后辅导严重不足,国外的顶尖大学老师每周要抽出三个小时作为 office hour,中国的大部分教授老师下课了就基本没办法面对面来问问题,也没有配备相应的助教老师进行答疑解惑。同学下课后也没有完全的自律性去课后操作上机。拿TUFTS(塔夫茨大学)举例,波士顿计算机专业的必修死亡课程 —— machine structure(机器结构),其课号为 COMP40,有人称其课号含义是「每周花掉你40小时」,经实践根本不止40个小时 —— 平均两周 due 一个大 project,基本上学生一下课就想着跑去计算机楼敲代码,基本不需要老师强求。
第四点:平时作业不重视,考核机制不完善
国内很多学校的作业题相对国外同年级来说简单许多,课后作业严重和计算机的实践性脱节;还有些学校基本没有太多课后作业,全靠同学们自觉下课进行练习。但是对于计算机专业来说最重要的是什么?是写代码啊!老师讲的再好,都不如给出一部分时间让学生亲身体会。上机时间严重不足,其实大学四年最好编程量达到几万甚至十万,这样对就业做研究都有保障。
反观国外的大学,比如cmu使用autolab系统自动打分,学生上传完代码就可以查看最终分数,然后调整代码修改bug。并且国外查重非常严格,会用斯坦福 moss、sim 等代码查重工具,更改变量名、代码顺序、垃圾代码、注释、简单替换逻辑等等这些均会被MOSS表示为相似代码。并且在有些学校抄袭是非常严重的事情,严重者是会被开除的。
第五点:使用工具落后 ,与社会脱节
学校都讲的大多是概念,很多实际工作中会用到的工具也没有教。例如:github,写java的IntelliJ,虚拟机,vim等基本都是通过同学自学。美国计算机教学能很好的贴近当前的科学界,工业界,让学生能看到学的东西的实际应用价值以及未来的一些潜在发展方向,这对于培养兴趣来说无疑是至关重要的。
当然,不可否认的是,国内一些顶尖高校比如清华、浙江大学、上海交通大学等等开始重视国内与国外的差距点,并进行着不断得学习与改进,他们的计算机专业也在慢慢追赶欧美国家的大学,对于国内计算机来说这是一个好的现象。
希望以上分享对你有帮助!
最新评论 1
:还有一点,hand on experiences.