ICS Y2S1 Review

¡Adiós!

Posted by KaKi on February 23, 2020

Aprender sin pensar conduce a la confusión; Pensar sin aprender termina en peligro.

学而不思则罔,思而不学则殆。

为什么是现在写这篇文章

其实只是心血来潮,想想新学期开始的前一晚写一篇回顾,很酷,也是对上学期最好的致敬。

再有的话,我也想做一些让别人能记得我的事情。每年的课程情况都会变化相当大,遑论COVID-19这样的黑天鹅。我不认为再做一次上届有人做过的事情是重复造轮子,越具有时效性的信息也许对后来者就是越有用的。

正题开始。

CSE101

这门课的名字是Computer System, 中文翻译过来即计算机系统。主要的内容大概是两块:计算机的硬件组成及这些部件的工作原理,以及C语言的内联汇编让你对寄存器又更深一步的理解。课程的最后会带有用电路门表示逻辑的内容,不是很多但考试会考。

测试一共有3次,前两次占比10%,但形式和往年有很大的不同,改为去阶梯教室闭卷手写汇编代码。内容不多,如果考前认真研究了ICE上的.cpp文件难度不是很大。

最后是期末考试,选择题主要考察课件里的内容以及课件后面的Q&A,往年已经有人做过答案了,可以考前进行记忆,简单题还是考察汇编,和往年试题中题目相似几率很大,多刷几套说不定就遇上了。

这门课的讲师是Steve Guan,由于我的lecture是在9-11,我去听讲座的次数屈指可数,仅有的几次给我的印象也不是非常好:语速比较快而且声音很轻,如果在后排很难听懂,并且QA部分也是一带而过。种种这些让我更偏向10点爬起来自学ppt然后再抽时间再回味。

我的主要学习方式:

  • 平时看ppt,尝试自己解答后面的Q&A然后对一下答案
  • 小考前弄懂汇编文件的思路和处理方式
  • 期末考前刷往年试卷+回顾当时看ppt的笔记

可能用到的资料我放在下面这个链接里:

戳这里,提取码:1747

CSE103

说到这门课我第一个想到的就是我的老师Lucie Lévêque。

就是这位:有没有好了的兄弟

第一节课的时候我对她的印象不错:法国人,比较热情,有点法国口音不过问题不大。

到了第四节课就不对劲了,总有学生可以惹她生气然后让她中断讲课,而那些学生在我看来也罪不至此,即便这样她也在课间前说了大意是“如果有人不想上课,请你课间自动离开”的话。

后面我就很少去了,这样的罢工行为总让我想到她在巴黎的黄背心同胞们,是不是这是法国人的特质呢,谁也不知道。

另一个老师是Xiaohui Zhu,很多同学叫他小灰猪或者是little gray pig。人很nice,有问题都会很耐心的回答,上课的话有很多自己的东西。非要说无非是典型的中国式英语以及ppt的死亡配色,请感受下图: 害怕的同学把保护打在公屏上

内容方面,主要是数据库的理论知识已经数据库的设计和优化,夹杂了一些SQL语句的学习,可以说是数据库版的CSE101。

考察的形式是两种:作业,测试和期末考试。两次作业第一份10%第二份15%,题目看起来很久没有变过了,只要课件看了懂了问题都不大。测试主要是考察SQL的语法,把那四个ppt背背熟也不会特别难。期末考试40道选择题,涵盖本学期所有知识点,这个就有些玄学了。

值得注意的是Lucie的课件和小灰猪的有一定区别,学有余力的可以看两份。

分享给大家的是小灰猪版的,颜色已修正,不会那么辣眼睛。

戳这里,提取码:w8yb

CSE105

这门课的名称是Introduct to Programming in Java,i.e.Java程序设计。

这门课相当重要,但并不要被它吓倒,主要原因还是有许多应用数学及其他专业的对于编程毫无基础和概念的学生在,课程内容就不能设计难度过大或者内容过多。

