前言
首先本人想说一个符合事实,但很容易被忽视的观点:计算机专业的课程更多是围绕“计算机科学”来讲,而当下找计算机方面开发工作,更需要的是“工程”方面的技能。
什么叫“”科学”方面的技能?大学里的操作系统,编译原理,数据库原理,算法,微机组成结构等课程,当然还包括一些数据方面的课,这些专业课的设计目的,是让学生毕业后能设计(或改进)操作系统,数据库,再不济能设计或完善个算法,但实际工作中那些“工程”方面的技能包含哪些呢?
开发语言和基本的数据库语法,项目管理组件(比如git或maven等)的使用方式,分布式组件或工具库的使用方式,以及排查问题的方式。
当然计算机专业里也有开发语言甚至是架构方面的课程,但一方面所占的课时比较少,另一方面如果让一些没真实开发经验的老师来讲,学生也就学个api,根本没法用来干活。
这就导致了如下两个常见的现象,第一是本科学历,只要报个班,还真能入行IT,前些年靠此类培训班入行的情况大有人在,第二是很多计算机应届生,辛苦学了4年毕业后,还得去报个培训班才能找到工作。
所以回到主题上,计算机方面专业课包含的理论,其实大部分是用不到开发场景的,比如用到相对多的数据结构,开发中用的技术一般仅限于线性表和Map,顶多再带些树,论分量,顶多只占学习过程中的三分之一,至于网络通讯,了解个通讯模型和报文概念,应该真就应对一般开发了。
再说代码的练习,哪怕是课程设计,能用到真实开发场景里的技术也是非常有限,比如就说spring boot开发,大学阶段学习过程中,能把请求走通就行,但真实开发,一般会整合日志,单元测试以及各种组件。
所以在大学阶段,计算机专业的学习步骤,按优先级降序,应该做如下的排列。
1 考研,尤其是二本,更需要考研,为了考研甚至可以牺牲一些课程,这些课程到考试前突击一下即可。如果出于保研目的,可以去专研竞赛,如果不考研,竞赛的加成比想象中低很多。
2 如果不想考研,应该是考虑去实习,不论语言,不论技术,优先看重的是真实项目经验。这个应该是大三暑假就可以去找。
3 如果不考研,找工作时如果单凭学到的专业课技能,找工作会很吃力,哪怕没真实项目,至少也得准备些“工程”方面的技能,比如spring boot开发技术,python爬虫或机器学习技术,但找工作时真实项目经验非常重要。
4 比如你有半年真实项目的实习机会,姑且不论技术,但你有了这个壳子,就非常好包装。比如你实习只是打杂,干些基本的python活,但你至少知道项目开发的工具,比如jira,jenkins,以及项目开发的一些细节,比如敏捷开发,看日志等技能。此时哪怕你想找java或算法方面的工作,就用实习中积累的一些细节来证明有项目经验,外带自己看的技术,找工作的效率会高很多。
5 如果单纯去看专业课,这没用,上文也说, 专业课更多是科学理论,找工作更靠工程实践,多敲代码有些用,至少能证明自己有学习项目的经验,总比其它不少人只背面试题要好,但如果计算机应届生能在面试中展示真实项目技能,这个效果甚至比上培训班还好。
做个总结,计算机应届生,在校阶段,哪怕把专业课的书都背下来,把其中的知识点都掌握,外加会写c++,python,java等hello world类基本api的用法,其效果还真不如半年甚至3个月的实习经验,当然如果能考研成功,或者是考上更好学校的研究生,那么这真可以说是鲤鱼跃龙门了。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python学习路线
二、Python基础学习
1. 开发工具
给大家准备考Python开发过程中需要用到的必备工具,包括最新版PyCharm安装永久激活工具。
2. 学习笔记
3. 学习视频
三、Python小白必备手册
四、Python实战案例
五、Python爬虫秘笈
六、数据分析全套资源
七、Python面试集锦
2. 简历模板
资料领取
上述这份完整版的Python全套学习资料已经上传CSDN官方,朋友们如果需要可以微信扫描下方CSDN官方认证二维码输入“领取资料” 即可领取