相比许多传统行业,IT 行业能带给从业者较高的收入。

一个合格的计算机本科毕业生,如果是在北上广深一线城市就业,往往一毕业就能拿到上万的月薪,如果学历是硕士或博士,工资还会更高一点……

从上个世纪八十年代开始,中国 IT 行业一直处于快速成长与扩张的态势之下,创造和积聚了巨额的财富,出现了一批批的富豪,比如大家所熟知的「双马一李」——阿里的马云、腾讯的马化腾、还有百度的李彦宏,都是知名度很高的例子。

与其他行业相比,IT 产业市场化程度较高,多数领域没有人为设置的准入门槛,相对开放。

由于存在激烈的竞争,IT 公司论资排辈的现象不算严重,唯才是举,这对于年轻人来说是一个利好的消息。

所以,IT 业就成了那些家境并不富裕的年轻人实现阶层逆袭的「寻梦之地」,坊间流传着「穷学 IT,富学金融」的俗语,各行各业的人转 IT 的很多,条条大路通 IT,成为了一个全社会级别的现象。

随着 IT 行业的持续火爆,一种言论出现了:

计算机专业是否「火过头」了?计算机就业市场是否己经饱和了?

相应地,对于高考考生来说,当前是否还应该报考计算机专业?

这些问题,成为了许多高考考生和家长所关注的热点。

我作为一名在高校讲授软件开发系列课程多年的一线教师,就本人所了解与掌握的一些情况,写此文向高考考生与家长比较系统地介绍一下计算机专业,对是否报考计算机专业、如何选择报考院校等关键问题,提供一些信息,进行一些分析,给出一些建议,以帮助考生和家长做出理智决策。

一、计算机专业的报考与招生2022 年了,报志愿还应不应该选计算机专业?

这个问题,其本质是 IT 产业的发展前景问题。因为计算机专业毕业生的主要去向,就是 IT 产业。

这里我就先简要说说中国的 IT 产业发展的现状。

首先明确一点,人类当前所处的阶段,称为「信息时代」,并且正在向「智能时代」迈进,在这个大背景下,以培养信息科技人才为主要目的「计算机专业」,「火」是必然的,而且还会继续「火」下去,除非出现另一场产业或科技革命,让人类进入另一个新的发展阶段。

许多人说「计算机专业」火过头了,其实这不是从科技进步与产业发展角度说的,而是从就业角度来说的。

下面我就从这个角度来分析一下这个问题。

依据工信部给出的数字,2021 年全国软件和信息技术服务业规模以上企业超 4 万家,我国软件业从业人员约有 809 万人[1]。

这里给的数字是针对软件和信息服务业抽样统计而来,IT 产业的范畴要更大一点。

比如,IT 产业还包容计算机、手机、传感器等硬件设计与生产之类的特定领域产业,但软件和信息服务业可以说是中国 IT 产业的核心和主体产业,可以代表 IT 产业了。

因此,下面主要以软件和信息技术服务业为切入点进行分析。

4 万家企业,809 万人,说明中国软件产业己经颇具规模,而且别忘了,软件产业只是 IT 产业的一个子集罢了。

中国成规模的并且还在增长的 IT 产业,是能够吸纳大量计算机专业人才的前提与基础。

除了 IT 行业可以吸纳计算机专业人才,其他行业也正在进行数字化转型与智能化升级,这些都是可以源源不断地接收计算机专业毕业生的地方。

近几年来,国家多次强调要构建以信息网络为基础的「新型基础设施建设(简称『新基建』)」,相继发布了《新一代人工智能发展规划》等战略性文件,非常明确地将信息产业列为国家支柱性产业。

这些,都是对计算机专业学生就业的利好消息。

除了上面所介绍的显而易见的毕业生去处之外,中央和地方各级政府部门,也招收不少计算机专业的毕业生。

还有一个许多人可能不太注意的事实,那就是信息技术类课程己经走进中小学课堂,必然会需要大量的信息技术相关的教师,这同样会成为计算机专业毕业生的一个好去处。

