【规划篇】哪些计算机课程值得好好学?
在我们大学四年里,虽然我们会学到很多很多课程,但是说实话,绝大部分课程都是水课,只有小部分计算机相关的课程,和我们技术提升或者求职息息相关。
但哪怕如此,绝大部分的学生,也没有好好对待这几门课,基本等价于没学,当然,也有可能是他们没有意识到这些课程的重要性,抑或是课程过于枯燥,以至于他们学习不下。
所以帅地,仅从求职的角度看,跟大家说一说有哪些我们应该好好学。
另外我这里需要再次强调一下,我这里是仅从求职的角度讲的,我这本书就是讲求职攻略的,因为理论上,只要你有时间,任何课程都是值得学习的,但是呢,很多人其实并没有那么多时间去学,而且计算机的同学需要学的内容特别多,所以我们还是需要把时间花在刀刃上!
最核心的几门课
在我们大一到大三这三年里,我们至少需要学好这几门课程:C 语言,数据结构与算法,计算机网络,操作系统,数据库。
这几门课,不仅和面试息息相关,考研计算机,大部分学校也会考这几门课(数据库除外)。
首先就是 C 语言,很多学校大一会开始教,如果你学好了 C 语言,特别是理解了指针这些,那你以后学习其他语言会容易很多。
当然,有部分学校并不会教 C 语言,比如可能会教 Python,Java 或者直接教 C++。不过没有关系,没有教 C 语言,你学好其他语言就行,当你需要用到了再学。
其次就是数据结构与算法,特别是这门课,绝大部分的学生,都没有学好,学好数据结构的核心是coding,就是要多打代码去实现,而不是只会理论。
关于 C 语言和数据结构与算法,我前面的文章写过,这里就不强调太多了。
然后就是计算机网络,这门课实在太重要了,你想啊,我们之所以能够上网,不过设备之间能够通信,就是因为网络啊。
特别在你以后做项目,基本处处会遇到网络相关的问题,所以大家一定要学好网络相关知识,面试也考的特别多。
最后就是操作系统和数据库,虽然在我们使用电脑的过程中,对于操作系统或者数据库的直接接触会比较少(计算机网络相对多一些),但是这两个玩意,面试考察的多,而且对你理解计算机,帮助也很多。
另外就是关于计算机网络,操作系统,数据库这三门课,大部分学校会在大二或者大三教,并且教程都是一本厚厚的天书,很多人会看不下,反正我当时一看就犯困了。
这个其实非常正常,大家也可以先找个视频跟着刷,有个大概的认知,之后再看教程,人与人最大的区别就是,看你能否坚持把枯燥的知识给啃下来!
次核心的几门课
我上面说的那几门,算是最核心的,当然,我肯定会被大佬喷,因为在很多人看来,可能会觉得,计算机组成原理,编译原理,离散数学,汇编,软件体系结构等这些也是非常非常核心。
如果从理解计算机的角度上看,这几门确实非常重要,也应该和上面几门的重要程度并列,但是我说了,我是从求职以及有限时间的角度讲的,虽然这些课程也非常重要,但是这些你不认真学,你只需要不挂科,那其实基本不影响你面试。
你看很多转码的同学,就不学这些。
不过呢,作为科班同学,除了我说的上面几门之外,对于计算机组成原理,编译原理,汇编语言,离散数学这几门,其实也是非常值得学习的。
特别是对于汇编语言,不懂也至少要能看懂一些,这样有助于你后面去研究一下源码。
总结
计算机专业,理论上学越多越好,不过根据我对大家的理解,绝大部分人应该学不了那么多,一边是学业占用不少时间,另外一边是需要深入学习一些语言,学习框架以及做项目和刷题,以及需要尽早去实习。
所以呢,如果有学有余力,那么你可以把我说的次核心的课程,也好好学一学,跟着做一些实验;但无论如何,你都要把我说的最核心的课程,都好好学一学。