跳至主要內容

计算机学习指南

fatSheep大约 2 分钟

计算机学习指南

目前存在的问题

借用CS自学指南open in new window的引言,我想能很好地表达为什么我认为需要一个指南

大一入学时我是一个对计算机一无所知的小白,装了几十个 G 的 Visual Studio 天天和 OJ 你死我活。凭着高中的数学底子我数学课学得还不错,但在专业课上对竞赛大佬只有仰望。提到编程我只会打开那笨重的 IDE,新建一个我也不知道具体是干啥的命令行项目,然后就是 cin, cout, for 循环,然后 CE, RE, WA 循环。当时的我就处在一种拼命想学好但不知道怎么学,课上认真听讲但题还不会做,课后做作业完全是用时间和它硬耗的痛苦状态。我至今电脑里还存着自己大一上学期计算概论大作业的源代码 —— 一个 1200 行的 C++ 文件,没有头文件、没有类、没有封装、没有 unit test、没有 Makefile、没有 Git,唯一的优点是它确实能跑,缺点是“能跑”的补集。我一度怀疑我是不是不适合学计算机,因为童年对于极客的所有想象,已经被我第一个学期的体验彻底粉碎了。

北大(中国顶尖学府)的学子尚且如此,又更何况是普通学校的诸位?

在四年的学习生活中,我遇到了很多中国顶尖名校的学生,也和很多留学生聊过,在计算机的学习中大家其实都存在同样的问题:

  • 不知道计算机都有什么岗位,我毕业了可以从事什么
  • 没有一个完整的知识体系,在遇见新知识的时候迁移自己已有的知识,学习太过于零碎
  • 大部分人上学都是奔着挣钱 不知道学习这些技能的用处,学习计算机好像不能在短期内变现,因而对学习没有动力
  • 学校教授的课程太过于老旧,以至于不知道可以用在哪里

上面大概是我目前发现的问题,对于大部分同学来说,我认为都适用

如何改变

其实在互联网时代,学习的成本已经没有那么高(或者可以说获取知识的成本已经无限低了) 对于大部分人来说,知道学什么,为什么学 反而比学习本身更重要

因此,我希望在这篇文档中,能从方法论,优质资源等方面告诉大家如何学习计算机,以及如何通过学习计算机赚取自己人生的第一桶金

那么,让我们开始吧!