从以上分析可以看到,本身规模巨大的 IT 产业就可以吸纳大量的计算机专业毕业生,与此同时,计算机专业毕业生在 IT 行业之外的就业市场与机会也在不断扩大之中,从总体上说,是能够消化掉近些年人数快速上升的计算机专业毕业生的。

所以,虽然在特定时期和特定地区,可能会出现计算机毕业生难以就业的情况,但从长期和大局来看,只要是一名合格的毕业生,计算机专业学生的就业应该是不困难的。

报考计算机类专业,怎样选择大学?

通过前面的介绍,想必读者已经明确和坚定了要报考计算机专业的念头,下一个就是要确定——报考哪所大学?

这里面,就涉及到一个年年都问的老问题:「在我的高考分数可以上的几所大学中,怎样做出取舍呢?」

与之相关联的,还有一个非常普遍的问题,那就是——「应不应该依据学校排名和学科排名来选择报考院校?」

那么,大学排名和学科排名靠谱吗?依据排名来填报高考志愿,是否科学与理智?

下面我就来说说这个排名问题。

1大学排名

首先,说说「大学排名」。

在上个世纪八、九十年代,中国大学主要分为两档——重点大学和普通大学。后来,教育部先弄出了一个 211 计划,后来又推出了 985 计划,说是要将有限的资源投入到有实力的高校中,重点建设一批高水平的有竞争力的能达到国际先进水平的大学。

这样一来,大学就分为了三档:985 一档,211 一档,其他大学一档。这里所说的其他大学,由于它们既非 985 又非 211,于是有了一个「双非」的名号。

211/985 的划分持续了挺长的一段时间,虽然期间社会各界对教育部「偏心」和「不公正」的批评一直没断,但 211/985 这个「称号」还是深入人心,具有极高的知名度,以至于在企业招聘、高校招生等许多场合,它都被当作一个「准入的门槛」,并且一直沿用至今。

这样一来,211 与 985 也成了高考考生报志愿的主要依据,「依据高考分数,无脑报能上的 211 和 985 高校就行了」,这个策略,简单好使。

不过到了 2017 年,排名游戏又有了新玩法,主要原因在于教育部在这年取消了 211 和 985 的称号,将大学与学科分开,将资源投入单位,由大学细化到了学科,拉出了一张「双一流」清单。

关于「双一流」,记住以下这句话就够了:

一流大学中的学科不一定是一流学科,一流学科所在的大学也不一定是高水平的大学。

2022 年 2 月,教育部公布了第二轮「双一流」建设高校及建设学科名单[2],同时,公开警示或撤销了部分高校的首轮建设学科(图 1)。

计算机专业毕业人数(计算机专业毕业的人)(1)

图 1 双一流建设高校与学科名单(部分)

教育部作为全国高校主管机构,它的决定具有「一锤定音」的重要意义。被教育部认定为「双一流」的高校和学科,都是有实力的,用人单位对此也基本认可。

也就是说,高分考生报考被教育部认定为「双一流」的高校,是科学与理智的。

「双一流」,代表了学校的总体实力和社会声誉。

2学科排名

再来说说学科排名。

注意区分一下「学科门类」、「一级学科」和「专业」这三个术语。

教育部 2011 年发布了《学位授予和人才培养学科目录》[3], 对「学科」有以下说明:

《学位授予和人才培养学科目录》分为学科门类和一级学科,是国家进行学位授权审核与学科管理、学位授予单位开展学位授予与人才培养工作的基本依据,适用于硕士、博士的学位授予、招生和培养,并用于学科建设和教育统计分类等工作。学士学位按本目录的学科门类授予。

学科门类是一个「大类」,诸如「哲学」、「理学」等都是学科门类。学科门类下面,可以有多个一级学科,比如, 「工学(08)」门类下,「计算机科学与技术(0812)」与「软件工程(0835)」都是一级学科。

学科主要就是国家为方便管理而设定的,主要影响到你的毕业文凭上写的啥,拿的学位是「工学学士」还是「理学学士」,与我们常说的 「专业」其实没多大关系。报志愿时,报的是专业,而不是学科。

