中国考试网-考试信息资讯 收藏本页 设为首页 
您现在的位置: 主页 > 计算机 > 二级考试 > 文章
伯克利大学计算机系培养人才的方式
更新时间:2019-04-07 09:03   来源:未知 作者:中国考试网1 点击:
伯克利大学计算机系培养人才的方式







最近花了一点时间研究加利福尼亚大学伯克利分校(University of California, Berkeley,简称UCB)计算机专业的课程设置,感触颇深。

UCB在计算机科学领域的杰出表现可以在各大主流计算机专业排名中得以体现。

全美大学范围内,UCB在US News 2019计算机科学排名中与麻省理工大学(MIT)、斯坦福大学(Stanford)、卡内基梅隆大学(CMU)三所顶尖大学并列第一名。

UCB的计算机科学是一个人才辈出的专业,其著名毕业生包括:

• Eric Schmitt(Google前CEO)

• Steve Wozniak(Apple公司创始人)

• Bill Joy(Sun Microsystems创始人,BSD作者之一)

同时,UCB每年都会评选几个杰岀校友,有意思的是,Andrew Ng(吴恩达,华裔美国人,人工智能和机器学习领域国际上最权威的学者之一,2014年-2017年曾担任百度首席科学家)刚被评为2019年UCB杰出校友。

我找到了最近这几年的杰出校友的名单:
UCB计算机专业的杰出校友

从上述名单中可以看到,UCB的校友除了在高校任教外,很多都是一些科技公司的创始人和技术主管。

此外,UCB计算机科学专业的现任教授们也是大名鼎鼎,其中包括六位图灵奖得主。

那么,为什么UCB诞生了这么多牛人?

除了本身名气大、生源好以外,我认为,这与它的培养体系有不可或缺的关系。

我们先看看UCB计算机专业的一些特点。

一个学院,两个体系

出人意料的是,尽管UCB的计算机专业非常有名,但它竟然没有单独的计算机系。

在UCB,计算机系和电子工程系合在一起,叫电气工程与计算机科学系(Department of Electrical Engineering & Computer Sciences),简称:EECS。

UCB的电气工程与计算机科学系

为什么CS(Computer Science)会和EE(Electrical Engineering)在一起呢?

EECS主页上是这么解释的:

• 电气工程师和计算机科学家他们都是是同一群人,他们负责设计系统和模块,用来釆集、存储、处理、解释以及传递信息或者信号。

• 此外,在20世纪,世界上最重要的工程突破,都是由电气工程师或者计算机科学家发明或实施的,其中包括电力系统、全球广播和个人电信系统、计算机网络、医疗仪器、集成电路、激光、家用电器和反馈控制等。

• 此外,电子工程师和计算机科学家开发的新技术在21世纪可能更加重要,因为,更快的通信速率、更小的设备、更强大的计算能力使智能、信息驱动系统(intelligent, information-driven systems)的新时代成为可能。

EECS不仅在学院名称上体现了学科交叉的特点,在课程培养上也有体现。

一个学院,两种培养体系

从本科来看,EECS可以用“一个学院,两种培养体系(One Department, Two Programs)”来简单概括。

这两个培养体系的最终结果是两种证书:

• 一个是工程学院(the College of Engineering)授予的理学硕士(the Bachelor of Science in EECS),

• 另外一个是文理学院(the College of Letters&Science)授予的计算机科学文学学士(the Bachelor of Arts in CS)。

这两个不同的培养体系在计算机科学的内容上没有什么不同,其主要差别在于计算机科学之外的课程上。EECS主页上介绍,

“如果你兴趣更广泛,对经济,统计,商业和音乐等也很感兴趣,或者想读一个双学位,你应该选择后者。而如果你对工程专业更感兴趣,那么前者应该更适合你”。

简单的说,前者在工程方面更深入,后者则让学生有更大的灵活性来探索工程之外的领域。

为未来而教的培养目标

EECS在它的主页上说:

