Science即科学,是用来指明方向的,在计算机这个本身就看重应用的领域内,CS相比较之下更偏理论,研究编程语言、用怎样的算法才能让软件在计算机上运作等等,总体来说,比较偏向软件开发。如果你喜欢数学、逻辑,学CS会更适合。 (简称CE,计算机工程)应用性更强,结合了CS和EE(电子工程),除了基本的编程技巧,还要熟悉电子工程方面的知识,学习电路、电子、VISI设计等,本质上是工科,比较偏向硬件开发,比如超级计算机,显卡性能提升一类的。这两个专业本身有重合的部分,在专业设置的时候,不同的学校也会有自己的想法。
以计算机大牛CMU为例,单独开设了School of Computer Science,本科的课程设置中主要包括了:
计算机科学理论(比如Principles of Imperative Computation、Mathematical Foundations for Computer Science、Principles of Functional Programming);
逻辑与语言比(比如Programming Language Semantics、Software Foundations of Security and Privacy、Foundations of Cyber-Physical Systems);
软件系统(比如Database Systems、Compiler Design)
(比如Natural Language Processing、Robot Kinematics and Dynamics);
域名(比如Designing Human-Centered Software、Computer Graphics)
数学(比如Matrix Theory、Probability and Computing、Matrices and Linear Transformations)
综上可以看出涉及学科很杂,电机学、电子器件和模拟电路、硬件算法、计算机系统、计算机安全、逻辑设计什么的都要学,用学校官网的说法“哪里有电子和计算机,哪里就有我们(Wherever the electrons or computers are—that is where we are.),霸气是一方面,另一方面也看出这个专业毕业后适用性非常广。>>【立即咨询】
还有一部分学校,比如加州伯克利,会把CS放在文理学院下面,同时又在工程学院下,结合电子工程开设Electrical Engineering & Computer Sciences(EECS)
当一所大学把CS放在文理学院和工程学院下,会有哪些不同呢?简单总结起来,就是文理学院下的CS会更偏理论,而且除了和计算机相关的编程、AI、数据库等,还能更广泛地学习人文、经济、统计学、社科等方面的课程;工程学院下的CS更偏实践,且涉及更多工程、化学、电路等方面的课程,编程课会比CS少。