从一份流调报告读出中国打工人的勤劳与坚韧

太原市警方,请回应一下网友对媒体人胡新成的关心

2021年推特网黄Top10排行榜

卫生部,现在是承认失败的时候了

约炮双胞胎!王力宏男女炮友名单,首次曝光!竟有大家熟悉的“他”

分享到微信朋友圈

点击图标下载本文截图到手机
即可分享到朋友圈。如何使用?

自由微信即将改版!花5分钟留下你宝贵的意见
查看原文

Java 14 都快来了,为什么还有这么多人固守Java 8?

The following article is from 码农翻身 Author 刘欣


从Java 9开始,Java版本的发布就让人眼花缭乱了。


每隔6个月,都会冒出一个新版本出来,Java 10 , Java 11, Java 12, Java 13, 到2020年3月份,Java 14就要来了。  


说实话,这种频繁的发布有点儿让人审美疲劳,每次我看到介绍Java新版本,新特性的文章也没兴趣点开看了。 


在这么多的版本中,只有Java 8, Java 11 和未来的Java 17 是长期支持版本(LTS),Oracle会支持3年,其他的只会支持6个月,新版本一出,就放弃老版本的技术支持。 



这种快速的发布有好处吗?


有 ! 小步快跑一直是我们软件开发的利器,采用迭代的方式,每次发布一部分功能,推向开发人员去验证,典型的敏捷思路。


但是这种好处更有利于JDK的开发者,对使用Java的个人和公司来说,想要跟上每六个月就要升级的步伐,实在是太难了。JDK是个非常核心的基础设施, 除了安全漏洞,谁没事去升级生产环境的JDK啊?出了问题谁负责? 


所以,按道理讲大家都会去找那些LTS的版本来升级,例如Java 11, 但是事实证明大部分人还在固守Java 8 : 



这个调查显示,使用Java 8的公司和程序员高达80%, 这是为什么呢?大家为什么不升级到Java 11呢? 


我个人觉得主要原因是对开发有利的重大特性升级很少,吸引力不够。


在过去的十几年中,Java相继引入的泛型、注解、NIO、函数式编程等核心功能,极大地影响了应用程序开发的方式,你能想象现在的Java中没有注解会是什么样子吗? 


这几年的Java版本中,就缺乏这种重大功能的升级了,我把我有点印象的功能升级列一下: 


版本 重要特性
Java 9

模块化系统

Java Shell  :交互式命令行控制台

Java 10 局部变量类型推导
Java 11

各种加强:Stream , String, Collection

标准化的HTTP Client

ZGC

Java 12 Switch表达式扩展
Java 13

重新实现Socket API

文本块(多行字符串)


注意黑体的这几项, Java 9引入了模块化系统,这是个看起来很美的特性,可是对程序员来说,这是一个破坏性的更新,因为JDK做了模块化,但是很多第三方库没有做模块化, 如果想让自己的项目也模块化,很有可能是一次不断填坑的经历,尤其在使用第三方库的时候。 


Java 11的ZGC是个有吸引力的特性,它的设计目标是:支持TB级内存容量,GC暂停时间低(<10ms),对整个程序吞吐量的影响小于15%,确实挺让人激动的!如果真的实现了,程序员就可以可劲儿造对象,而不用考虑GC了,可惜这仍然是个实验性质的版本。 


至于局部变量类型推导,也只是方便了变量的声明而已。


一个JDK的版本如果想被广泛采用,一定得能提升开发效率(如泛型、注解),带来变革,这样才有吸引力, 如果给程序员们带来了麻烦, 大家就会用脚投票了。



优秀的技术人员应该具有广阔的技术视野,同时拥有贯通的技术深度,博文菌今天要向你推荐的这本书,可以算的上是还在学海中苦苦挣扎的程序员的福音——《码农翻身》



技术本来是很简单的,只是上面笼罩着层层迷雾,让初学者难以看清。本书讲了很多很多故事,在读故事的过程中就能轻松掌握相关技术,让你在畅快的阅读后,会有一种“原来如此”的感觉。
书中把计算机元素和行为用拟人手法编成一个个精彩纷呈的故事,绘声绘色且深入浅出地演绎晦涩枯燥的编程知识。学习优秀的架构师是如何思考、如何抽象、如何成长的,从操作系统、Java语言到Web技术,每个主题都深入浅出。


▊ 关于作者
刘欣(@码农翻身)
15年的软件行业从业经验,前IBM系统架构师,擅长企业应用架构和设计,领导过多个企业级应用架构设计和开发工作。

▊ 内容简介


▼ 点击链接,立即了解本书详情 ▼


▶ 博文菌●互动时间 ◀

信息爆炸的时代,你是如何应对日新月异的技术更迭的?欢迎在评论区留言~



如果喜欢本文
欢迎 在看留言分享至朋友圈 三连
截至周一中午12点
博文菌将在三连用户中抽取两位幸运粉丝
各赠送《码农翻身》一本




  热文推荐 








▼ 点击阅读原文,获取本书详情!

    文章有问题?点此查看未经处理的缓存