美国本科专业解析-计算机科学
专业概述
计算机科学专业,是美国本科申请中竞争最为激烈的专业之一也是中国家长趋之若鹜的专业之一。作为世界上计算机知识和技术最发达的国家,首先,学生在美国的各大高等院校中基本都可以接触和学习到最前沿的计算机科技和知识,其次,相对于其他专业而言,计算机专业的国际学生毕业之后能够比较容易在美国当地就业。基于这两点,近些年计算机专业成为留学生的热门专业之一。
计算机科学是系统性研究信息与计算的理论基础以及它们在计算机系统中如何实现与应用的实用技术的学科。它通常被形容为对那些创造、描述以及转换信息的算法处理的系统研究。计算机科学包含很多分支领域;有些强调特定结果的计算,比如计算机图形学;而有些是探讨计算问题的性质,比如计算复杂性理论;还有一些领域专注于怎样实现计算,比如编程语言理论是研究描述计算的方法,而程序设计是应用特定的编程语言解决特定的计算问题,人机交互则是专注于怎样使计算机和计算变得有用、好用,以及随时随地为人所用。(维基百科)
绝大部分的美国大学都开设有计算机专业。根据美国US News 排名上给出的计算机排名学校大概有100多所,对于申请者而言,如果想要读计算机专业,选择面是非常广泛的。计算机专业一般开设在文理学院或者工程学院下面。两者的区别主要在于有几门选课不同。
在工程学院的计算机项目往往和Electrical Engineering (电子工程)是合在一起的,一般称为ECE(Electronic and Computer Engineering)Department 或者CEE (Computer and Electronic Engineering).比如,MIT(麻省理工学院)的计算机专业就开设在EECS (Department of Electrical Engineering and Computer Science);CMU(卡耐基梅伦大学)开设有独立的计算机学院(School of Computer Science)。
课程设置
计算机专业本科阶段的学位一般为Bachelor of Science.但是由于有的学校是在College of Arts &Science (文理学院)下面,有的是在College of Engineering(工程学院) 下面,会有所不同。比如,康奈尔大学在文理学院下面的计算机专业授予的是Bachelor of Arts 学位,在工程学院下面的计算机专业授予的是Bachelor of Science.
专细划分
计算机这个专业类别涉及的领域非常广泛,分支学科也非常多。美国本科计算机方向主要有四大类,每个类别又分为不同的专业研究方向。目前,国内学生主要申请的为以下几个主要方向。
一.计算机理论方向(Computer Science-theory):
计算机理论(Theoretical Computer Science)专业方向:主要研究计算机各项理论,包括算法逻辑和复杂度涵盖:算法分析,平行计算,分布式计算,计算学习理论,计算机科学逻辑等。
二.计算机系统(Computer System):
计算机网络(Computer Network)专业方向:通常也简称网络,是指容许节点分享资源的数字电信网络。在电脑网络,电脑设备会透过节点之间的连接(数据链路)互相交换数据。传输介质可分为有线及无线两类——有线的可用到双绞线、光纤电缆等介质;无线则可用到Wi-Fi、NFC。用于创建、路由及终止数据传输的电脑网络设备即为网络节点。节点包括像个人电脑、电话、服务器般的主机及其他网络硬件(如网关及路由器)。电脑网络为海量应用程序及服务背后的基础。比如访问互联网、数字视频、数字音频;共享打印机;收发电子邮件及即时通信消息。(维基百科解释)计算机网络专业方向是研究比较高层次之间的通讯遇到的各种问题。
三.程序应用 (Programming Language)方面:
1. 软件工程(Software Engineering)专业方向:研究用工程化方法构建和维护有效的,实用的和高质量的软件的学科。该领域涉及程序设计语言、数据库、软件开发工具、系统平台、设计模式等方面。例如电子邮件,嵌入式系统,人机界面,办公软件,操作系统,编译器,数据库,游戏等都属于此研究领域和范畴。
2. 数据库(Database)专业方向:是按照数据结构来组织,存储和管理数据的仓库,有很多种类型,从简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
3. 系统安全和信息安全(System Security &Information Security)专业方向:这个方向主要研究为数据处理和采集系统提供安全保护,保护计算机硬件、软件、数据等不受偶然或者恶意的原因而遭到破坏等。
四.人工智能(Artificial Intelligence)方面:
1. 人机交互(Human Computer Interaction)(HCI)专业方向: 通过计算机输入、输出设备,以有效的方式实现人与计算机交流。这是一门交叉学科,涵盖艺术,设计,计算机,心理学,社会学等多门学科。
2. 人工智能(Artificial Intelligence)专业方向:该方向主要研究、开发用于模拟,延伸和扩展人的智能的理论、方法、技术以及应用系统的一门新的技术科学。该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。
3. 机器学习(Machine Learning)专业方向:该专业方向是一个多领域交叉学科,设计概率论,统计学,凸分析,算法复杂度等多门学科。研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或者技能。该学科是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。
4. 计算机视觉(Computer Vision)专业方向:是机器学习下面的一个分值。该专业方向主要指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取“信息”的人工智能系统。
五.交叉类型专业方面:
近几年,计算机和其他学科交叉专业兴起。像卡耐基梅伦大学,麻省理工学院等都开设了相关专业。
1. 计算机科学与分子生物学(Computer Science and Molecular Biology):以麻省理工学院开设的该专业为例,该专业方向涉及分子生物学和计算机科学方面的课程。由EECS和生物学系共同提供的课程,为学生在生物学和工程学(包括药物,生物信息学和计算分子生物学)之间的新兴领域的职业做好准备。修读该专业的学生将有两名学术顾问,一名来自EECS,另一名来自生物学。
2. 计算机与艺术(Computer Science & Arts):以卡耐基梅伦大学开设的该专业为例,该专业方向结合了美术学院(CFA)和计算机科学学院(SCS)的优势。为感兴趣的学生提供了理想的技术,批判性和概念性基础,他们致力于追求将技术与艺术融为一体的领域,例如游戏设计,计算机动画,计算机音乐,录音技术,互动舞台,机器人艺术和其他新兴媒体。学生可以从CFA学院中选择艺术专业包含:建筑,艺术,设计,戏剧或音乐。同时,学生可以选择计算机科学学院设立的计算机科学专业。BCSA课程包含三个主要组成部分:通识教育课程部分,艺术学院的课程要求和计算机科学课程要求。
课程设置和要求
有的大学计算机专业在文理学院下面开,有的则开设在工程学院。以康奈尔大学为例,工程学院和文理学院都开设了该专业。(具体对比分析参见表格)
学院(College) | College of Arts &Science 文理学院 | College of Engineering 工程学院 |
颁发学位(Degree) | 文学学士学位(BA) | 理学学士学位(BS) |
选课要求 (Course Requirement) | 1. Three Mathematics courses(三门数学课程) 2. Two introductory programming courses (两门入门编程课程) 3. Five CS Core courses:(五门专业核心课程)
4. Three CS electives(三门专业选修课) 5. One CS Practicum or Project course(一门专业实习/项目) 6. Three Technical electives(三门技术选修课) 7. Three External Specialization courses(三门额外专业课程) 8. 3-creditsMajor-Approved elective(s) (3学分专业限选课) | 1. Five CS Core courses(五门专业核心课程)
2. Three CS electives(三门专业选修课) 3. One CS Practicum or Project course 4. Three Technical electives(一门专业实习/项目) 5. Three External Specialization courses(三门额外专业课程) 6. Three 3000+ courses (3+ credits each) from the same subject area (三门3学分同一领域选修课) 7. 3-Credit Major-Approved elective(s) (3学分专业限选课) 8. Advisor-Approved elective(s) (学术导师批准的其他选修课) |
Co-op Program (带薪实习课程) | 为学生提供本科带薪实习项目 | 为学生提供本科带薪实习项目 |
从上表我们可以看出,康奈尔大学工程学院和文理学院的计算机专业所学课程基本一致。
就业情况
目前,计算机专业是最好就业以及薪酬最高的专业之一。理论上讲,计算机专业就业面及其广泛。接下来具体盘点一下计算机专业的十大职业以及大概的年薪:
1. 软件开发师
工作内容:软件开发人员创建允许用户在各种设备(例如计算机或移动设备)上执行特定任务的软件程序。他们负责软件的整个开发,测试和维护。软件开发人员必须具有解决独特问题所需的技术创造力。他们需要精通用于编写程序代码的计算机语言。
平均薪资:$107,510/年 (2019年5月)
2. 数据库管理员
工作内容:数据库管理员分析和评估用户的数据需求。他们开发并改善了用于存储和检索关键信息的数据资源。他们需要计算机科学专业的问题解决能力,才能纠正数据库中的任何故障并根据用户不断发展的需求来修改系统。
平均薪资:$ 93,750/年 (2019年5月)
3. 计算机硬件工程师
工作内容:计算机硬件工程师负责设计,开发和测试计算机组件,例如电路板,路由器和存储设备。计算机硬件工程师需要创造力和技术专长的结合。他们必须是狂热的学习者,他们必须紧跟该领域的新兴趋势,以创建可以容纳最新程序和应用程序的硬件。计算机硬件工程师必须有足够的毅力一次又一次地对系统进行全面的测试,以确保硬件能够正常运行。
平均薪资:$117,220/年 (2019年5月)
4. 计算机系统分析师
工作内容:计算机系统分析人员评估组织的计算机系统,并建议对硬件和软件进行更改,以提高公司的效率。由于这项工作需要与经理和员工进行定期沟通,因此计算机系统分析师需要具有较强的人际交往能力。系统分析师必须能够说服员工和管理层采用能够满足组织需求的技术解决方案。此外,系统分析人员需要不断学习的好奇心和渴望,以跟踪技术和研究前沿系统的趋势。系统分析师还需要业务技能来识别对整个组织最有利的方面。类似的职务是业务分析师或业务系统分析师。
平均薪资:$90,920/年 (2019年5月)
5. 计算机网络架构师
工作内容:计算机网络架构师设计,实施和维护网络和数据通信系统,包括局域网,广域网,外部网和内部网。他们评估组织对数据共享和通信的需求。计算机网络架构师还评估市场上可用的产品和服务。计算机网络架构师在实施系统之前先对其进行测试,并解决安装完成后出现的问题。计算机网络架构师需要具有分析能力来评估计算机网络。
平均薪资:$112,690/年 (2019年5月)
6. Web开发人员
工作内容:Web开发人员评估用户对基于信息的资源的需求。他们创建了网站的技术结构,并确保可以通过各种浏览器和界面访问和轻松下载网页。Web开发人员构建网站以通过搜索引擎优化来最大化页面浏览量和访问者数量。他们必须具有确保网站满足其用户需求所需的沟通技巧和创造力。
平均薪资:$ 73,760/年 (2019年5月)
7. 信息安全分析师
工作内容:信息安全分析师创建了一些系统来保护信息网络和网站免受网络攻击和其他安全漏洞的侵害。他们的职责还包括研究数据安全趋势,以预测问题并安装系统以防止问题发生。安全分析师还需要强大的问题解决能力来调查违规,确定原因以及修改或修复安全系统。
平均薪资: $99,730/年 (2019年5月)
8. 计算机与信息研究科学家
工作内容:计算机和信息研究科学家发明了解决诸如科学,医学和商业等领域的复杂问题的技术。他们还发现了实现相同目标的现有技术的新用途。计算机和信息研究科学家编写了用于检测和分析非常大的数据集中的模式的算法。一些计算机和信息研究科学家创建了控制机器人的程序。
平均薪资:$122,840/年 (2019年5月)
9. 计算机和信息系统管理者
工作内容:计算机和信息系统经理分析公司的技术需求并监督适当数据系统的实施。他们需要能够评估软件,硬件,网络和其他技术资源以用于购买或开发目的。由于计算机和信息系统管理者会雇用,培训和监督员工,因此人际交往的技能在这一角色中至关重要。他们必须是能与员工进行有效沟通的强有力的领导者。
平均薪资:$146,360/年 (2019年5月)
10.IT项目经理
工作内容:IT部门的项目经理协调由程序员/开发人员和分析人员组成的团队完成项目的工作。他们还为公司或客户组织分析技术问题,提出解决方案和技巧以提高生产率。解决问题的能力以及对技术和计算机系统的广泛了解有助于计算机科学专业的学生在这一角色中脱颖而出。需要强大的沟通能力才能理解用户的需求并将技术规范传达给开发人员。
平均薪资:$88,896/年