前言:夏天到了,人也变得些许焦躁。转眼工作一年了,想着写点什么来总结一下我这个IT新人的起起伏伏。毕竟从刚入职不久,我这颗跳槽的心一直蠢蠢欲动。都怪自己大学不努力,在人生的许多节骨眼上被动的做出了选择,好在本人自尊心强,不愿自甘堕落,不说废寝忘食,但也靠着仅存的悟性跌跌撞撞摸索着继续前行。在这里写下我这一年多的学习心得吧。

入门难,还是坚持到精通难?

学习编程和学习任何一门学科一样都是枯燥乏味的,但是它也和许多理工学科一样,充满魅力和朝气。计算机语言是诚实的也是可靠的,你给它什么参数,它返回给你特定结果,你的努力和汗水都能够在瞬间得到回报,但有时也会吃闭门羹。当然,这对所有学习编程的同学来说都是公平的。因为所有人都要从生涩到熟练,从错误到成功,一步步挺过来的。没有人的成功是不通过debug而与生俱来的。我的本科四年,虽说没有挂科也没有翘课,可是也没有什么拿的出手的专业技能。直到大三那年,当身边的同学开始找实习的时候,我才顿时醒悟,决定从零开始学习JAVA,做出改变。可是从何学起?如何学呢?看教材太慢,看博客太零散。但是时不我待啊!除了工作,再加上当时还有毕业设计,毕业论文等事情,一并给了我很大的压力。时间不会心疼你的焦虑和艰苦。于是在大四那年我开始大量的下载视频,观看视频,下载视频,观看视频。。由于时间紧迫,于是我靠着一点点入门基础就跳过了JAVA SE的部分,也跳过了JAVA WEB的servlet部分,就因为曾经在大三做过一次实验而来的迷之自信。直接从SSH,SSM这些招聘信息上的硬性规定技能开始学习。当然,最终我都因为基础不行而不足以让我找到工作。原因很简单,虽然我是科班出身,虽然我有系统的学习环境,但是我坚持的时间没有那些远比我优秀的人多。因为写代码就和读书写作一样,你以为你看了目录就能获取知识,你以为写了大纲就能发表登报。但是编程从头到尾都在告诉你,你不会是因为你没有坚持,编程的知识,你不会就是不会,没有argument就没有result,没有努力也就没有收获。

让你打一遍真的只要打一遍啊!

相信很多同学和我都有一个毛病,就是买很多书放着,结果一本都没看。其实在学习编程的时候我们也一样,收集了大量学习视频,但是看了一个介绍后面就没看下去了,下载许许多多的项目,但都还是jar包模样呆在网盘里直到被遗忘。当然,也有很多同学下了视频也从头到尾看完了。结果呢?所有的疑点难点都被配置文件卡住了。为什么,因为你根本就没开始真正的开发,所有的精力都花费在了观看视频,直到出现了如何配置连接,如何构造项目,web文件怎么写,pom文件怎么加这些问题的时候又返回去观看视频啦。敲一遍代码,实际操作一遍吧。有时候当别人告诉你亲自操作一遍的时候,真的只要操作一遍就能够顶得上你看三四遍视频。

主动的求知欲

去年从学校毕业的我回到了位于海边三线城市的家,经介绍进入了一家外包公司。公司开始有培训,福利也算不错,于是我的学习斗志也被重新激发,工作之余继续关于JAVA的学习。可是好景不长,当我进入这家公司的时间越长,他暴露的问题也越多。首先,作为外包公司,其开发模式是敏捷开发。需求,开发,出版本,测试,改需求。这样的轮回几乎每周一次,朝九晚六七八九十,甚至朝九朝零,我的天,就算身体能抗住,头发也不答应啊!于是我就有了跳槽的想法并开始大量学习JAVA进阶阶段的知识,包括多线程并发,集合源码,JVM底层原理等。虽然工作很累,但我也不敢松懈,因为我看到许多同事每天只是为了混时间而机械性的完成任务,就连和我同一时间进来的小伙伴也慢慢的被这种氛围吞噬。他们只关注自己开发的任务,做完就忘,得过且过。你学的越多,你就离你讨厌的人越远,因为我相信各位都不想成为某个公司五年甚至十年的寄生虫。

正确的时间做该做的事

没学会走就想跑,到最后一口吃成胖子,一事无成。但是一个模块的学习时间也不宜过长,尽量选择适合自己的学习方法,跟紧流行的学习趋势。就像去年的我,虽说基础不行,但是我也有意识的去搜索当时的招聘信息,通过了解招聘信息上的技能要求而有选择的学习,例如前年流行SSH,去年流行SSM,到今年流行Spring boot。

说了那么多,接下来分享下我从去年到现在的一些学习资源和书籍吧。

1、 how2j  就像该站站长说的那样,学Java,一个网站就够了!

2、github 这个全球最大程序员基佬网站想必大家耳熟能详了,作为一个新手程序员,事实的跟上圈内的流行是有必要的,除了许多有趣的项目外,在这上面也有许多作者也值得follow的,否则你连996.icu是什么都不知道就有点尴尬了。

3、书籍《Effective JAVA》,2019年好像出到了第三版本,至于是否有中文版还没有去看。不过第二版也是许多新手必看的,这里面会有一些JAVA的编程习惯和技巧,适合新手入门到实战的过度,诸如一些大家在面试会被提到的基础面试题其实也是从里面衍生出来的,读完这本书可以巩固对Java基础知识的理解。

4、设计模式,无论是《设计模式之禅》还是head first系列的设计模式,作为一年的以内的程序员,虽然百分之九十不会用到设计模式,但其实他对理解整个系统的结构设计是很有帮助的。如果实在看不下去的,起码要达到能画他们的类图程度,许多面试公司都会问到。

5、《深入理解JAVA虚拟机》 神作,如果想要更深的理解JAVA类加载的过程,这本书是必不可少的。

6、慕课网  因为在公司做的项目很多用的都是一些封装好的技术,而且往往分配到的任务只有零散的一小块。虽然慕课的项目不便宜,但是由于它是会随着技术的更新而上线对应的项目的,所以为了不和流行拉开较多,我还是建议买一些项目回来做。例如像redis,shiro等这些有时候会用上但是却没时间深究的,可以通过一个完整的项目去了解他们的使用。

7、各种博客,这些博客内容包括多线程并发,集合源码,编程技巧,面试题目。诸如这些进阶的问题可以通过搜索得出。

其他感想

在我找工作的时候,发现一个现象。就是每年的软件开发岗位,都会有一群特殊的人群数量不断提高,那就是培训机构出来的学生。培训机构的优点是,快。六个月或者更短的时间内学完JAVA基础,相比我在大学四年,大二才开始接触JAVA确实没有培训机构的效率高。但是呢,我大一在学的是操作系统,计算机组成原理等一些基础的学科,这些学科有助于我对编程的更好理解。所以如果你是培训机构出来的,而且有多余时间的话,可以找找这方面的书籍看看,了解二进制,数据结构是怎么回事对以后编程有很大帮助。