现在回到「学科排名」这件事情,这里面最有影响的就是教育部学位与研究生教育发展中心搞的学科评估,它是按照前述《学位授予与人才培养学科目录》对全国具有博士或硕士学位授予权的一级学科开展的整体水平评估。学科评估于 2002 年首次开展,截至 2017 年共完成了四轮,第五轮结果当前(截止本文写作的 2022 年 5 月)还未公布。

可以在中国学位与研究生教育信息网上找到第四轮(2017 年)的结果[4],最左边的是学科门类,第二列是一级学科,右边就是参评院校的评估结果了(图 2)。

计算机专业毕业人数(计算机专业毕业的人)(2)

图 2 第四轮计算机专业学科评估结果

学科排名有自己的指标体系,主要有四个方面——「师资队伍与资源、人才培养质量、科学研究水平、社会服务贡献与学科声誉」。

从指标体系可以看到,不像「双一流」认定,学科评估是对参评院校研究生教育阶段的水平评估,并且不是全部高校都参评。

由于学科评估的这个特点,除非本科毕业后计划就在本校读研读博,否则,学科评估的结果,其实与本科生关联不大,相应地,依据它来决定是否报考这所院校,意义也不太大,仅可以作为一个次要的因素进行考虑。

现在可以划重点了——教育部发布的「双一流」名单,是高考报考的指南

原因很简单,教育部搞双一流建设,会导致各种资源更多地流入一流大学和一流学科,高等教育格局的马太效应会更加明显,强者恒强,弱者愈弱。

从 211/985 到双一流,给高考报志愿带来了一点麻烦,因为现在一流大学和一流学科是「分开」的,让组合方式多了一点。

那么,应该如何选择呢?

仔细查看一下最新一轮「双一流」名单,不难发现,「计算机科学与技术」一流学科所在的高校,无一不是众人心目中的好学校。所以,对于高考考生来说,可按以下参考顺序填报志愿:

(1)「双一流」高校中的计算机类专业。

(2)不在「双一流」名单中的其他高校中的计算机类专业。

这里面有一个很重要的选择策略,就是「学校优于学科」,也就是说,优先报考双一流高校,哪怕这个高校的计算机专业不是一流学科。

为什么这么说呢?

因为不少学生毕业之后,并不走科研之路。所以,在填志愿时看报考院校计算机学科排名高低,其实没多少意义。

原因在于,国家给一流学科投入的资源,主要用在科研上,对硕士和博士影响比较大,对本科生就没多大影响。对于本科生来说,学校档次和本科教学质量,比学科排名,影响更大。

当然,对于那些已经立志要读到博士走科研之路的考生来说,学科评估结果影响就比较大了,因为这涉及到是否有足够的资源来支撑科研的问题,也会直接关联到博士毕业和求职。

了解报考计算机专业的风险

这世间的事物,往往是两面或多面的,选择报考计算机专业,固然有很多好处,但也有一些风险。

最明显的风险就是计算机专业是极热门的工科专业,因此招生分数线较高,竞争激烈,这个是众所周知的事实,也很好理解,这里,我就不展开说了。

我想说的,是可能为考生与家长忽略的另外一些风险。

1、中国 IT 产业发展不均衡带来的风险

尽管 IT 行业的「总体趋势」很不错,但这并不能就说「到处都是『莺歌燕舞』」了,这里存在的主要问题,是中国 IT 产业发展严重不均衡。

请看工信部发布的 2022 年一季度软件业务收入前十省市增长情况[5](图 3):

计算机专业毕业人数(计算机专业毕业的人)(3)

图 3 2022 年一季度软件业务收入前十省市增长情况

从中可以看到,最高的北京市,其软件业务收入是最低的天津市的 10 倍。

再来看一下,2021 年前十位副省级中心城市软件业务收入增长情况[1](图 4):

计算机专业毕业人数(计算机专业毕业的人)(4)

图 4 2021 年前十位副省级中心城市软件业务收入增长情况

