当前位置: 首页 > news >正文

(经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路

今年正式步入了大四,离毕业也只剩半年多的时间,回想一下大学四年,感觉自己走了不少弯路,今天就来分享一下自己大学的学习经历,也希望其他人能不要走我走错的路。

(一)初进校园

 刚进入大学的时候自己完全就相信了高中老师的话:“进入大学你们就轻松了”。因此在大一的时候自己学习的激情早就被抛地一干二净,每天不是在寝室里玩游戏就是出门游玩,不过好在自己大学时买的第一台笔记本性能并不是很好,也没让我彻底沉迷游戏。大一的学科基本上都是基础学科,高数、物理、英语等等,唯一一门编程课程就是C语言。那个时候自己根本就不知道程序员究竟应该干什么,怎么做。每天的生活就是上课、下课,和高中唯一的区别就是课堂不固定了,有时候早上没课能睡懒觉了。这样的状态一直持续到了第一学期结束。

(二)开始醒悟

大一结束后自己通过最后几天的恶补成功通过了考试,在大学通过考试真的很容易,而且还拿了个三等奖学金,还觉得洋洋得意。但是当寒假和别人同学聚会的时候被人问到学了半年计算机,会做些什么东西的时候,发现自己甚至连一段有意义的代码都写不出来。因为自己的家境也并不是很好,开始明白如果自己真的要走这条路一定不能这样混混噩噩下去。于是寒假的时候重新学习了C语言,渐渐也发现了编程的乐趣。尤其是当一个功能成功的时候,那种成就感很难形容。大一第二学期的课程依旧以基础课程为主,和上学期唯一的变化就是在新学期我开始在寝室里主动去编程,但似乎也仅仅如此。

(三)初始java

学习C语言的过程中自己更多的是老师教什么,自己学什么,直到碰上了java课程后,我竟然发现这门语言和自己如此适应。学习C语言时最烦的指针在java里竟然不用自己去写。面向对象的编程语言让我看到了编程的新乐趣。我用半学期的时间看完了上课的课本,因为上课被老师叫到讲台上编程好几次,在快期末的时候老师让我用java做一个能展示出来的东西,于是我做了人生中第一个”大型“的项目,基于java的画图板,当然功能和windows上的画图板相比还很简单。当时把代码发给老师的时候我甚至是把所有代码放在剪切板中,再传给他。后来的课程中也学了java的一些框架,渐渐也正式入门了java。

(四)参加项目

当时自己想的是大学期间不做点项目似乎就不是大学,于是在大二下半学期的时候参加了一个老师关于深度学习的项目,当时也是听着很高大上才报名参加。因为项目用的是python语言,于是自己又重新开始学python,看深度学习实践的四本书。其实说实话本科生去做深度学习的项目是不容易的,哪怕看了书,在不懂原理的情况下,很难深入。但是在坚持下最终这个项目在大三上半学期结束了,拿到了大学生挑战杯不错的奖项,参加项目能让人提升很多,不管是技术上还是性格上或是未来的工作机会上。

(五)开始面试

大三暑假的时候,投了阿里巴巴的java实习生,竟然收到了电话面试,于是在网上花5天时间看各种面试题。投了简历后大概一个多星期后收到了阿里巴巴面试官打来的电话,中午11点的时候打来了第一个电话,问我什么时间有空,最终把面试时间定在了下午1点半。但是这个电话等到两点半我才接到,接下来就是正式的面试了。

首先面试官先问你会什么,我就说主要会java,接着他问我大学时做过什么项目,我就把之前参加的大学生挑战杯项目和他说了一下,不过看起来面试官似乎并不对这些很感兴趣。再然后就开始问技术性的问题,第一个问题就把我给难住了,他问我对java虚拟机有多少了解。说实话,我甚至没有看过java虚拟机相关的书籍,只在看面试题的时候去简单了解了一下,至于内存如何分配,如何调优一窍不通。看到我对java虚拟机不熟,于是面试官开始问SSM框架的一些内容,关于如何自定义注解,Spring如何实现切面......最终的结果肯定是没有通过,面试官最后给的意见是多往深的地方去研究,不要只会用,基础很重要

(六)寻求改变

其实经历了这次面试之后我开始明白自己的不足之处,究其原因也是在大一的时候没有做好最自己的职业规划,其实计算机包含的内容太多太多了,涉猎更多的知识重要,但是最重要的还是要在自己最擅长的领域去深耕。没有几个人能同时精通多种知识,一个精通后端开发的人很难再去精通数据挖掘,深度学习。同样一个在运维领域的大牛在开发领域或许还比不上刚入职场的小白。所以我给自己定下了一个方向,去做java端的开发,并去学习一些前端的知识。阿里面试结束后我还明白了公司最看重毕业生的不是做了多少厉害的项目,最终还是会看你基础知识够不够扎实。

我开始让自己沉下心来,看基础性的书籍,关于jvm,关于多线程,关于数据结构,关于数据库......虽然之前浪费了很多时间,但是我的时间还有很多,继续追赶来得及。

开始用学到的东西写项目,这样能让我对学到的知识理解更加深刻;开始写博客,虽然看的人并不多,但是输出会比输入更快的学懂知识,同时在写的时候才会知道自己哪里不会。

(七)总结 

大学四年来,走过的弯路很多,我的建议总结起来有下面这几点:

  1. 千万不要以为大学就轻松了,对以后还是想从事计算机方面的人来说,大学时候的努力能让你再毕业时就和别人拉开距离。
  2. 尽早做好职业规划,知道自己要往哪个方向发展。
  3. 学习技术要深耕,至少要精通一块,不要学得多但是一门精通的都没有。
  4. 项目要参加,不过要选适合自己的。
  5. 基础很重要!像数据结构这类的课程一定要学好。
  6. 一定要能够自学,计算机的发展太快了,大学时学到的知识很多已经很落后了。

当然了还是希望自己的博客能有人看吧! 

 

相关文章:

  • 经验分享:JAVA实习生刚进公司主要做些什么?以及进入职场后我的心理变化
  • oracle迁移mysql数据库注意(转)
  • 实习工作经历:代码在本地明明可以跑通,怎么放到服务器上就不行了呢?
  • 搭建一个包含多种Get请求和Post请求的工具类
  • 一致性hash原理与实现
  • 作为一个程序员需要了解多少网络方面的基础?网络基础总结(不断更新)
  • 四千字从源码分析ConcurrentHashMap的底层原理(JDK1.8)
  • redis学习笔记6--集合类型
  • 都2020年了,你还不知道count(1)和count(*)谁效率更高吗?
  • Linux下PF_PACKET的使用,RARP的server和client程序
  • 面试官:不会真有人不知道什么是线程池吧?
  • 从零搭建基于SpringBoot的秒杀系统(一):项目准备
  • 【总结】oracle恢复误删除数据,解除锁定的等sql语句
  • 从零搭建基于SpringBoot的秒杀系统(二):快速搭建一个SpringBoot项目
  • 重拾cgi——cgi dispatcher
  • [译]前端离线指南(上)
  • CSS实用技巧
  • Elasticsearch 参考指南(升级前重新索引)
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • ES6 ...操作符
  • Fastjson的基本使用方法大全
  • JavaScript创建对象的四种方式
  • PHP那些事儿
  • windows下如何用phpstorm同步测试服务器
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 笨办法学C 练习34:动态数组
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 诡异!React stopPropagation失灵
  • 使用API自动生成工具优化前端工作流
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 微信小程序实战练习(仿五洲到家微信版)
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 在Docker Swarm上部署Apache Storm:第1部分
  • 《码出高效》学习笔记与书中错误记录
  • Python 之网络式编程
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (2)STM32单片机上位机
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (九)信息融合方式简介
  • (九十四)函数和二维数组
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (七)Java对象在Hibernate持久化层的状态
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转)winform之ListView
  • (转)菜鸟学数据库(三)——存储过程
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .Net Memory Profiler的使用举例
  • .Net 知识杂记
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • .NET框架设计—常被忽视的C#设计技巧
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)