工作一年JAVA科班生的自学经历相关推荐

  1. 2年工作经验的Java程序员面试经历

    时光转瞬即逝,一年时间已经过去,自己准备跳槽了,请了几天假,面试了几家公司之后,拿到了一份offer,有了一点儿小小的心得,记录下来分享给搞Java的朋友,面试主要是几个部分内容. 很多公司会要求笔试 ...

  2. 个人Java自学经历(半年多,已找到工作)

    相信很多人都想自学java,但是很多人自学又没有从何开始.学到什么样算好这样的头绪,这些问题也深深地苦恼着我. 一般来说有自学和去培训机构2个选择,培训机构的好处就是能在短时间内系统地教授你大量知识, ...

  3. 机械转行java自学经历,零基础学java,血泪总结的干货

    机械转行java自学经历,零基础学java,血泪总结的干货 1.我为什么转行 2.转行之路 3.面试之路 自学路上的网站 Java教程 实践项目一站式学习 bilibili 自学书籍 <Java ...

  4. 一个人自学会java有用吗,大连java程序员培训经历(自学Java可以吗)

    大连java程序员培训经历,很多人在了解大连java培训的时候时常抱怨,怎么那么难呢?为了帮助大家了解,小编整理了一份学习大礼包自学Java可以吗,Java语言的稳健性,Java和C++的区别. 自学 ...

  5. 什么是大数据开发?大数据开发要学什么?一个Java转行过程和经历

    大数据开发是大数据职业发展方向之一,另外一个方向是大数据分析.从工作内容上来说,大数据开发主要是负责大数据挖掘,大数据清洗处理,大数据建模等工作,主要是负责大规模数据的处理和应用,工作主要以开发为主, ...

  6. 【校招分享】Java非科班自学指南

    作者:一星如月看多时 链接:[校招干货]Java非科班自学指南V1.0_招聘信息_牛客网 来源:牛客网 本文针对应届校招生,面向大厂面试学习,讲究打牢基础的同时追求速成,适合还有一年以上时间参加校招的 ...

  7. Java开发实习生面试经历与总结

    Java开发实习生面试经历与总结 更新日期:2020年1月1日 一.引言--初生牛犊不怕虎 2019年 我是从大二暑假开始,正式进入Java的学习.大二上学期的时候,学校开设了只有11周的Java程序 ...

  8. 网友:Java岗,自学一个月跳槽计算机视觉!附学习资源合集

    笔者在脉脉上看到一条帖子:原来Java岗,自学一个月成功跳槽视觉算法岗. 这已经不是笔者第一次看到转行成功的程序员案例了,而大家的跳槽动机基本上都离不开,发展趋势.岗位高薪.职业兴趣. 计算机视觉 行 ...

  9. 新手Java程序员找工作更看重Java项目经验?

    动力节点IT培训,全真项目实操实训,贯穿八大行业,彻底帮助学员摆脱纸上谈兵的尴尬,一技成,天下行. 新手Java程序员找工作更看重Java项目经验?这个问题,想必是很多学Java的朋友也特别好奇的地方 ...

最新文章

  1. 跨域请求设置withCredentials
  2. 【Spring学习】IoC、DI、AOP入门学习
  3. python生成html报表_python生成HTMl报告(unittest)
  4. 获得数据库中表字段的名字.txt
  5. RabbitMQ简单介绍+Windows环境安装
  6. python中列表 字典 元祖 enumerate()函数
  7. 浅谈iOS中的蓝牙技术(一) GameKit framework
  8. java图片特效轮播代码_JQuery实现图片轮播效果
  9. paypal中授权返回_微信开放平台授权登录流程详解
  10. VS Code 取色器 插件 颜色选取
  11. 安卓饼状图设置软件_android开源图表库MPAndroidChart(曲线图、直方图、饼状图)...
  12. R语言画图——添加数学表达式和R2
  13. npm install报错214 verbose node v14.15.0 215 verbose npm v7.23.0
  14. 大学计算机实验报告虚拟机,安装虚拟机的实验报告(共10篇).docx
  15. 推荐两个BlackBerry 商务软件
  16. 第5章【思考与练习2】将数据集划分为训练集与测试集,查看决策树分类器的性能。 将例5-3中的分类器保存到文件中,然后重新加载预测给出的新数据。
  17. C++、Java、JavaScript中的异常处理(Exception)
  18. 利用python渲染IPsec配置
  19. 【安全研究】Linux后渗透常见后门驻留方式分析
  20. 如何解决:Mac 进不去JetBrains官网 Mac 打不开 idea/webstorm/PyCharm官方网站

热门文章

  1. 迟到的感谢——2006最有价值博客的候选人( 个人回顾)
  2. pyqt5 Qt Designer + PyqtGraph画图显示动态曲线
  3. 小练习1(银行储蓄问题)
  4. 我的世界java泰坦生物版_我的世界泰坦生物mod报错
  5. 树莓派教程-命令行连接wifi
  6. 亚洲硅业IPO被终止:施正荣为实控人 签有上市对赌协议
  7. 基于pytest框架实现allure测试报告生成之用例描述参数feature,story,title
  8. Mac应用程序无法打开或文件损坏的处理方法,Mac任何来源开启教程
  9. DS树结构转换(先序转双亲)
  10. Java 变量的运用练习题