我也是一名java开发,也是面临技术提升问题,我觉得提升技术应该有两方面,一个是项目驱动,一个是自我为驱动,分四个阶段。
项目驱动就是在你平时做项目的时候,遇到的项目技术需要自己去了解,为了解决项目问题而去不断的翻资料,去学习来完成自己的工作,也就是自己的项目经验,这个学习最快而且最有效,还能够及时的把自己学习到的东西用到了项目中,这个知识点得到了实战的机会,当下次碰到类似的问题,或者技术的时候这个解决方案会直接在你脑中出现,所以说工作经验越高,工资越高,解决问题的效率也就越高。我们大部分的开发人员都是从项目经验中来学习成长的,所以说开发遇到好的项目也是很重要的。
自我为驱动就是自己不满足项目中学到的知识,平时自己主动的去学习去提升自己的技术,业界的大牛都是自我为驱动的,可能你现在做的项目是很简单的,没有涉及到高并发,集群,分布式这些知识点,但是你可以通过自己平时空闲的时候去学习这些知识点,当你下次遇到这种项目的时候你就会有自己的想法,或者面试的时候你就会对这方面有所了解,我们好多开发人员平时工作就是crud,用框架来解决工作问题,但是框架的源码,比如spring源码自己都不清楚,只知道怎么配置,这些jdk源码,spring源码,里面的设计模式都是要靠自己平时去一点点去阅读才能够提升自己的java水平,所以现在公司面试动不动就问源码,问平时喜欢阅读什么书籍就是想看出你这个人的java水平和自学能力。
掌握java基础知识,对javaEE比较了解,java基础掌握的很好学啥东西都很快,现在公司里都会使用一些avaWeb框架来做项目,比较流行的是ssm,即spring、springmvc、mybatis,所以你平时要学会搭建这个ssm,并能写出crud,有些配置不了解,没关系,以后可以慢慢深入了解。当然svn,git,maven这些在搭框架的时候可以一起了解,对进入公司开发项目很重要。
这个时候可能水平还是停留在java框架的简单运用上,对里面的配置很不是很清楚,这个时候就是提升技术的关键时刻了,要好好去学习spring源码,mybatis源码都要去好好看看,理解里面的设计模式,提高自己代码能力。
可以去了解一些高并发的业务场景了,用什么技术可以去解决高并发,分布式的知识点了,可以去了解springcloud,dubbo,zookeeper,redis,mq,集群等这些分布式的知识点了。
这个时候可以扩宽自己以后的路,可以去学习一些大数据方面的知识,还有一些新的语言,你比别人懂的越多,在未来竞争的激烈下会比别人更加有优势,所以想走技术路线的话学无止境,不断的充实自己才能让自己立于不败之地。