目前JDK已经到了JDK14,而国内大多数公司采用的还是JDK7到JDK9,随着版本更新会伴随着功能增强,那么为什么很多程序员都不愿意升级到最新版本,下面我说下我个人的想法:
不愿升级到最新版本JDK
1、有一些比较老旧的系统,需要持续维护。其扩展性和性能问题不大,需要的只是一些小修改。这种情况下主要还是追求稳定为主,而升级不止单单升级JDK,还需要配套升级,需要人力物力成本。而升级带来的效益并不多,出于升级成本和收益的考虑,这种情况下大多数都不会选择升级JDK。
2、JDK7到JDK9在国内大量应用,已经十分成熟了,几乎可以满足开发需求比较稳定,程序员也使用得十分熟练。有些程序员求稳,会对接触新技术有些抵触。他们觉得老JDK是在多项目中使用了,有了实践和经验。而对于新版本JDK升级需要学习成本,以及怕升级后遇到不兼容等风险,所以会选择自己相对熟悉的版本应用。
个人想法
下面说说我个人体验。软件开发并不是个人就能完成的,而团队多人协作的前提是要环境工具的一致,团队中JDK版本必须保持一致,个人想升级到最新版本时,团队其他人员也需升级。尽管新版本JDK的一些特性十分吸引人,不过实际项目中应用到的新特性并不会很多,而且需要团队所有人的学习成本。对于新项目且富有活力的团队,我觉得leader可以牵头多尝试一些新技术的应用。工欲善其事必先利其器,对于有些新特性的掌握可以提高我们的开发效率。 但同时,也不能为了追新而新,还是需要结合系统,环境,成本等情况综合考虑。
考虑因素还是挺多的
1.没必要,一般中小性公司是对高性能,高调优,gc回收,内存参数设置等这块要求并没有特别地高,大部分都是可以使用没问题,性能一般就可以啦!
2.代码兼容性,jdk包升级有的方法,风格,甚至像jdk14的对象声明都变成弱类型语言的风格啦,string,int这些常用类型都变成 var 这
样的风格啦!代码量大的时候,升级后改起来量大,还有对新风格是否很熟悉都是决定接下来代码逻辑是否出问题的因素。一般情况下,改起来代价太大啦不是。
3.运维这块的操作方式可能有些改变,像相关联的运维软件和环境一整套都可能因为jdk的升级而不兼容发生改变,这个绝对是最坑的,
一开始代码别的都没有问题,到最后啦,发现整个环境或许因为很小一方面版本不兼容不满足相关的使用操作,如有些加密软件对jdk的包版本就有要求,springboot,tomcat等都可能产生影响的!
4.收费,这个就是花些钱,就像程序员自己学习什么的,都用收费或者openjdk(不收费)破解版等,毕竟还是操作繁琐些!
5.最后说的是jdk8很好用,后面版本的变化让人觉得没卵用!
,就说这些吧,[呲牙][呲牙]!
为什么很多Java程序员都不愿意升级到最新的jdk呢?有过编程经验的人都会碰到这样的问题。那么,是什么造成了程序员的不愿升级?新版本往往功能会更加强大,这样不好吗?据我的分析,主要有以下几点。
1、惰性与习惯。
一个人再怎么勤奋,也是有一定的惰性的。在一个舒适的条件下呆了很长的时间,就有可能不再想着更上一层,以往的进取心会大打折扣。再加上自己的习惯,老版本中的一些函数已经用得非常顺手了,不想再改变了。
2、够用就好。
对于一些要求不高的企业,只要程序达到自己的需求,够用就好。所以,他们会以程序的安全放在第一位,而对于功能上的提升,却是往后排一排了。所以,因为够用,他们选择不升级。
3、不想第一个吃螃蟹。
任何一款软件,发行新版本后,都有一个窗口期,会让众多的程序员去使用它进行测试。就算是稳定版,也可能会存在一些bug。而如果真的碰到bug,因为是新版本,网上没有人解决过,一旦出现问题,后果是不可想像的。所以,很多程序员不想做第一个吃螃蟹的人,而选择放弃升级。
原创文章,作者:普尔小编,如若转载,请注明出处:http://www.puerpx.cn/pxwd/11770.html