自学计算机先学什么 计算机怎么自学


近日在浏览知乎时,偶然发现了一个热门话题:大学生应如何自学计算机科学与技术。

回想起我自己的经历,虽然最初并非计算机专业出身,但最终却因缘际会地踏入了这个领域。今天,我想分享一下我的看法和经验。

我于11年前高中毕业,当时我原本希望选择计算机专业,但因家人认为计算机专业的就业前景不明朗,建议我选择了机械专业。我的内心深处始终对计算机专业抱有浓厚的兴趣。

进入大学后,虽然专业并非所愿,但我仍决心通过自我学习和努力,掌握计算机相关的技术。

学习计算机的关键:拥有一台属于自己的电脑是必不可少的。在学习编程和计算机技术时,你需要在电脑上进行大量的编码练习,通过实践、试错、改正的过程不断精进。编写代码的次数多了,犯错的机会也多了,自然而然地,你对代码的感知和理解就会逐渐加深。

关于电脑的选择,我推荐一款既能满足游戏娱乐(显卡性能要好)又能胜任程序运行(内存要足够大)的笔记本。这样无论是在自习室还是图书馆,你都可以轻松携带,随时进入学习状态。虽然高端游戏笔记本的价格可能稍高,但它带来的便利性和性能是值得的。

我并不推荐Think Pad给计算机科学和技术的学生,因为其性能在游戏和编程之间难以兼顾。虽然大学时期为了追求专业感我曾购买了Think Pad,但发现其在游戏方面几乎无法满足需求。虽然学编程需要专注,但适当的娱乐也是必要的。

拥有电脑后,接下来要关注的是计算机科学与技术的基础课程。这些课程包括:

  1. 谭浩强的C语言课程
  2. 数据结构的课程(这是非常重要的一环)
  3. 操作系统(对于未来从事网络底层和引擎内核研发的学生尤为重要)
  4. 计算机组成原理(同样对于网络底层和引擎内核研发有重要意义)
  5. 数据库系统概念(对于后端开发和数据库内核开发的学生来说至关重要)
  6. 以及一些实践性的代码课程

无论是计算机专业的学生还是对计算机有兴趣的爱好者,我都建议你们注重这些基础课程的学习。因为它们将是你未来工作的基础。

对于非计算机专业的学生来说,你们可以查找上述课程的安排时间,根据自己的时间表去旁听这些课程。不要觉得不好意思,就当自己是这个专业的学生一样。

上述课程主要是为了建立你的计算机理论基础。接下来,你可以选择一门自己感兴趣的编程语言进行深入学习。如Java和C++都是很好的选择。虽然Python语言相对容易学习,但在实际开发中Java和C++的应用更为广泛。我不建议过多关注Python语言。

我选择的是Java语言作为我的主要编程语言。起初,我在图书馆寻找相关书籍进行自学。但后来我发现视频教程更有效率,因此我开始在网上寻找Java学习视频教程。这些视频资源可以帮助我更深入地理解编程语言及其背后的原理。

通过视频教程学习编程语言有两个好处:一是视频中可以讲解你不懂的部分;二是每个视频都会附带相应的代码实践示例,你可以跟着一起操作并实践。这样不仅可以理解理论知识还可以培养实际操作能力。

当你的编程能力得到提升后我建议你可以参与一些编程比赛来进一步提升自己比如 LeetCode 上的算法题或是像 Codegym、hackerrank 这样的编程网站。

此外还有一些国内的编程比赛如蓝桥杯比赛、Kaggle机器学习类比赛以及天池大数据系列比赛等都是不错的选择。

参与这些比赛不仅可以锻炼你的编程能力还可以为你的简历增添亮点即使没有获得奖项你的参赛经历和实际代码编写能力在未来的面试中也是加分项。

最后我想说的是大学期间是找实习的好时机。如果你对计算机行业感兴趣那么我建议你尽早寻找实习机会越早越好。企业在时也会非常看重你的实习经历和项目经验。