西浦信息与计算科学(ICS)专业大二刷分tips

Posted by Haoxuan (Horace) on 2016-08-22

写在前面

这是一篇来自学长的强行约稿。讲道理自己并不是最合适说这个话题的人,因为自己的大二的均分刚刚过70,系里70+甚至接近80的人的不胜枚举。但是自己别的方面又没啥亮点,并不知道该写什么好,就以一个loser的身份分科目谈谈大二ICS为啥要刷分以及在学术上应该要注意哪些问题。希望水文能对大家有点帮助(估计并卵。注意啊,这个写于23th, Aug.,2016. 只能做参考,有的老师喜欢变套路,也有可能在下面的学期里老师就换掉了。

兴趣为王

学计算机最重要的就是兴趣。如果你不喜欢coding,不喜欢在电脑前一坐就是很长时间,不喜欢钻研解决big&&clear的问题,那么确实就应该在大一考虑是不是应该换一个专业或者方向。学计算机不需要很聪明,对数学的要求也要看方向而定(绝大多数偏软件的方向应该要求是相当低的,不然我也活不成了,笑);但是期望你在遇到问题的时候要有耐心,思考问题的能力,有逻辑能力和用google去翻stackoverflow的能力。

为啥要刷分?

如果你觉得自己是不幸到了这个专业的孩子,哦答应我亲把各科弄及格好么,毕竟重修一科是5000大洋,不说是父母的血汗,也是可以买个电脑或包包的钱了。大二挂科还意味着你选择去利村的话就会显得很匆忙,玩儿大了可能就去不了当学弟学妹了。

实际上,如果你只打算申请英国澳洲就当我没说,但是其它地方可不是只看后两年成绩啊亲。趁年轻给自己多一点选择空间多好。万一一不小心奖学金什么的,啧啧啧。


分科目攻略

在这里我只说专业课;至于EAP(或者high level 的语言成绩),鉴于本学渣EAP成绩实在惨不忍睹,就不卖萌了。但是EAP很重要,很重要,很重要。能不能拿奖学金赢取高富帅白富美走上人生巅峰全看你的语言了,而且,写东西的时候才知道词汇量少有多痛苦啊QAQ。

the 1st Semester

0. CSE 101 Computer Systems

教材:COMPUTER SYSTEMS: ARCHITECTURE A NETWORKING APPROACH

By R. WILLIAMS

我这门课是关关(关圣威爷爷)教的。如果还是他教的话,上课前请睡好觉,最好找个小伙伴一起坐在前排,这样可以有效防止犯困。在一个暖暖的午后,你因为一开始听不懂某些concepts走神,然后就开始伴着关关软绵绵的声音渐渐的合上了眼皮,然后,就睡着了。然后,就没有然后了,你大概会因此翘课,然后发现期末啥都不会……

一开始几节Lectures是会比较困难的,他会讲一些玄乎其玄的概述啥的。大概就是书的第一章(其实这书又翻译版,不太贵),关于书,如果你看原版的话对阅读压力是会比较大的(当然可以的话还是要看原版,因为准确而且能练阅读)。我当时是看中文版,看不懂的时候看原文准没错(狗屎的译者)。

其实没有这么难,从介绍计算机的各个部件开始(ROM和RAM有啥区别啊balabala)这是段很水的内容。如果你前面没听懂,没关系,从这里好好开始切入。不要觉得水,2节Lecture不听你就会惊呆了的,穿插着可以翻翻书。对这本书的态度是,不要太过认真,但是前半本书的一些概念一定要搞清是大概怎么回事情。因为这本书试图从方方面面介绍一个计算机(以及计算机网络的构成),所以很多部分(尤其后半本书)的概念他讲得并不如专门讲该方面的书籍好。比如操作系统,它的介绍就过于简略。而且他深的东西,这门课也是用不到的。

后面是C内联汇编,其实是很简单的一门语言因为完全没有高级特性。但是也因为太低级了,所以写出一个能看的程序是非常难的(即使你用C可能就5分钟的程序用汇报可能要花数个小时)。无它,就是耐心。写第一个Assignment的时候像我一样的普通学生可能会遇到大量困难(当然我知道后届中大神很多),但是你问关关的话除了明确题目要求(注:题目要求不明确也要问清楚)是不可能得到答案的。这个时候,适当往后翻一翻幻灯片是绝对有帮助的(吐槽关关强行要求自学),然后就是Google+stackoverflow自己去翻答案,实在不行就是可以问猪脚,哦不,是助教;他们绝对是无所不知的(论lab的重要性)。

过了汇编这关剩下的就没啥了,后面会学一点简单的逻辑门和小计算(大概只需要小学数学吧)。

考试的话,往年卷子一定要搞懂哈,他复习课上重点要多看看,书的话,重点章节可以过一遍(比如说例程什么的对吧,不过好像每年侧重点都不一样)。

1. CSE 103 Introduction to Databases

教材:DATABASE SYSTEMS

By T. CONNOLLY AND C. BEGG

凡是Paul Ross的课,我只能说,看书吧。不想忍受他放给你的影印版最好开学就去图书馆抢一份原版,不然hhhh超级贵这本书。Paul的课我的评价是价值不大,大概永远只会讲一些粗枝条而且他考试绝对不会考的而且及其水内容(不过还是要去的听一听),lab的意义也很一般(Access…..反正就当练练手)。他的Assignment从书上会摘大量的概念,课堂有一次测试是要求手写SQL的增删查改建表删表(当然啊他上课只讲讲基本的增删查改)。考试都是选择,当然都是书上犄角旮旯里摘来的概念所以很难拿什么高分,所以没有办法只能看书,顺着他讲的章节看下去,看原文理解书上的概念。

期末考试前会发一个提纲,上面大概10道左右的题,这些题要好好找答案。
书要一直看(没记错是在14章之前,每个版本不太一样),千万别学我,考试前一周,撸了12章,整个人都不好了T.T

2. CSE 105 Introduction to Programming in Java

教材:N/A

很简单入门课程,没啥好说的,跟着听课/做练习就可以很好了。
我觉得对有点基础(就是高中学过随便哪种语言的基础语句)的同志们来说,这门课全程都是尿点。当然,听一听,好好刷刷分还是好的。如果你没有基础或是比较害怕编程,跟下来以后应该就算是入了个门槛了。
Object-Oriented Programming的概念还是可以听听的,其实这算是哲学了吧,想象自己是个上帝就行(笑。
如果你觉得这门课听不懂,推荐中文版的Head First系列。另外开学初就最好找个身边的大神抱大腿让他/她给你讲讲每节课都说了啥。
如果你觉得这门课太简单,推荐Thinking in Java,这是本我读两页就一定会睡着的书,你要是读完了一定水平不知道比我高到哪里去了。

3. CSE 107 Foundations of Computing Science

教材:N/A

其实是离散数学基础,讲得也非常非常之简单。Ka Lok Man是我见过对待tutorial最认真的老师,没有之一,tutorial一定要去听。

不过内容确实听起来很简单啊,数字,证明法(就是归纳推理),集合,关系,函数,逻辑,组合数学,概率和概率分布;大多是高中以及我大一接触过的东西。

不过大家分数并不高,因为Ka Man对过程的详细程度近乎bian tai。反正我觉得很正常的推导,在他那里都是跳步(说明逻辑不严密)。所以千万不要直接写结果,也不要做你理解的跳步。

考试题量略大,平时建议注意手速。

the 2nd Semester

0. CSE 102 Algorithmic Foundations and Problem Solving

教材:INTRODUCTION TO THE DESIGN AND AALYSIS OF ALGORITHMS

By A. V. LEVITIN

推荐阅读:INTRODUCTION TO ALGORITHMS

By T. H. CORMEN C. E. LEISERSON R. L. RIVEST AND C. S

哈哈哈哈哈哈要是忽略老吕同学的口音和唾沫的话,他讲课还是很棒的。主要是看得出来他备课是超认真的。表达上确实有点困难,这会导致有的时候会影响自己讲课的思路23333。不过你会觉得他这样都能讲得很明白也是蛮nb的2333333。本学渣表示算法学得不咋样就不那误人子弟了,不过多问还是好的。上课要跟上他的思路,算法这种东西不是天才的话下了课以后一你不会去主动看二看了也未必自己能想通三想通了他也未必对。

教材是很好的一本书,入门很好,我这种弱智基本都能看懂的那种。不过听说不够全,反正面对算导我是表示怂了,大概抽空会开始看吧(逃

这门课的考试如果平时听了,assignment做过是没有什么难度的。

1. CSE 104 Data Structures

教材:DATA STRUCTURES AND PROBLEM SOLVING USING JAVA

By M. A. WEISS

和国内大部分高校不同,我们的数据结构是Java的而非C/C++。这是因为我们入门语言是Java,Java实现起来在语法层面上坑也比较少现成的轮子比较多(当然要知道数据结构算法和语言是没有什么关系滴,任何一种图灵完备的语言都可以)。
关关的课还是困啊2333。
应付考试的话,好好听课读他指定的章节就可以,而且考试和Assignment总体不难(然而还是没考好,哭)。
但是我觉得课上讲的内容偏少,尤其和这门课的预定大纲相比,以后要找工作的话,红黑书B树Skip list(当然这些我现在都不会)等一干结构还是要自己看的。

2. CSE 108 Operating Systems Concepts

教材:OPERATING SYSTEM CONCEPTS

By A. SILBERSCHATZ P. B. GALVIN AND G. GAGNE

这门课的安排其实是非常非常非常不合理的。一是没学过C的话,操作系统学起来很痛苦;二是已经有算法数据结构了然后又在同一学期安排了这样的大课;三是课时实在是太少太少太少了。

所以黄老板(跟着他做项目,我习惯就叫老板了)基本上一节课最多能刷教材(也叫恐龙书)的4章过去,什么概念呢?每章大概100~200页吧。全部都是概念。

这就很难受了。我的策略是跟着幻灯片的划出的知识点看相应的章节,完全是一周能看多少就是多少了。对了即使如此,但是还是最好读英文第9版,因为中文版翻译出来比英文还天书(译者bullshit一样的再创造能力),实在不行可以中英对照。

另外,黄老板的研究方向是网络和安全,所以安全那两章有必要好好学喽(即使纯粹为了考试)。

期末的复习课一定要去!一定要去!一定要去!

3. CSE 110 Human-Centric Computing

教材: N/A

又是Paul Ross的课,我表示无力吐槽。这次他的Assignment和上课还是能学到东西的,但是考试和Lab真的是一团糟。Lab练习VB不知道是因为什么奇怪的原因(喂这不是小学初中学的么肿么画一个界面出来)考试的话很不幸这次连书也没得参照了。不过他考了很多Java Swing的继承关系还有方法名字(对,你没看错就是方法名字),还有一部分就是Html 5的标准(感觉有些点真的是从ISO标准扒出来的笑)。反正我是不太懂这些考这些的价值,可能比较主观。

这门课认真做Assignment的话分数不会低因为三个Assignment价值65%,而且没有什么难度。


留言: