你好学霸!名校学姐教你成为计算机科学专业的最强大脑!

 

我们可能现在目光短浅,但是从不吝啬前进的步伐。...





关于【你好学霸】【你好学霸】邀请了海外名校,成绩优异的学长学姐分享他们身经百战总结出来的学习经验和方法。想要了解哪所院校哪门专业哪一方面的经验方法呢?留言或私信小编,说不定下一期就能看到了呢!
同学们好!我是易课的 Mentor 何苗,就读于滑铁卢大学的计算机科学(CS)专业,今年大四,马上就要毕业啦!感谢学校难得的带薪实习项目(CO-OP),让我有幸在加拿大拥有150年历史的领先的金融保险公司SunLife Financial(永明金融)体验了 System Developer 的工作,又在起源于英国的曾参与悉尼歌剧院、鸟巢等世界著名工程建设的全球化工程咨询公司 Arup Inc. 作为 System Designer 进行实习。经过四年的学习和实习,我总结了不少有用的学习技巧。所以今天就跟大家分享一下我学习计算机的一些心得。

以下四句话就是我想要说的四个方面:好记性不如烂笔头,自己才最了解自己 ,Think out of the box ,条条大路通罗马。



上课记笔记我最推荐的还是拿纸和笔来记笔记了。

首先,抄写纸质笔记可以帮助加深课堂内容的印象。虽然现在很多教授都会使用幻灯片,但是仅仅抄写关键词都会让我对这堂课的内容有很深的印象。

我记得有一门课的教授非常喜欢用幻灯片,但是要求学生用纸笔记笔记,甚至拍照都不被允许。上课的时候大家都非常手忙脚乱,但是在复习的时候我却非常感谢这位教授。在看笔记的时候我甚至可以回忆起教授的脸和她讲这个知识点的时候的语气,可以说是印象非常深刻了。

其次,纸质笔记也可以成为复习时的 Guide Line,在复习的时候帮助梳理知识脉络,让复习可以更加有条理。我在期末复习的时候最常做的一件事就是笔记重抄:对照幻灯片把笔记重新整理抄写一遍,这样的复习对于记忆部分不算多的计算机课程已经非常足够了。

最后,对于学习计算机科学的同学来说,每天盯着电脑的眼睛已经非常疲劳了,纸质笔记可以给眼睛一个放松的机会哦。





Debug 应该是学习计算机的同学们永恒的话题了,它是调试程序、去除错误的意思,是程序猿每天都要必须做的事情!

出现 Bug 的时候都会非常的纠结,到底是哪里错了呢?我知道很多人都会说,Debug 跟写程序的人应该是不一样的人,这样可以有“a fresh pair of eyes”。

但是实际上让别人看自己的 Code 有两大缺点,第一是相对较慢。每个人的脑回路都不一样,一千个人眼中有一千个哈姆雷特,而计算机 Code 千变万化,那么让别人理解你的脑回路有的时候就像穿越虫洞一样困难,解释起来也非常的浪费时间;第二个缺点就是,如果依赖于别人帮你 Debug ,那么有的时候你也许没有办法知道到底错在了哪里,那么不知道错在了哪里就无法了解并总结自己写 Code 的个人风格了。

下一次如果遇到同样的问题,你可能并没有办法根据对自己的了解总结出经验,用经验来解决问题。而是更加依赖于别人帮忙 Debug ,这就是一个恶性循环了。考试的时候谁帮你Debug 呢?

其实别的学科也一样,学习过程中自我反省是非常重要的。子曰:“吾日三省吾身”,虽然孔子是指道德方面的反省,但是道理是一样的,学习时我们也应该时常自我反省从而实现“自我改良”。

说起 Debug 还有非常重要的一点就是,一定要养成写注释的习惯!!!

写注释可以说是学习计算机的第一课了,相信每一位教授都会强调,写注释并且写好的注释(清楚但不啰嗦)对于 Debug ,以及未来的 Coding Life 有非常大的帮助。写好注释不仅可以帮助TA更加轻松的理解你的 Code,从而让他们觉得你是一个思路清晰的人,还可以帮助未来的自己回头理解或者修改这些Code。

因为每天的我们都在改变,一个月之后回头看现在写的 Code 很有可能已经完全没有办法理解了。千万不要因为觉得当下自己的 Code 非常的浅显易懂而觉得没有注释的必要!为了不给自己或者他人制造麻烦,在打 Code 的过程中一定要写好注释哦!





同学之间的交流讨论非常利于填补自己的知识漏洞,帮助学习。

在滑铁卢大学,用的最多的网上交流平台叫做PIAZZA。这是一个非常有用的疑难解答平台,每天都会有层出不穷的讨论发生。每天我都会花一定的时间来看一看同学们又提出了什么问题或者想法,教授或者别的同学是怎么回复的。在这个平台上思想的碰撞,经常让我受益匪浅,开始重新考虑一些我忽略或者没有想过的问题。

每一门课都会有一群思考的很深的同学(有的时候是TA伪装,哈哈哈)提出一些非常有意思但是我从来没有想过的问题,这些问题的讨论过程通常有趣并且帮助提升思想水平。学习不能仅仅是自己埋头苦干,也要积极听取别人的想法才不会让自己的陷入思维困境。





计算机科学一般在第二年就要开始算法的学习了。算法的理解和编写需要非常强的逻辑思维能力。

我一开始算法的学习可以说是非常的吃力了。这个时候,自主的拓展学习就显得尤为重要。因为每个人的理解能力不一样,尤其是在通过英文交流的过程中,理解很容易产生偏差。

我清楚的记得在一节算法课上,当时教授的解释我没有理解,在 Office Hour 的跟教授讨论的时候教授都露出了“我觉得我讲的贼清楚了这怎么能不懂”的表情。一直到我自己在网上搜索,观看了Youtube 上面的一些讲解视频后,终于找到了最能让我理解的一个解释。

有的时候,教授在经过多年的学习以及经验的累积后,很难做出让没有经验并且知识浅薄的学生理解的解释了。在学习陷入困境的时候,仅仅是依赖某一个人或者某一种学习方式容易让你陷入死胡同。

自主学习可以帮助找到让自己最容易理解的解释。同时搜索与延伸,采用不同的学习方式可以开阔眼界,帮助知识储备,让你在不知不觉中对这门学科的学习有更深的理解。





没有一门学科是容易的,都要付出努力才可以获得好成绩。学习没有捷径,只有付出时间和汗水才能收获果实。说法虽然很老套,但是是实践出来的真理。最后送大家一句话,来自计算机科学之父 Alan Turing:

We can only see a short distance ahead, but we can see plenty there that needs to be done.

我们可能现在目光短浅,但是从不吝啬前进的步伐。

以上就是我们本期的【你好学霸】








 留学Easy客原创文章
如需转载联系后台


    关注 易课教育


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册