cover | coverY |
---|---|
../../.gitbook/assets/layered-waves-haikei.svg |
0 |
{% hint style="success" %} 作者 @Ricky Xu {% endhint %}
cue了很久的选课篇还是终于发出来啦。
这一次的推文,相比于课程介绍,其实我想更多聊一下选课上的建议。因为我觉得,在大家还没建立起对于这些课程的概念之前,选课会是一件很纠结很困难的事(去年我为了选这个课想了好几天hhh)。
至于大家想要的课件方面,我这边只会给大家放必修课的课件。原因是Y2可选课程的数量实在是太多了,必修课选修课加一起有整整19门,而大家最后也只能上其中的8-9门而已。虽然我也找了修其他课程的同学要到一部分,但数量实在是很多啦,就不在推文里一起放出来了。如果你想要具体某一门的课件,请在后台私信我,我有空的话可以帮你联系一下选了这门课的学长学姐们。
另外其实,关于这些课的分享,之前也有16届的学长学姐做过。但因为每一年课程的细节有所变动,所以我在这篇推文里只会以我这一年的情况为主来做介绍,大家选课的时候请以学校的官方信息为准。
好了不多说,直接开始正文吧。
必修课:COMP201,COMP207。
可选的选修课:COMP211,COMP218,COMP219,COMP228,COMP229。
首先讲一讲选课的规则。利物浦大学要求全体学生在一个学年里修满120学分的课程,上下学期各60学分。然后,除了COMP281-285这五门都是7.5学分以外,其他的课程都是15学分。因此,大家一个学期最多选择四门15学分的课程,或者三门15学分的课程+两门7.5学分的课程。
Q:可不可以选两门15学分再上四门7.5学分的选修课呢,这样我就可以学六门课了?
A:首先没人这么干。其次如果你这么干了,大概你会成为咱们历届2+学生里第一个累死的。
另外补充一个选课规则:16届毕业证上是可以有小方向标注的。比如ricky毕业之后应该是计算机科学理学学士,如果在Y2、Y3的选课是符合标准的搭配的话(选修了某些对应的课程),可以在毕业证书背后加上一个小方向。这个小方向包括ai、ds和算法三类,也可以不加小方向。当然这一条规则在Y2选课是用不太上的。因为正式确立小方向依据的应该是大家Y3的选课,即使Y2没有选择某个小方向的课,在Y3也可以调整过来。当然我在这里还是提一句,因为在之后选课的时候,如果18届还是按照这个规则来进行的话,大家是会收到一封带有pdf文件的选课邮件的,里面的pdf会讲这件事。
好了,接下来进入具体的课程介绍。(长文预警)
COMP201
COMP201,Software Engineering。当大家接触到软工这门课的时候,恭喜你们,从之前一年的初窥门径,到如今算是正式迈入计算机行业的大门了。在我之前的推文里,我有提到软件工程师这一职业。这是计算机行业最普遍的岗位,也是大家所熟知的程序员。但大家在学软工这门课的时候,可能会误以为这是一门文科生要学的课。
大量的理论知识。从开发模式讲起,需求工程、设计工程、建模分析、UML、测试与项目管理...软件工程听起来应该是一门写代码的课,但是结课之后你会发现80%都是在画图背概念。
上课的时候你肯定会烦躁疑惑:这么折磨人的课,为什么会被列为程序员的必修课呢?
这个道理我也是在实习的时候才慢慢明白的。优秀的程序员不仅要会做,还要会说,甚至很多时候,说比做更重要。在工作之后,大家并不是只是单纯做写代码的活。举一个很常见的场景,技术部门接到客户的某个需求,做了一个模型出来,接下来需要交给产品线去测试发布。但是产品线在对你这个模型缺乏足够认知的情况下,怎么去做测试?怎么去做技术上的评估?所以技术部门应该给产品线的同事做一个pre或者是出具一份相关技术文档。而这个时候,软工这门课里学到的很多知识就能发挥很大的作用。除此以外,工业界大量的实践也证明了:详尽的规划与良好的管理是高效工程的前提。
总之你可以把这些知识理解成,既是程序员之间约定俗成好的一种用来传递信息的语言,又是保证工程能按照一套公用的计划流程稳定高效进行的规矩。
没有规矩,不成方圆。
这门课的老师在我这一届是Thomas Carroll。是个看起来比较面善但是很注重规矩的教授。但也许是第一年教这门课,他设置的很多ddl都经常出现一些“折磨”人的情况(你们第二年应该会好很多),这里就不赘述了。课程的设置是两个各占20%的平时作业以及60%的期末考试。期末的话全是选择题,但概念很多很多,要记的也很多很多。总之这门课想刷分拿85+还蛮难的(我身边很多大佬这门课都翻车了),如果想取得不错的成绩,我建议平时多复习巩固,别积累到期末前一起来背。
链接:
https://pan.baidu.com/s/1k-PI6QlwByXWSmgjj\_PWsQ 
提取码:3t03
COMP207
COMP207,Database development。数据库的相关知识大家应该在大二的时候已经初步接触到了,这门课相当于是CSE103的拓展,学习的是数据库的具体理论知识以及数据库涉及到的一些问题和机制,包括数据库的并发处理、事务调度、数据库的安全、分布式数据库等等。
这门课的话我建议大家的学习方法和201一样,要经常复习巩固相关的概念。但是相比201,我觉得这门课的理论知识体系更加完善,所以学起来更加有整体性一些,是一个层层推进的过程。但是单个知识点的难度会比201更高,有些英文词汇的直译也很令人费解。总之虽然这门课讲的很泛,但大家一定要重视起来,多花时间在学习具体的知识点上。然后这门课也是两个平时10%的作业+80%的期末考试。期末考试和201一样是全选择题,但是难度并不低,有很多要结合理论知识解决实际问题的题目。因而这门课想刷高也是比较困难的,我们这届80+的印象里比较少。
这门课的老师是Rasmus Ibsen-Jensen教授,这位教授有一点大舌头,说话不太清楚。不过既然下个学期已经改成网课了,大家可以反复回看录像,相对来说我觉得比上课摸鱼要好一点(暴露了)。
最后在这里说一下,上学期的201和207都要多花心思学习。不仅仅是因为这两门刷分比较困难,这两门课往近了说,下学期的208是一定要用到的(自己设计软件项目,自己建数据库),往远了说是之后很多课程的基础,包括以后大家就业校招的时候都是必问的知识,所以请大家务必认真对待。
链接:
https://pan.baidu.com/s/1go\_XAGR5ST07OBOnR\_x2ZA 
提取码:61yo
COMP211
终于写到选修课了。
COMP211,Computer Networks。这门课我没选,因为相比之下我更喜欢COMP218和219(因为60学分的限制,算上上学期的两门必修课,就只能在选修里选两门啦),这两门课在之后另讲。
因为我没有选这门课,所以这里我也只能收集了一下其他学长学姐对这门课的反馈(以下非本人观点,为转述内容):
- 课程知识点比较多且杂,理解起来有些难
- 老师讲课的时候会吞词,有时候会听不清;人有一些凶,简单的问题可能不会回答
- ddl有一点点难,但给分还可以
- 考试的话都是基础概念和ppt内容,平时记得好就可以80+
说下ricky对这门课的看法好了:我认为从课程介绍以及课程内容的初步浏览来看,这就是一门讲计算机网络的课。网络方面的知识是很多程序员应该具备的,包括TCP/IP协议、三次握手等等,这也是面试时候的必考题之一。但是计算机网络这门课因为领域的特殊性,又必然会涉及到大量硬件方面的知识。对于将来想要从事网络方向的同学来说,这门课非常建议选择。但如果对自己未来的方向不确定,这门课可以作为知识体系的补充(可选可不选)。ricky没选这门课,是因为对于硬件方面的知识不算感兴趣,而相对来说又有更感兴趣的选择(218和219)。至于前面的提到的网络方面的知识,我认为可以通过自学课外知识来补充与完善,不一定非要花费一整个学期来学习这一领域整个的知识结构体系。
当然还是那句话,选修课一看兴趣二看刷分。建议大家根据自己的情况作出选择(请不要被我的观点左右了方向!)。
COMP218
COMP218,Decision, computation and language。这门课其实就是国内大学里要学的编译原理课程。从自动机和正则语言讲起,到上下文无关语言,再到图灵机,介绍了编译程序构造的一般原理和基本方法。这部分的知识个人认为在当前很多计算机的热门行业(特别是ai)有大量的应用,也是建议很多将来想走ai路线的同学学习的课程。
ricky选择这门课的理由也很简单,因为对于编程语言的由来比较感兴趣,并且从往届的学长学姐了解到,这门课的整体风评很好,所以选择了这门课。事实上也和我预期的一样,老师是个很乐意回答问题的年轻教授,上课的风格中规中矩,作业布置的虽然不难,但是还是非常贴合课程内容的,可以起到对知识点很好的理解作用(个人不是很喜欢那种拓展和思考层面比较多的ddl,平时作业虽然应当具备一定的考核性质,但是核心还是要帮助学生更好理解知识,尤其是对于初入某个领域的学生,不应该连基础框架都没搭好就要求高屋建瓴)。除此以外,课程整体的知识体系比较清晰,没有多且杂的感觉,所以我对这门课的感觉是比较不错的。
当然这门课也有一些缺点,那就是对于将来不走ai研究路线的同学来说,这门课对未来的帮助可能不是很大。毕竟这门课学习的知识在工业界虽然属于较为火热的名词,但是很多时候研究层面的东西落到工程本身就比较困难。如果是比较感兴趣想了解一下编译原理的话,我还是很建议大家来学习的。
这门课的知识结构算是由浅入深、层层推进。前期很容易,后期的话就会越来越晦涩难懂。但是只要掌握了做题的方法,理清了概念,我觉得拿到80+乃至85+都是蛮容易的事情。
COMP219
COMP219,Artificial intelligence。和西浦的CSE112介绍的classical ai完全不同,这门课讲的是modern ai,也就是当下最火热的机器学习与深度学习。这门课在我们这届基本上是人手一门的选修课,原因很简单:好刷分、大热方向。所以这门课也成为了每年抢课时最快被抢满的课。
课程从机器学习的经典算法讲起:决策树、K近邻算法、朴素贝叶斯,一直到深度学习的神经网络概念,并且还加入了模型评估的机制介绍。从课程内容来说,我觉得是蛮充实且丰富的。另外这门课还可以让你熟悉一下python这门语言。现在工业界python的使用频率是很高的,也有利于将来的工作发展。
老师是中国老师(你可以和他讲中文,他不太介意),并且是比较负责任的。虽然回邮件的速度不是很快(这大概是中国老师的习惯hhh),但是讲解的还是比较清楚的。相比其他老师我觉得他还是蛮勤劳的,每年都会根据研究界的paper和会议内容改进课件,相比CSE112那比较过时的ai intro,这门课显然是要出色很多的。
这门课的课程设置也是平时各10%的作业+80%的期末考试,但是因为期末考试比较简单所以均分大家都能刷很高。如果平时认真然后考前好好复习他给的模拟卷,我觉得拿到90+是蛮容易的事。
如果要我说这门课唯一的坑的话,那就是数学不好的人慎选。事实上ai方向对于数学的要求是很高的,甚至高过对于cs能力的要求(这也是为什么ai方向的申研数学系整体情况要好于cs)。我个人因为本身很喜欢也很擅长数学,所以这门课整体学下来我的感觉是非常不错的。但是如果对于数学不是很感兴趣的人,这门课繁杂的数学公式以及线性代数的一些概念就足够让你头疼很久了。
学习建议的话,建议大家每节课后都去把这门课学到的概念以及公式自己好好推导一下,然后lab的算法尽可能都用python实现出来。平时的作业难度不低然后给分也会压一点,所以每个ddl我觉得都要多下点工夫(特别是report要好好写)。
COMP228
COMP228,APP development。移动端开发其实是前几年非常热门的一个岗位,虽然现在随着人工智能和大数据的兴起而导致热度衰减,但是现在是我认为移动端开发其实对于大部分程序员来说是值得选择的一个方向。
这类岗位其实由于如今算法岗的火热,相对来说比较冷门。在之前我的推文里也提到过这一点,由于算法岗的需求量相对于工程岗本来就相对较少,再加之近几年的移动互联网崛起,算法岗的需求没有增加多少,但工程岗的需求却是增长了好几倍。然而,大部分应届生还是处于“把算法学好就肯定能找到好工作”的认知中,加之还有一部分人因为没有一门深入的方向,毕业时只能抱着“随波逐流”的心态投递算法岗。而最终导致的结果就是供需关系的极度不平衡:各大公司对于工程岗头部人才的争抢程度远超想象,而对于算法岗头部人才的需求却是远远溢出。所以其实学好了移动端开发,不仅薪资上不会比算法岗差太多,面临的竞争也会小很多,这也是我比较推荐大部分学生未来可选择的一个发展方向。
说回这门课吧。这门课主要是以swift语言为基础介绍的ios开发。学的东西蛮新的,作业偏多比较基础好得分。然后据我所知,期末考试概念比较多,但是会有压分。ricky没有选这门课,但说实话这门课也蛮喜欢的。这门课原本是放在下学期的,在我们这届才改成上学期(如果不换顺序的话我下学期应该会选这门课了)。如果以后对ios开发感兴趣的或者想走移动端开发这条路的,我会比较建议选这门课。不过这门课在我们这届算是比较冷门的课程,因而我也没找到很多学长学姐的反馈hhh。
COMP229
COMP229,introduction to Data Science。这门课是和数学系一起上的,名字是叫数据科学简介,但实际上全在讲纯粹的数学知识。比如线性变换、图论、拓扑基础、统计、奇异值分解、聚类等等,总的来说大概是图论+概率论+数理统计。
ricky是没有选这门课的。一方面在看到课件以后,觉得这门课只是单纯在讲一些数学知识。虽然我本身蛮喜欢数学的,但是我在本科阶段还是更想学一些偏应用型的课程,而且我觉得这些数学知识其实讲的比较笼统;另外相比之下我更喜欢218和219的课程设置,相对来说这两门课对于我申研的方向也比较有利,因此上半学期没有选这门课。
这门课我觉得比较适合那些将来想走数据分析路线的同学选择,课程没有平时作业,只有100%的期末考试。按照17届学长学姐给到的反馈,课程的概念理解起来相对来说偏难,但是如果好好复习,考试还是能取得一个不错的成绩。
这周的推文写了上学期的七门课,下周的推文会把下学期的课再一一做介绍。
给看到这里的18届同学搞个福利吧:我的微信号是rickyxhr,如果有任何关于2+的问题欢迎直接加我vx来问,这样我也不用天天跑后台看大家消息。但是也请不要过多叨扰哈哈哈,我也有自己的生活。(社会人士就不要来加了,这边不接任何商单或者是机构导师的邀请哦~)