排除北京上海等几个直辖市,在中国副省级中心城市中,最高的深圳比最低的厦门,有 7 倍左右的差距。这些都算是中国的 IT 强市,其他的省会或区域中心城市,根本就排不上号。

上面介绍的是主要是软件,但硬件领域也有类似的规律。由于篇幅所限,这里我就不展开了。

上述事实,说明了这样的一个观点:如果想充分享受到信息时代的红利,你所报考院校所在城市,应该尽量选择上面所介绍的信息强省(强市)

这个,是选择报考计算机专业院校的重要考虑因素,考生与家长必须牢记在心。

这时,一个问题出现了:虽然双一流名单中「计算机科学与技术」学科所在高校,大多位于信息产业发达的地方,但确实也有位于其他 IT 产业不怎么发达地区的,这时,又如何抉择呢?

这个要看个人的未来打算了。

如果是以毕业后能进一个好的 IT 公司为目的,那应该优选位于 IT 发达地区的高校,学校档次低一点也无妨。因为 IT 发达地区给计算机专业毕业生所提供的机会,是其他地区难以比拟的。

2、「大类招生」的「坑」

由于近些年来,计算机专业大热,众多考生「蜂拥而入」,很多传统理工科专业则招生困难,为了平衡生源,不少高校「灵机一动」,搞起了「打包与捆绑销售」的策略,此即「大类招生」。

所谓「大类招生」,就是将多个专业合并在一起统一招生,学生进来后先学一年,然后从大二开始进行分流。

请在报考时仔细研读报考院校的招生简章,国内有不少大学采用「大类招生」的方式。比如浙江大学在其招生简章中说,他们是这么管理的[6]:

学校按人文、社科、理、工、农、医、艺术、科技与创意设计等类别实行分类招生。……。学生实行「1 3」管理模式,一年级统一由求是学院负责管理;从二年级开始进入专业院(系)学习,由专业院(系)负责管理。

这种招生方式,其实是增大了考生的风险。

主要原因显而易见,「计算机专业」通常想去的人多但接收名额有限,而其他专业想去的人少。

所以,还必须再来一次「校内竞争」,并且注定一定会有相当一批抱着读「计算机专业」的想法考进大学的学生,最终去学了那些他认为「不怎么样」的传统理工科专业,然后后悔不已——也许当初去档次略低一点的高校,凭分数就可以稳读上「计算机专业」了。

因此,除非考生不仅考分高,并且在入学之后能迅速适应与中学不同的学习方式,仍然能在大学中保持「名列前茅」的成绩,否则,完全有可能会「无奈」地分流到了其他专业。

所以,「大类招生」其实是蕴含着风险的,但这些风险如果预作准备,是可以在一定程度上减少的,这里我说说一些建议。

各大高校,通常都会有些专门针对特定学生开设的「XXX 班」或「XXX 计划」,对这些班的学生单独招生,并采用比较优待的策略,比如可以保研,可以自主选择分流的专业等等。

这种途径,对于那些成绩优秀并且报考采用大类招生方式的高校的学生来说,是一种比较好的选择。

不过,在选择「XXX 班」或「XXX 计划」之前,一定要先弄清楚特定高校的相关政策是什么。

另外一种拿计算机专业文凭的方式是「双学位」或「第二专业」,有些高校允许学生在本专业之外,再攻读一个其他专业的学位,这是又一个获取计算机专业文凭的方式。

对于那些分不够高,进不了计算机专业的考生来说,了解一下报考院校有无此类政策或规定,还是比较重要的。

最后一条路,那就是本科毕业后跨考计算机专业的研究生,这就需要提前准备,通常应该在大一或大二开始,在学习本专业的同时,系统自学计算机专业的核心课程。

不过,必须要指出,不管是在校生还是已经工作的,走这条路的人颇多,造成近几年来,计算机专业考研热度居高不下,其竞争惨烈程度已经不下于高考,走这条路,付出的成本与冒的风险,以及承担的压力,都是非常大的,计算机考研二战、三战甚至四战的人,近些年来是越来越多。

二、你了解计算机专业吗?

一提到计算机专业,许多人脑海中立即浮现出这样一个等式:

