0、写在前面的话
眨眼间就发现又已经年末了,于是惯例般地开始来回顾和总结这一年的收获。回想去年或者前年,几乎都在总结上保留了一部分恶心,当然主要还是因为公司的强制性要求和表面形式。或许是行业的缘故亦其他,今年成为程序猿以后,主动在工作和技术上琢磨这一年的得与失,实在是欠缺得太多,不得不思考如何进步,毕竟学习才能使我快(赚)乐(钱)。
反思这一年的所作所为,希望在下一年得到一个更好的结果。
1、2017我都经历了些啥
实际上在去年9月就已经从培训机构出来了(作为某机构成都校区第一届Java班的唯一学员,着实被坑得有点惨),开始了我碰壁的面试经历,非科班再加上培训出身无相关工作经验,有几家也是过了笔试却在面试被刷下来,其中有一家公司的领导面试更是透露着“培训班出身我还跟你废什么话”,当我个人情况说明完以后他干脆放下简历二话不说出去了,留下我一愣一愣的,所以说你们是怎么跟HR交代的。
于是到今年1月时我还在继续失业,后来找了一家公司,收实习生的储备人员,没错,不是技术人员储备,是实习生储备,既没有工资也没有任务安排,总之给你提供个地儿,供网供电供水供桌子(并不供电脑),你就在这呆着,等他们缺人了,你就去面试,通过了,你就成为了公司的实习生。
然而他们公司并不缺人,然而我也实在是没路可走,买了个笔记本电脑,背着就去了。当时除了我,还有一个小伙儿呆着当实习生储备,我问他已经来了多久,他说四五个月了,我就知道所谓转正肯定是不必多想了。有一天下雨,我从这个公司“下班”出来,看着这硕大的软件园里人们行走匆匆,而我伫立其中却没有属于我的位置,心里的安全感极差。
索性这个城市仍然还是有我的容身之处的,在2月14日情人节那天收到了某个公司的录用通知,让我这个单身狗也能在这种节日感到一些温暖。尽管公司很小,只有不到10个人,我还是很开心,总算是勉强踏入了这个行业,又恢复了上班族的身份。
入职后一直到试用期结束,也就是5月中旬之前,实际上公司也一直没有安排工作任务,所以时间基本上都用在了继续学习,一方面对公司已经封装好了的一个技术框架进行探究,已有项目的业务熟悉;另一方面因为一个同事的离职,准备接下他之前的工作内容,便开始学习微信公众号的开发。也是在这段时间里,索性花了不少时间开始写博客。
后面的生活开始走向正轨,随着工作上的逐渐熟悉,也开始涉及一些项目的维护,另外也开始做客户的公众号平台搭建,微信支付也开始逐渐摸索。忙过这一段之后状态就开始不尽人意,因为日子开始逐渐让人舒适,工作不忙,也不加班,于是意志和动力就开始涣散起来,反思之后决定给自己“找事儿”,也就有了博客园那些Java基础知识点的一些博文,算是给自己的一些巩固。就这样兜兜转转地到10月,接手了一个简单的图片管理项目,一个人把它写完,稍微充实了时光,也就差不多到了年底。而实际上这个时候,我的状态仍然没有调整好。
索性选择在今天停下来,回顾这年来的得与失,敲下这么些字眼后,过去的种种开始在眼里浮现,想起印象深刻的2016年12月13日,培训机构的老师让我简历造假而我拒绝,她问我”别人都在这样做,你为什么不这样做?”,我回答她,“别人都在错,为什么我也要跟着错?” 如今有了工作以后我竟有安于现状的趋势,浅尝辄止,不再有以前那么努力了,这怎么能忍?我得改!2018年要脚踏实地!
附2017个人提升小结:
- 读书
- 《MySQL必知必会》已读完
- 《Head First Java》未读完
- 《Head First 设计模式》未读完
- 《图解密码技术》未读完
- 《编写高质量代码:改善Java程序的151个建议》未读完
- 基础巩固
- Java基础知识点的巩固,自己划分的入门篇约20个部分,实际上只完成了一半,总结了相关的博客
从读书这部分发现,这一本没完又开下一本,循环丢西瓜的方式,也只能自己送自己一个手动微笑和mdzz了。
2、2018我准备做什么
2.1 基础巩固
2.1.1 前端(!)
前端一直理解得很囫囵吞枣,甚至连一些基础知识点都很不熟,所以相当于从头再学习一次了,不过现在也不像之前入门一问三不知,刷起来应该还是比较快,不会太做深度的理解。
- CSS、HTML
- 再系统性地过一遍视频
- JavaScript
- 廖雪峰老师的JS教程再看一次
- jQuery
- 老牌JS库,找个视频熟悉一些常用的方法
React现在越来越多的前端使用React而不是jQuery,自然要稍微涉足一下另外要知道的是,了解它出现的目的,为什么在jQuery存在的情况下,它崛起而且兴盛
2.2.2 后端(!!!)
后端的基础巩固其实大部分就是把2017年余下的部分给补全了,擦屁股。
- 读书
- 《Head First Java》
- 博客
- 整理知识点,大概重点是框架的基本使用和原理,以及数据库(主要是MySQL)
- 框架除了基本的SSHM之外,SpringBoot最近很火,也要留意
2.2.3 网络(!)
既然是写JavaWeb,网络方面的知识点不得不有一些认识。这部分在TCP/IP,HTTP方面有一些理解,但是也是稀里糊涂的了。RESTful甚至还不清楚大致会是个什么东西,概念还是要弄明白的。
- TCP/IP、HTTP
- 以Vamei老师的《协议森林》为主线,结合谷歌延伸理解协议和OSI七层模型
Socket理解和学习所谓的套接字,Socket连接RESTful什么是RESTful架构
2.2 良好的代码风格(!!!)
这部分主要是代码习惯,良好的风格可以给自己减少不必要的麻烦。所以这块主要是实践和养成,学习的东西比较少。
- 读书
- 《Effective Java》
- 《编写高质量代码:改善Java程序的151个建议》
- 习惯
- 利用git分支来管理版本
- 参考晓风轻老师的《我的编码习惯 - 异常处理》,考虑“面向日志”的debug
2.3 架构的初步理解(!!)
良好的架构实际上也是服务于自己的利器,因为自己也经历过遇到改需求结果发现耦合太强就很麻烦的时候,关键是你永远不知道用户下一个需求点是什么,而它却在代码层面往往会牵一发而动全身,如何不动全身?那么请学习架构相关的知识。
- 读书
- 《Head First 设计模式》
- 阅读源码
- 之前关注的公众号上某大佬推荐了两款框架的源码阅读,都是低版本的,入手会比较容易
- 大佬推荐了JUnit3.8.1和Spring0.9,据说JUnit3.x是使用设计模式的典范,所以决定看这个了
2.4 技术提升和进阶(!!)
- 多线程
- 其实在培训的时候学过多线程基本的知识点,然而后来一直没用基本已经忘了
Redis据说多用于数据缓存,虽然现在用不上,还是可以了解一下- Linux
- 作为服务器,开源,免费,可定制,生态环境好(但我目前工作无法接触,为了将来必须学习)
写下来以后又担心贪多不烂,暂时划掉一部分非紧急的,争取年底能全部达成。加油啊老少年!!!