以下是转专业同学在CS的知识学习中,常见的误区:

 

  1. 死啃课本 – 按部就班学习基础课

 

要知道,作为一个转专业的学生,你一方面可能学习时间不够,一方面由于完全没有基础,也没有接触到实践的内容,会导致你丧失动力、学不下去。

 

  1. 只抓面经题 – 知识范围小

 

有的同学认为,只抓面经题就可以了,面经考什么我就学什么。但实际上,面经题的知识范围非常小。不是所有的只是都会在面试中出现,面试中出现的也绝非全部的知识。你一定要有扎实的基础,才能在面试中像专业学CS的人一样游刃有余。

 

  1. 知识点顺序混乱 – 不成体系

 

由于没有前辈传授经验,有的转专业同学知识点混乱、不成体系,今天学点这个明天学点那个,结果都只掌握了些皮毛。因此学习的时候还是要有系统的顺序步骤的。

 

  1. 技能局限 – 没有业界应用

 

那么究竟怎样才能高效、系统性地学习?

 

记住以下三点:

 

  • 码!注重实践,一定要把学到的东西在实践中、项目中串起来。实战出真知,看代码不等于写代码。
  • 问!老司机学长学姐带路,精辟省时高效
  • 做项目,实际应用流行技术、框架和数据库等,在实践中,印证理论基础,并能够理解在工业应用中的常见常考问题。

那么具体如何系统地掌握知识点?

 

上图中,左边是大致的学习顺序。

 

首先,最基础的数据结构和算法你要懂、核心的语言要会。

 

语言方面,现在流行什么你就可以学点什么,比如现在就很流行Go语言。其次是操作系统,也同样是硬性要求。虽然一开始你可能不明所以,不知道为什么要学它,但工作多年之后,你就会明白当初并没有白学,真的很实用。

 

关系型、非关系型数据库,你也都要了解。网络与网络安全、软件测试,这些并非必备“have to know”,但可以说是“good to know”。尤其是软件测试,它对于全栈工程师来说,是其本身必备的一种能力。很多公司其实并没有专门做测试、或者QA的团队。哪怕是做QA,也只是在开发QA的软件。很多时候作为一名工程师,你是需要自己拥有测试软件的能力的。以上,是我们要学习的基础。

 

图片的右边就是比较高级的内容了。这些知识是难点,但也是你必须要掌握的。因为它们在你找工作的过程中,将会是非常有力的工具。

 

图中我们罗列了云计算、Wed开发、移动开发等非常多不同的选择,但大家在实际学习中要确定一个大致的方向。比如你想做大数据,可以学一学云计算;如果你喜欢IOS、安卓,就要去学一学、做一做移动开发相关的内容。