计算机专业=计算机科学与技术专业

又会浮现出这样的一个印象:

计算机毕业生=程序员

这些观点其实倒也没大错,计算机科学与技术专业是知名度最高、最老牌的计算机专业了,另外,计算机专业学生毕业之后,到 IT 公司当程序员,确实是其主要去向之一。

但许多考生和家长可能不知道的是,计算机相关专业其实不少,有些你认为是应该是计算机类的专业,比如「信息工程」,其实并不是,而另外一些看上「风马牛不相及」的专业,比如「电影制作」,其实是属于计算机类的专业。

奇怪吗?让我给你解释一下。

首先要知道,未经教育部许可,各高校是不能随意开设专业的, 在 2020 年教育部发布的最新一版《普通高等学校本科专业目录》[7]中,列出了 703 个本科专业,它是各高等院校开设专业的依据,从中可以读出很多的信息。

首先,不是专业中有「计算」,就是「计算机专业」,比如,以下专业名称就有「计算」一词:

计算机专业毕业人数(计算机专业毕业的人)(5)

注意一下序号为 228 与 230 这两个「计算」专业,四年下来你学的主要是数学,而不是计算机。

至于 606,看看它归属的门类,不难推测它主要学的是金融相关的知识,很明显,也不是计算机技术。

计算机技术归属于信息技术大类,与它密切相关的专业群称为「电子信息类专业」,这部分专业往往与信息硬件设备、物理材料及信息基础设施建设等密切相关,这些专业真正学的,与公众心目中「程序员」应该学的东西,往往差别很大,毕业之后,对口的单位往往归属于制造业,并非互联网公司,毕业生虽然也可以当「程序员」在格子间里「敲键盘」,但更多的往往是「下厂子」、「去工地」或「进实验室」……

计算机专业毕业人数(计算机专业毕业的人)(6)

上述这些专业中,特别注意一下序号为 333 的「人工智能」专业,通常人人皆认为它与计算机紧密相关,但事实上,在教育部专家的眼中,它其实不算是计算机类专业!

把水搅得更浑的是:一些大学(比如北京师范大学),成立了「人工智能」学院,前述知名老牌的「计算机科学与技术」,则成了这个学院开设的一个专业!

然后反过来,另外一些大学(比如笔者所在的北京理工大学)的计算机学院,则又开设了「人工智能」专业!

其实不管「人工智能」专业在教育部和高校眼中算不算计算机类专业,在大众和用人单位的眼中,它总是被归于「计算机类专业」,因此,就可以把它看成是一个「计算机类」专业,报考「人工智能」专业,等同于报考「计算机类专业」

下面再接着说其他的一些值得注意的本科专业。

注意一下,那些专业名称中标有「信息」的,排除掉归属于「电子信息类」的几个,基本上都与计算机类专业「相隔甚远」,这类专业,通常是传统专业引入信息技术后衍生出来的「交叉/复合型专业」,虽然这些专业肯定要学不少计算机技术,但本质上仍属于原传统专业。

计算机专业毕业人数(计算机专业毕业的人)(7)

这里要注意区分开两个不同的加法式子:

计算机 某某某」与「某某某 计算机」。

前者「计算机」是主体,是将计算机技术应用于某个特定领域,这些专业是「计算机类专业」。

后者「某某某」是主体,这些专业,多半是用信息技术「升级」和「改造」后的「传统专业」,一定要注意分清楚它的主体是哪个。

上述表中的专业,基本上都是属于「某某某 计算机」这种情况。

下面再来谈谈名字中有「智能」的本科专业。

近些年来,「人工智能」大潮涌起,相关信息与宣传铺天盖地,公众基本上都听过这个热词,受此影响,许多人以为专业中带有「智能」二字的,就是计算机类专业,事情真的是这样吗?

请看以下专业名录:

计算机专业毕业人数(计算机专业毕业的人)(8)

只要看看这些专业所属的「专业类」,就不难发现,这些标有「智能」的专业,本质上仍属于「传统工科专业」,只不过是引入了信息技术进行升级和改造而已。

