计算机科学与技术专业和软件工程专业,选哪个?

芦方文


计算机科学与技术:简称计科(CS)。一般来说CS的学习偏重学习计算机的原理。学习偏理论,学习内容涉及软件也涉及硬件,还有两种相结合,一般来说CS两者的比重是1:1,按学校的不同可能会出现不同情况。

软件工程:简称软件(SE)。SE的学习主要是围绕着软件的应用、设计、开发、维护架构这几个模块等。偏应用、工程、实践。学习内容涉及一些基本的硬件,但更多是工程的理论和大量的软件实践知识。


全国共有168所开设计算机专业的大学参与了计算机专业大学排名,其中排名前4的大学是北京大学、清华大学、浙江大学、国防科技大学,这是国内目前计算机专业排名第一梯队,能力不相上下,以下具体榜单,还比较权威,供大家参考:


学科情况

计算机科学与技术这个一级学科是中国特有的,国际上通常只有计算机科学。大部分学校的计算机科学主要来源于数学学科,而软件工程学科是源于计算机科学的(可以类比材料科学源于物理学),一直是计算机科学的一个二级子学科。从国际学科发展看,2001年IEEE提出了“计算学科”的概念,来替代原有的计算机科学学科,计算学科包括了计算机科学、计算机工程、软件工程、信息系统、信息技术五个子学科。但就我的感觉,现在绝大部分国外大学基本还是以计算机科学为主。在中国,2011年开始,软件工程开始和计算机科学与技术并列为一级学科。

由于中国大学科研和学位授予和国家的学科划分以及教育政策紧密相关,所以各大学才会有计算机科学与技术以及软件工程的分别招生。

软件工程这个词是1968年才出现的,当前对其定义和内涵还有不小的争议。一般使用的软件工程定义是IEEE的一个标准“使用系统、规范、可度量的方法进行软件开发、运行和维护。”,但这个定义当前仍然有争议。


就业前景

近几年的CS和SE的就业情况相当不错。如果题主经常去了解就业市场的话(可以上一些招聘网站看看),你会发现,公司无论大小,招人上,除了技能的要求,对于专业的要求一般是“计算机相关”,几乎没有见过有公司点明必须是SE或者是CS,也就是说无论是SE还是CS其实HR都不太关注,更关注应聘者的专业技能。所以如果从就业方面来说的话,CS和SE的差别其实很小。

但另外一个问题是,由于两者在专业学习上的侧重点是不同的。CS学习了更多的理论,而且软硬结合,知识面更广,如果在大学四年内没有好好拓展自己的动手实践和工程能力的话,就业上是会有些许吃亏的。我曾经认识不少的CS朋友,他们都在吐槽CS学习得太泛,反而影响了就业。反观SE,由于更注重培养工程能力,而且课程中一般有大量的课程设计,所以更适合企业。

但其实这个更看个人,在 学习专业知识的同时,如果注意去拓展自己,在就业上基本不会有太大的差别,因为大家的基础都差不多的。

找工作的容易度上,计算机科学与技术适应面会稍广。在初入职场的薪资上,软件工程专业的会更高一些。在职业的发展性和延续性上,计算机管理类岗位能走得更远。但是有一点,想要在管理类岗位做到高端,一定的编程基础是少不了的。如果你想在毕业后就业,想做工程师,偏向编程技术、软件开发,可以把专业选择偏向软件工程。如果你想就业范围广一点,或者想考研或出国,专业选择可以偏向计算机一点。

考研:

如果打算考研,CS更有优势。一般学校都会有CS和SE的硕士点。如果有兴趣去查的话,你可以发现,大多数学校CS和SE的考研科目都是数据结构、计算机组成原理、计算机网络、操作系统等等。这些科目都是偏向理论,而且要求基本功扎实。

CS学生的计算机理论基础扎实,软硬结合,知识面广,所以无论日后选择考CS硕士还是SE硕士,都比较有优势。

SE的学生由于更注重工程和实践,所以这个时候想考研要花比CS更多的实践去补理论基础。

建议:

1、同等学校计算机科学与技术学费低,难考一些;软件学院学费高,通常好考一些。

2、计算机科学与技术的理论基础通常更扎实一些。软件学院不管教学内容体系如何,通常更加重视实践,学生实践能力更好一些。(各个学校差异性非常大,建议报考前认真咨询一下。)

3、就业:差距很小,想以后就业方面更轻松点,或者本身更偏向动手和实践的,可以考虑SE

4、如果对计算机感兴趣或者打算考研的,选CS好。


分享到:


相關文章: