我要投稿 投诉建议

申请贴士:美名校计算机科学本科现状

时间:2021-02-27 09:05:49 申请指南 我要投稿

申请贴士:美名校计算机科学本科现状

自20世纪40年代世界第一台现代计算机在美国诞生以来,美国一直执全球计算机学界之牛耳,这同时也是美国计算机产业界占据绝对优势的重要原因之一。我们成批量地引进的国外众多优秀教材绝大多数也都来自美国。计算机学科仍然在高速发展,与此对应的计算机人才培养模式也在不断变化,密切关注和跟踪国外尤其是美国名校的教学新动态乃至培养思路和教育思想,应该是非常有意义的。

本文即选择了美国计算机学科最负盛名的五所高校,对目前各校计算机科学(Computer Science)专业的本科教学体系进行了一些分析。
【您现在阅读的文章来自“中国人才指南网”,请记住我们的永久域名:www.cnrencai.com

斯坦福大学

斯坦福大学拥有独立的计算机科学系。浏览该校的教学手册,最具特色的恐怕要算多门科普性计算机知识讲座了,一般有两到三个单元,涉及面非常之广,从量子计算到数字演员,从计算科学的伟大思想到网络安全,从网上拍卖到使用元编译发现大型开放源代码软件中的大量错误,其中还不乏对技术乌托邦、斯诺“两种文化”、计算机面临的困境以及迅速发展所带来的诸多问题的思考。开课的老师阵容强大,基本上都是响当当的名教授,甚至包括图灵奖得主John McCarthy。用这种讲座代替计算机科学导论性质的专门课程,可以充分展示计算机科学的丰富内涵,使学生较早地了解学科的轮廓和脉络,对于开阔学生视野,启发学生的学习兴趣也大有好处。由于美国大学中专业的选择非常灵活,而近年来计算机学科招生受行业影响流失严重(这种情况甚至惊动了比尔·盖茨,2004年微软到各大高校招兵买马时,他每站必到,利用自己的明星效应,大讲计算机学科的美妙前景),可以想象,这种讲座同样也肩负着吸引学生选择计算机专业的重大使命。

斯坦福大学典型的低年级课程设置如表1所示。

表1 斯坦福大学低年级主要课程设置

数学(至少23个单元)

数学 41(课程号,下同) 微积分 I 5

数学 42 微积分 II 5

统计 116 概率论 3~5

计算机 103 离散结构 4或6

以下任选两门:

数学 51 微积分 5

数学 103/113 线性代数 3

数学 109 应用群论 3

计算机 157 逻辑和自动推理 4

计算机 205 机器人、视觉和图形学数学方法 3

科学(至少11个单元)

物理 53 力学 4

物理 55 电磁学 4

其他

工程基础(至少13个单元)

计算机 106 程序设计抽象/方法学 5

工程 40 电子学基础 5

选修课

技术与社会(3~5个单元)

进一步的课程设置如表2所示。

表2 斯坦福大学高年级主要课程设置

程序设计(2门课)

计算机 107(课程号,下同) 程序设计范型 5

计算机 108 面向对象系统设计 4

理论(2门课)

计算机 154 自动机与复杂性理论 4

计算机 161 算法的设计与分析 4

系统(3门课)

电子电气 108B或282 数字系统或计算机体系结构 4

计算机 编译原理 3

计算机 计算机网络 3

计算机 操作系统 3

应用(选2门课)

计算机 人工智能 3~4

计算机 数据库 3

计算机 图形学 3

项目(1门课)

计算机 至少3个单元

限选课(多门)

加州大学伯克利分校

伯克利的课程设置也有很多独树一帜的地方,尤其是在专业基础课方面,除了有专业导引课程“计算机科学专题”之外,对于没有编程经验的学生,第一门编程课是符号编程入门,采用LISP语言。有一定编程经验或者有自学能力的学生,可以选择多种语言和环境的自主学习(Self-paced)课程,包括C、Fortran、C++、Java,以及UNIX的使用等,这种多元化与伯克利计算机科学与电子电气工程同系有关。但是所有学生在第二学期都要学习一组独特的基础课:61A“计算机程序的结构与解释”,采用MIT Abelson等编著的同名教材(中译本机械工业出版社出版,清华大学出版社出版了影印版);61B“数据结构”(教材采用自编讲义);61C“计算机结构”(Machine Structures),采用Hennessy的《计算机组织与设计》(中译本清华大学出版社出版,机械工业出版社出版了影印版)。这项规定就是转校生也不例外,可见其中蕴涵了伯克利多年的教学经验结晶。

伯克利其他比较有特点的课程还有:将离散数学和概率论结合讲授的CS70,主讲是名教授Christos Papadimitriou;CS98-1 编程练习课,以主要大学生编程竞赛中的赛题为授课素材;CS 169 软件工程直接用Kent Beck的《极限编程》(人民邮电出版社出版了中译本)作为教材,非常超前,但是既然连Pressman的《软件工程:实践者方法》新版中敏捷方法都已经成为重头戏,既然IEEE都已经开始制定敏捷方法相关标准,这种课程选材也就不显得那么骇世惊俗了。除了软件工程课程常见内容外,教学侧重实际,贯穿了极限编程的思想,涵盖UML、JUnit单元测试、软件架构、设计模式和反模式、重构、CVS版本控制、系统和集成测试,最后要求完成一个实际产品,并进行演示。

UIUC(伊利诺依大学厄班纳-香槟分校)

UIUC的`计算机科学专业创建于1972年,到1986年基本定型,十多年来几乎没有什么变化。其教学体系如图1所示。

其中,数值分析方向课程中,Math225为矩阵论,CS257为数值方法,CS35x代表数值分析导论、常微分数值方法、偏微分与数值逼近和数值线性代数;

理论方向课程中,CS173为离散结构,CS273为计算理论,CS37x包括算法、形式方法、程序验证;

人工智能方向课程中,CS348为人工智能导论,CS34x包括机器人、机器学习与模式识别;

软件方向,CS125为计算机科学导论,CS225为数据结构与软件工程原理,CS31x包括数据库、图形学、多媒体,CS32x包括软件工程、操作系统设计、分布式系统、编程语言与编译器、并行计算、实时系统、编译器构造、编程语言设计;

硬件方向课程中,CS231为计算机体系结构I,CS232为计算机体系结构II,CS33x包括计算机组成、VLSI系统与逻辑设计、VLSI系统设计、通信网络、嵌入式体系架构与软件。

可以看到,处在图1中最下面的课程基本上都是在多门中选择一至三门,整个体系脉络清晰,具有很高的灵活性。与斯坦福不同的是,UIUC的计算机科学导论课程比较简单,只有一门为新生开的计算机科学导向课(CS100),而且并非必修。名为“计算机科学导论”的CS125实际上是以Java语言为主的编程入门课,涵盖了一些算法的内容。此外还有与之配套的实验课。当然,系里所开的许多面向高年级和研究生层次的讲座是对低年级开放的。

http://www.cnrencai.com/

【申请贴士:美名校计算机科学本科现状】相关文章:

英国留学奖学金申请贴士11-01

美国留学名校本科留学申请要求07-27

【推荐】本科学生毕业实习目的01-06

计算机科学与技术专业本科毕业论文写作方法02-11

本科计算机个人简历12-03

本科学生自我评价的参考范文03-12

本科学生毕业论文的提纲12-27

自考本科学历可以考研吗06-22

本科学位毕业论文格式要求05-16

本科学生毕业论文答辩指南11-30