java第二阶段_学习Java要经历的4个阶段,大部分人还处于第二阶段

互联网不断发展,越来越多的行业,因为使用了Java而提高了工作效率。Java应用广泛,市场需求大,Java编程开发程序员的需求量也是不断的增加的。而今天我们就一起来了解一下,成为一个专业的Java程序员都要经历哪些阶段?下面和我一起来看看吧!

一、新手

如果你是新手阶段,全面、扎实地掌握语言的基本要素是当务之急。你可以在正规的指导下飞速进步,并培养出良好的编码习惯。然后可以再结合专栏,看看Java技术领域典型的、长期的热点话题,了解业界通常从哪些角度判断你的能力和水平。

二、高级新手

工作了几年,整天忙于业务代码,很容易困惑下一步的方向在哪里,相当多的程序员长期停留在高级新手的阶段。一个常见的表现就是发展成为了“面向搜索引擎”编程工程师,擅长快速利用开源项目或者以往成果,完成一些“OK”的工程任务。这本无可厚非,职业路线很多,未必每个人都想成为底层专家。

但是,如果想在技术领域更进一步,一定要避免下面两个问题。

面对没见过的、一定规模的或者较高标准的问题时无所适从,具体表现为“领导,你看这样行吗?”。没做过互联网高并发应用,难道就不能对并发编程有相对深入的思考吗?比如,习惯了使用Executors,你有没有思考过不同的线程池到底适合什么场景?当前的实现在未来业务量增长下可能出现什么问题?

无法独立提供有说服力的、有深度的分析、设计和实现,比如业务系统运行一段时间就变慢,调整Heap大小,似乎仍然OOM。目前团队处理的方式就是重启服务器,有没有想过去发掘真正的原因,真正去解决它?

建议不要满足于这些表面的特征,要学会用白盒的视角看待技术内部,系统性的思路掌握普遍规律。即使未来你不在一线编码,或者未来不再使用Java,同样的思维习惯和积累也是很有帮助的。

三、胜任者

那如何才能算是摆脱了高级新手的阶段呢?或者换句话说,如何成长为团队的核心成员?这取决于你能背多大的锅、填多大的坑,比如你已经可以:

独立负责做GC调优,即使没有历史经验,也能给出有说服力的方案。

在JVM领域有充足的技术经验和知识储备。

全面评估评估后台变慢等问题的复杂度、风险点、解决的可能性。

对于所谓本质的思考和理解,能听懂深入的抽象观点。

并且,除了Java/JVM,还要掌握更完整的技能树,例如分布式系统设计、数据库隔离级别选型等。

掌握将“OK”的事情做到“excellent”程度的能力,不断地进行高效实践、领域的扩展和精深,我们就可以达到并超过胜任者,逐步成为精通者和专家。

四、精通者和专家

如果你已经精通Java语言或者是特定领域的专家了,那这个专栏对你的帮助可能体现在不同角度,可以当作特定领域的、不同视角吧。例如,在这个阶段,精通者或专家能够:

提炼并发工具类的一般性指导方法。

告诉团队如何写出安全的Java代码,防范看似安全下隐藏的风险。

借鉴Java/JVM中的一些技术,从基础能力上提高自身平台的能力。例如,PHP7中引入的JIT,带来了极大的性能提升,35讲中对JIT的介绍,就有了新的用武之地。

如何通过Container-Aware技术,提高Kubernetes集群中JVM负载的可靠性。

创造某一类问题的解决方法。例如,似乎Java工程师动不动就是Happen-Before,除了耍酷,能不能从更高的高度看待:JMM是如何实现了编译器工程师、JVM工程师、Java开发者甚至不同厂商之间的一致性规范?如何创造性地避免了早期C++内存模型在不同厂商之间的混乱?

以上就是我总结的学习Java开发需要经历的几个阶段。想在Java领域成为精通者或者专家,除了掌握基础知识外,还需要拥有丰富的项目经验。希望本文对大家能够有所帮助,可以让大家更好的学好Java开发。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值