大一计算机新生 学习路线规划
一、序言
进入大学已经一个月有余,除去军训、入学教育和国庆放假,大约上了一周课。对于专业课最大的感受就是作用不大。首先是进度问题:课程安排有限,按照学校的进度走完全无法满足我们对于竞赛、考研以至于日后职业规划的需求;其次是内容问题,大一学习的内容浅而狭窄,而且水课多,不一定与我们日后的发展方向相符合;最后是教师和自身问题,教师水平良莠不齐,有些老师执着于在课堂上穿插自己对于学术成就的吹嘘,大部分大一新生又没有较强的自我学习能力。所以,在经过几天的思考和信息检索后,我决定对未来的大学四年进行一个初步的系统的规划,也希望与有同样想法的大一新生以及平台的技术大牛们多多交流。
二、学习规划
1.对于各类编程语言的选择和自学方向
学校对于计算机大类专业的培养计划多数是先开设C语言课程,在大二及之后陆续通过学院安排和自己选课进行C++、Python、Java、Linux、Web的学习,有些财经相关学校还会将编程技术与大数据、财经数据等经济相关内容进行学科融合。学校进度很慢,且相当一部分计算机新生是从未接触过计算机编程的,所以自学的必要性是很强的。下面我简述一下各类编程语言的适用范围及自学方向:
(1)自学C语言编程并且多写代码,无论是应付学校考试还是想搞竞赛都很有用。C语言的主要应用领域是操作系统、嵌入式和服务器三块,它是一门强大的被广泛运用于底层的高级语言,精通C语言对以后大厂就业有极大帮助。当然C语言并不好学,这也是学校将它作为我们学习的第一门编程语言的原因之一。
(2)C++就是C plus plus,同样是一门难度很大的计算机语言,它主要应用于游戏、办公等软件及搜索引擎、网站等,像王者、csgo还有最近火爆的黑猴等3a游戏都是用C++编写的。想以后进入自己心仪的游戏大厂的从现在就可以开始计划自学了。
(3)Java主要用于企业级应用开发、网站平台开发、移动领域的手机游戏和移动android开发,我们常用的购物软件淘宝就是用Java开发的。Java的应用范围广泛,就业机会基本可以说是所有编程语言中最多的。如果以就业为毕业后的主要导向就可以考虑计划自学Java。
(4)Python比较易学,但对本科生很重要的一门语言,我们本科、硕士甚至博士阶段进实验室所用到的编程语言都是以Python为主,所以想考保研、以后走科研、最近热门的人工智能AI研究方向的也可以开始计划学习Python了。此外,Python主要应用领域是爬虫、数据分析、自动化测试和机器学习,还有一些中小企业会用它做后端开发。Python在所有编程语言排行中高居第一,除计算机专业外,很多工科理科金融等专业的人都要学习和使用Python。
(5)Golang,简称Go语言,近几年在编程语言排行榜上的位次一直在攀升,目前已经排在第十位左右,主要用于区块链技术和后端服务器应用,也是一门很有前景的编程语言。
还有很多编程语言,这里就不一一列举了。不管学习什么语言,都要有系统性,循序渐进,多学多练,不能急于求成。
2.数学、英语
(1)计算机专业需要学习的数学包括高等数学、线性代数、概率论与数理统计、离散数学四个模块。大一学校通常只会开设一门高数课程,综合学校老师的建议以及我查阅的资料,我建议在学习高数的同时在网站上寻找课程学习MIT线性代数,同时学习两门数学课程对于刚刚高考完的大学生来说是不至于太吃力的,后续再根据自身情况学习概率论和离散数学。尽早学完这些课程有利于参加数学建模等竞赛,大三大四也可以更好的专注考保研事宜。
(2)如果学校允许,最好在大一考完四六级,且一定要尽量高分过;当然就算学校不允许,也不能放松对英语的学习。无论从事什么职业,一口流利且好听的英语都是一个很好的加分项。英语不是我们的常用语,一定要持续学习,否则高中时的知识储备也很容易丢掉。
3.Office办公软件、PS、建模等
学校对于计算机专业是不会专门开设学习办公软件的课程的,但我们在学习工作中又会不可避免的会用到这些办公软件,这种矛盾就需要通过我们的自学来消除。同时,部分同学的就业规划中包含了对PS、建模等能力的需求(或者有些同学想要靠这些技能搞点外快),这些技能都是学校不会教的,都要靠自学。
*具体学习计划(近期)
上述技能的好处各有千秋,我们要合理安排,切忌贪多。
我的初步学习计划:
(1)除学校课程外,每周进行三次3h的C语言网课学习,及时总结学习内容并通过定时发布博客的方式激励自己坚持学习;
(2)在掌握学校教学的高等数学并完成作业的基础上,学习高数的后续章节每周两节2h(宋浩):学习线性代数每周两节2h(MIT麻省理工)。时间与C语言学习时间错开。
(3)每天坚持背50及以上个四级词汇,从运动会结束即11月份起加上英语口语和听力的练习,两天一篇配音练习,争取在大二前将英语口语练习到演讲水平(我的英语水平不高,我们学校大一下下学期才允许报考英语四级)。
(4)对于PS等额外技能,在学习之余进行。可以从自己喜欢的二次角色三次入手,兴趣驱动,快乐学习!
三、学习目标
1.导师选择
大部分学校的本科学生会在大二大三开始找导师进实验室,参加科研项目,你选择的导师也会在之后帮你修改你的毕业论文,所以在大一就尽早确定自己的研究方向和本科导师是很重要的。我们可以通过各种手段了解学校相关专业的老师,包括但不限于学校官网查询,与导师邮件交流甚至直接跑到老师办公室询问。
2.竞赛 考证
计算机专业的竞赛主要就是创新创业类、编程类和英语演讲类。后两项考验专业能力为主,按照既定的学习规划走在竞赛中拿奖的概率还是很大的;前一项更考验的是团队合作和实践能力。大学考证既能提升技能又能加分,考什么证根据自己的兴趣和需求选择。参加竞赛并拿奖和考证对于自身能力的锻炼和后续保研就业都很有帮助。
3.绩点 综测
大学的绩点和综测关乎着个人奖学金的评选以及各种评优评先,它的重要性不言而喻。当然我们的专业课成绩是占大头的,但是竞赛加分同样重要。计算机专业靠科研竞赛加分的概率实在太低,所以前一点中所说的三类竞赛就尤为重要,当大家都是专业课学霸的时候,比的就是各种竞赛获奖。
四、未来规划:就业、考保研or出国
(待更新)
1.大厂or考公
2.择校 推免 考研
3.出国or港澳
ps.后续会持续分享我的学习进度和积累到的小小经验,引用了部分网络上的资料(就一点点),第一次发文章有多有瑕疵【鞠躬】【鞠躬】