多数UCB的EECS学生在毕业后,会在工业界开展自己的职业生涯。计算机科学学士学位将使你为各种有趣的工作做好准备,包括软件工程、网络开发、数据分析和咨询。部分学生毕业后,会在高校或者公司的研究部门从事研究工作。我们的目标是让学生毕业的时候为他们做好准备,不管是在工业界从事技术领导工作(technical leadership in industry),还是在高校从事研究工作。因此,我们必须具有前瞻性,要超越当前的技术(look beyond today's technology),给学生们提供一些关于计算机行业的一些大的理念(big ideas),培养学生的学习技能,才能让他们在将来具备自我学习、不断提高的能力。

层次分明,以点带面的课程体系

UCB CS专业课的课程体系将课程分为lower division和upper division两种,类似国内的专业必修课和专业选修课。此外,课程体系中每一门课都有一些先修课,整个形成一个知识树(见图③)。

图③显示了课程中的一部分重要课程。包括红色的核心课程(core),蓝色的软件课程(Software),黄色的硬件课程(Hardware),绿色的理论课程(Theory),以及紫色的应用课程(Applications);

有箭头指向某一个节点课程的课程,就是这门课程的先修课:

图3 CS的课程体系

Lower division:只要是CS专业的就要求学,是基础和核心,包括六门课:

• Math lA(Calculus I)微积分I

• Math IB(Calculus II)微积分II

• CS 61A(Structure and Interpretation of Computer Programs, SICP),CS第一门课,讲CS的基础和核心概念(variable, control flow, loop, recursion等),使用Python语言。

• CS 61B/BL(Data Structures),CS第二门课,讲数据结构(Arrays, linked list, Tree, Hash, Stack, Queue等)和一些算法(BFS, DFS, Dijkstra, A*等),用Java语言。

• CS 61C(Machine Structures),CS第三门课,讲计算机底层的原理。用C和MIPS。

• CS 70(Discrete Mathematics and Probability Theory),CS唯一一门必修的理论课,讲离散数学(Proofs, Induction, Stable Marriage 等)和概率(Probability)。

Upper division:专业选修课,满一定学分即可毕业。

选修课可以分 为4个方向,包括软件,硬件,理论,及应用。

我选几个重要的列举出来:

• 硬件方向:只有一门,CS 152(Computer Architecture and Engi­neering),偏硬件和底层

• 软件方向的重要课程:

CS 160(User Interface Design and Devel­opment)UI 设计;CS 161 (Computer Security)计算机安全;CS 162(Operating Systems and System Programming)操作系统;CS 164(Programming Languages and Compilers)设计程序语言和编译器等;CS 169(Software Engineering)软件工程。

• 理论方向的重要课程:

CS 170(Efficient Algorithms and Intractable Problems),介绍计算机科学理论基础和算法;CS 172(Com­putability and Complexity)可计算性和计算复杂度;CS 174(Combinatorics and Discrete Probability)组合数学与离散概率;

• 应用方向的重要课程:

CS 188(Introduction to Artificial In­telligence)人工智能入门;CS 184(Foundations of Computer Graphics)计算机图形学;CS 186(Introduction to Database Systems)数据库;CS 189(Introduction to Machine Learning)机器学习入门。

EECS的几门核心课程的确是王牌,以CS 61A(SICP)为例,该课程被彭博社评为“全美五个最佳计算机科学课程之一”。

CS61A的SICP指的是程序构造与解释,不局限于教语言本身(实际上这门课的final会同时考到Python, Scheme, SQL)等语言。

这和自学以及培训班所开设的专门针对某一个语言的课(C++, Java, Python)等是不一样的。报名该课程的人数非常多,曾出现了1600人同上一门课的盛况!(见图④)

④ 1600人同时上的一门课:CS61A

另外一门核心课程CS 61C(Machine Structures)和直接教你编程写代码不同,这门课讲计算机的底层原理,覆盖量相当之广,从汇编语言到SDS,搭建CPU,cache,包括从伯克利诞生的RAID都有所涉猎。

由此我们可以看出,UCB的CS教育以培养学生的计算机科学思维为主,编程(coding)能力为辅。

我记得之前在计算机学院开会的时候,一个老师提出了一个问题:

计算机专业的学生写的程序和非计算机专业的学生写的程序有什么区别?

我想,区别主要在这些专业核心课程上。

通过对这些专业核心课程的深刻理解,计算机专业的学生写的程序所运用到的计算机思维和相关概念(底层原理,数据结构、算法等等),都要比非专业的学生, 或者是那些经过短期培训班的学生好得多。

UCB还有一类课程,是让学生自己开课,被称为(DeCal),就是完全由学生自己组织、上课、布置任务的特殊课程(学生自己开课流程如图⑤)。

经过这么多年的发展,DeCal已经成为Berkeley课程体系的一部分,并且其课时计入总学分(一般普通课程是4学分一学期,DeCal—般为2学分),但是不参与GPA计算。

计算机的Decal通常是一些应用的课程,例如VR、游戏设计、3D建模与动画、网页开发、iOS开发、3D打印、区块链技术等。

⑤ 学生自己开课流程

最后总结一下EECS的计算机课程体系的几个特点:

1. 层次化(大部分课程需要先修课程);

2. 超强的精品课;

3. 培养学生的计算机科学思维为主,coding能力为辅;

4. 给学生极大的自由,体现在两点:

(1) 必修少,选修课多;(2) 让学生自己开课(DeCal)。

学以致用:多种方式鼓励本科生参与研究

UCB的EECS学院,鼓励本科生参与更多的研究工作。

UCB认为:

让学生参与研究工作,特别是在学校教职工的带领下参加研究工作,将加深你在特别感兴趣领域的知识和技能,同时体验从事研究的意义。

⑥ 本科生参与科研

UCB提供了多条路径积极鼓励学生参与科研。

对于本科生,UCB在网站上给出了一系列指导措施和具体方法:

1. 决定你感兴趣的研究领域;

  • • 阅读EECS研究页面,查看该部门的区域、实验室、中心和项目的完整列表。查看EECS研究项目以查看过去和当前的研究项目。此外,注意你比其他人更喜欢什么课程,这可能会帮助你决定你想在哪里做研究。

2. UCB每周会有一次的学术报告会(colloquia showcase research presentations);

  • • 教职工会展示他们的一些研究成果,同时借此机会来找到愿意参与该项目的学生。

3. UCB经常会有本科生研究海报会议(undergraduate research poster sessions);

  • • 本科生通过参加这个会议就可以了解到自己的同学正在参与的研究项目,从而加入某个项目中。

4. UCB的本科研究见习计划(The Undergraduate Research Appren­tice Program, URAP);

  • • 该计划旨在使伯克利大学的本科生更深入地参与大学的研究生活,在每个学期开始时开放申请。图⑦显示了EECS学院部分供本科生参与的项目。
相关文章
计算机专业过热,美国大学面临危机
大学想学“计算机”专业能学得好吗?
计算机系统的光盘包括可读写光盘
计算机专业选深圳大学和南昌大学
计算机系统数据数据传输指令
计算机已饱和大学专业好就业呢
非211大学“计算机专业”实力强
计算机科学与技术专哪个大学好?
计算机系统预测对物理力的反应
计算机系教授利用算法追回
栏目推荐
计算机二级C语言考试选择题002
计算机:通过业绩预告了什么?
二级考试《综合能力》知识点
黑客为何只用键盘不用鼠标?
日排行
·  新研究:神经翻译技术和细胞计算机
·  二氧化碳水平是至少300万年来最高水平
·  计算机专业就业工资高,文科专业被取
·  考研必看计算机专业工资高
·  美国留学计算机专业需要注意些什么?
·  除了时间宝石,还有量子计算机?
周排行
·  中国计算机学会声明退出教育认证
·  人工智能在计算机网络技术中的运用
·  新研究:神经翻译技术和细胞计算机
·  计算机异常Word未保存怎么办?
·  二氧化碳水平是至少300万年来最高水平
·  大型计算机网络建设管理十分重要!
月排行
·  计算机的结构是由什么组成的?
·  利用计算机成功倒流几分之一秒的时间
·  四大数据为你选择计算机专业强校
·  中国计算机学会声明退出教育认证
·  加拿大计算机专业有哪些热门的
·  计算机学会“软件能力认证”结果出炉
年排行
·  计算机等级考试二级操作题
·  量子计算机仍然是个梦想
·  小学生通过全国计算机等级考试
·  全国计算机等级考试报考简章
·  计算机的应用可归纳为以下几个方面
·  计算机二级考试你需要的都在这了
《中华人民共和国电信与信息服务业务》信息产业 京ICP备06046971号 技术支持:嘉瑞恒通(北京)科技有限公司。
COPYRIGHT (C) 2003-2008 KSWCHINA.COM INC ◎ 考试中国ALL RIGHTS RESERVED. 删稿联系邮箱:sheng6665588@gmail.com