在一个平台上看到这个问题,题目是一个大学生,不喜欢自己的专业,想利用业余时间学习计算机专业。
第一,方向>语言选择
其实如果你打算学计算机,我建议C>C++>Java的顺序...因为你有充足的时间自学。如果你说你已经毕业了,想学计算机然后找工作,建议直接学Java。
1.1语言与方向
很多门外的人以为编程语言=工作,其实大错特错。Java工程师只代表主要语言是Java的工程师,但是Java的实际工作方向是:企业级系统开发,游戏方向开发,前端开发...所以语言不是计算机的方向,要通过方向来选择计算机语言。
以下说明仅供参考:
前端:前端更在乎用户体验和交互,技术更新迭代快。你得学会HTML+CSS+JS;
后端:不同的后端有不同的语言,主要是开发语言+技术框架;
数据库:又称DBA,主要是维护数据库,掌握Mysql、Oracle、SqlEerver等。
嵌入式:比较适合自动化伙伴,主要是C语言和c++;+;
机器学习方向:本科谨慎,建议考研后选择本专业。
1.2重要点!
程序是什么?—计算机组成原理。
程序是怎么翻译的?—编制原则。
如何执行程序?—操作系统的类别
如何利用别人的成果实现更好的数据组织?—数据库关联
如何保证程序更容易维护,可读性更好?—这是设计模式和代码规范。
所以计算机组成原理,数据结构和算法,操作系统,计算机网络都很重要!
第二,自学方法
其实专业课和非专业课最大的自学区别就是计算机专业的学生有时间表,自考的学生不知道学什么。好像有个APP叫超级课程表,可以看到其他专业学生的课程安排。这个时间可以作为我们自学的参考。
其次,计算机相关理论基础书籍推荐:
计算机原理->计算机操作系统->编译原理->计算机网络。
如果自学的伙伴觉得这些内容很枯燥,那么这里有很多哔哩哔哩大学名师讲课的基本录音。可以搜索一下自己喜欢的,能听的老师。不过这种名师班的缺点是没有资料,还是要买书学习。
最后,同时学习和编写代码是非常重要的。很多有经验的人会说“量变引起质变”就是指代码量。小练习+项目重要,要通过练习举一反三。至于项目的学习,要先学会玩GitHub。