任课老师有三位,下雨的大冬天还可以短袖短裤骑单车的苏格兰狂战士Andrew Abel,中国老师Jianjun Chen,以及邻近期末上任的东南亚老师Erick Purwanto。论节目效果Andrew最强,往往会有哄堂大笑的时候,Erick比较认真负责,这点你在lab的时候会感受的更深,Jianjun上课比较少,印象不深,但至少是不赖。哦对了,他的课不给签到码,也不知道为什么。再有一位EAP的老师James Major,负责给每周出现的新的编程名词出试题(不计分),让你加深理解。

学这门课之前你应该对自己有一个大概的认识,即你对编程有多少掌握:

  1. 如果你是初学者,我建议你一步一步跟着老师走,lab和hw(回家作业)的文档最好都掌握住,在一开始的学习中有意的体会什么是面对对象,如果谈恋爱了可能会有对象Buff加持
  2. 如果你有一些编程基础,除此之外我还建议你找找Java不同的方向,至少对于以后的软件工程或者是Web开发肯定是有一部分帮助的,而这也是你对课程的延申。
  3. 如果你是大佬,你大概看不到这篇文章。如果你碰巧看到了,我相信你也有自己的对你来说更优的学习方式,不必过于拘泥于我的文字。

考察形式的话,首先是每两周会有一个Checkpoint,一共5个,占比15%的总分。每个有效期最晚完成期限大概是自发布之后内两个礼拜,这届也有很多学生拖到最后发现前面的完不成最后很遗憾的失去了这部分分数。

课上会有一次测试,大概是期中前后,今年考察的是字符串的处理,也是15%。接下来会有一个大概一个月的长期作业,占比30%,主要考察内容是Java的GUI。值得提的是每年都会有人请代写的完成,而那些写手都是老油子,都是杀鸡用牛刀的代码风格,和课上交的大相径庭从而直接被判学术不诚信的。每年都会着重强调请独立完成。

期末复习的话,没什么好建议,兴许是把lab上的东西都复习一遍?期待有别人的意见。

这门课我就不放资料了,主要是因为我自己也没整理好,都是零零碎碎的。网上资源也不少,真要想学直接搜搜就有。

CSE107

这门课的名字是Discrete Mathematics and Statistics,主要还是离散数学。

微积分,线性代数,离散数学在我看来是计算机学科的三大预备知识,而离散数学的意义就在于让你能有程序化的思维,能从高中数学的连续数学中走出来,学习属于计算机的数学知识。很多的内容在高中应该有涉及到,比如排列组合,比如归纳证明,比如集合……总体来说是相对陌生的知识,难度众说纷纭。

任课老师这学期换成了两位:前半段Ka Lok Man,后半段Gabriela Mogos。前者常年穿黄T恤,喜欢课上点名。如果你不希望被点到,不要迟到,不要穿颜色鲜艳的衣服,也不要坐前排或是一排座位的两头。另一位应该是新来的,罗马尼亚女老师,人也不错,耐心负责,就是容易听睡着(老师对不起)。

测评形式也很明了,两次测试各占10%,期末考试80%。只要把课上内容弄明白,tutorial能及时订正理解,相信问题不大。

我在期末复习期间自己整理了一份内容提纲,希望对你们有用。

戳这里

总结

第一学期算是正式迈入码农了,给我的感觉是忙碌又不忙碌,周围水平也是参差不齐。有豆哥(week6在问Netbeans怎么装的同学)、label哥(汇编考试前一晚问label是什么的同学),也有已经进lab做项目甚至在IEEE发了paper的大佬(此处@39分小助手)。还是希望大家能找准自己的定位,不要自怨自艾也不要骄傲自满,尽管成绩可能不理想,但只有收获不减,在未来也一定可以证明自己。

23:48,算是开学前完成了这个突发奇想出来的行动。

晚安,希望大家身体健康,新学期不会因为疫情而有影响。