版本是否需要更新

做JavaWeb项目,需要引入大量的 jar 包,再引用 jar 的时候,是否想到引入最新的版本,还是 copy 以前的项目来中的配置过来。而随着时间的推移,是否会想着要更新版本。

提出的两个问题,可能工作中很少去思考的问题,一般情况下,引入 jar 包时,从以前的项目中拷贝过来,因为 maven 项目中,引入的 jar 包,很可能产生包的冲突,会因为这样的问题,延误自己的工作。

不使用最新的 jar 包,也有一套说法,最新的jar包的东西,有错误怎么办,而且最新的 jar 包删除了自己了解的信息,那么知识又得重新学习一遍。如果有一些代码洁癖的,碰到过时的方法需要换成不过时的时候,那么更新整个项目的文件也是一件痛苦的事情。

也因为上线的产品,特别需要稳定,搭建好的项目一般不愿意大的改动,特别是使用基础的框架,例如Spring的升级,dubbo的升级,这种改动很可能对现在的项目产生一些未知的错误。保险起见,大部分的上线项目,能不改动就不改动,加加功能就可以了。Java8使用已经很常见了,但是还是有相当多的项目并不是这个。也不愿意升级,甚至Java8中的那些超级好用的新特性都不愿意去了解了。

对于我来说,如果可以我一般使用最新的框架,最新的 jar,最新版本。例如hadoop,网上有非常多的教程是按照 hadoop 的2.x版本去写的,但是我偏要使用hadoop 3.X的版本,

第一点:接下来的相当长的时间内,业界都将使用hadoop 3.X版本,hadoop 2.X版本逐渐成为过去时,如果我一开始学习时 hadoop 3.X,那么以后就可以节省一些时间。

第二点:新的版本中对旧版本是优化,甚至部分东西,是当前业界普遍认同且流量的使用方式,这也方便自己去了解最新的知识。

在我学习 Java 的使用,安装的是 Java7 的项目,但是当到了 2016 下半年的时候,我就开始学习 Java8 的知识,并且接下啦的项目中也使用 Java8 项目,即使当初的框架是有其他员工搭建,我也尝试的说服他们去使用 Java8 ,现在 Java更新的非常快,半年更新一次,但是 Java9 改动太大, 而且oracal下的jdk逐渐不在免费,估计再过一段时间就要对 Java 升级了。不断升级的好处是,迫使自己学习一些新的知识,也能够提升自己的视野。再使用 Mysql 数据库的时候,是否想过使用 Nosql非关系型数据库的 存储 Json格式的数据呢? Mysql 5.7 版本就支持了,如果是还没从低版本升级到 5.7 ,很可惜这些新特性都将使用不了,最近 Mysql 8.X 都出来了。

现在的公司的项目,引入框架的版本大部分是比较新的,如Mysql 已经升级到8.X了,一些版本,差不多官网上推出不到一个月,项目的版本就更新到最新的版本上了,加入自己引入一个框架,然后对比了一些,自己是较新的,那么会将项目的所有引入的换成新版本,而且必须要解决过时代码的问题。

更新换代是常有的事情,特别是在互联网,迭代是一种普遍的认识,而且不断升级也是普遍的认识,如果是一个项目,里面的内容都还是老的,没有去更新,那么它就逐渐被淘汰了,也不会再有人去维护它。没有活水的池塘会逐渐干涸。

    原文作者:王伟
    原文地址: https://zhuanlan.zhihu.com/p/51940299
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