接着再来说说名称中有「互联网」或「网络」的相关专业,它们总算是计算机类专业了吧?

很遗憾,不是!

请看以下专业名录,它的「门类」清楚地说明了它到底是什么类型的专业。

计算机专业毕业人数(计算机专业毕业的人)(9)

注意,专业名称中含有「媒体」一词的,有两个确实属于计算机类专业,但其他的都不是。

计算机专业毕业人数(计算机专业毕业的人)(10)

所以,报考这类专业,一定要去报考院校的官网上看看,看看此专业归属于学校的哪个学院,计算机学院开设的专业,通常就是「计算机类」的专业

类似地,下表所列出了名称中含有「电子商务」一词的专业,虽然电子商务需要依托于互联网,但它们也不是计算机类专业,其学生毕业后,对口单位也通常不是「互联网大厂」:

计算机专业毕业人数(计算机专业毕业的人)(11)

说了那么多,那么到底什么才是「计算机类」专业呢?

其实,教育部在「普通高等学校本科专业目录」中写得清清楚楚,计算机类专业一共有 17 个,完整清单如下:

计算机专业毕业人数(计算机专业毕业的人)(12)

仔细看看上述计算机类专业清单,可以看到,除了众所周知的「计算机科学与技术」和「软件工程」等专业之外,还包容着一些看上去「根本就不像是计算机类专业」的专业,比如,光看看名字,你能想象「新媒体技术」、「电影制作」、「保密技术」和「服务科学与工程」这样的专业,居然也归属于「计算机类专业」吗?

而且这里头还有一个「坑」,看到计算机类专业中有一个「数字媒体技术」专业没?

其实,专业目录中还收入了一个「数字媒体艺术」专业,这两个专业名称只差一个字,多数人都「傻傻」地分不清,但看看一下「数字媒体艺术」专业名录,你会发现,其实,它是艺术类专业,这两专业,离得可真有点远!

计算机专业毕业人数(计算机专业毕业的人)(13)

对教育部发布的本科专业目录的介绍与分析,就到此为止。

客观地说,教育部公布的这个计算机类专业设置,并不十分合理,中国工程院李国杰院士就指出【5】:

有的专业重复设置,比如安全方面就有三个专业:信息安全、网络空间安全和保密技术,有些专业又太细,比如「电影制作」也是计算机类的一个专业。国际学术界都认为,集成电路设计和人工智能属于计算机学科的分支,但教育部没有在计算机类中设置这两个专业,目前都设置在电子信息类中。

李国杰院士所说的两个专业,我摘录如下:

计算机专业毕业人数(计算机专业毕业的人)(14)

「人工智能」专业我在前面说过了,这里再重复一下:对于高考生来说,你可以把「人工智能」专业当成是「计算机类专业」,不过要注意,你报考的这个专业所在的学院,可能未必是「计算机学院」。

至于「集成电路设计与集成系统」,国内大学中将它归属于「计算机学院」的并不多,这点是需要注意的。

三、计算机类各专业解析

前述介绍过,计算机类有 17 个专业,那么,我到底应该报哪个专业呢?

要想弄清楚这个问题,必须把话题扯远一点,先了解一下当前这个时代,然后你才能知道,对于自己来说,选哪个专业更合适。

时代背景与技术发展趋势决定专业前景

人们通常所说的 IT,其实是「Information Technology」这个英文短语的简写,中文译为「信息技术」。

所谓「信息技术」,顾名思义,就是与信息传输、存储和加工处理相关的技术,其中的核心就是计算机技术。

计算机可以看成是一种能自动处理信息的机器。因为信息技术以计算机技术为核心,所以,人们通常就认为 IT 业就等于计算机业。其实这种说法并不准确,信息技术的范围要比计算机技术广,不过这种差别无关紧要。

计算机技术本身有一个很有趣的特点:

过去复杂的技术,后来变简单了,然后人们开始尝试发明新的技术,用它来解决更复杂的问题。

这种技术的进步,是一波一波的,我们将其称之为「技术浪潮」。

计算机专业毕业人数(计算机专业毕业的人)(15)

,