深入剖析Java新特性,手把手带你吃透Java新特性

你将获得什么?

  • JDK 8 以来重量级的 Java 新特性清单
  • 从案例出发,全方位拆解新特性
  • 突破 Java 技能瓶颈的快速通道
  • 即学即练,吃透新特性的应用场景

课程介绍

最近几年,JDK 推出新版本的频率真是让人有些望尘莫及。3 年前,LTS 版本的 JDK 11 刚刚推出,今年 9 月之后,它又要被同样作为 LTS 版本的 JDK 17 顶替了。

然而对于从事一线开发的 Java 工作者来说,“版本任你发,我用 Java 8 ”似乎是一句经久不衰的口头禅。这句话的背后隐藏的疑问是:学这些新特性真的有必要吗?

对于很多人来说,因为自己所在的公司还在使用 JDK 8,所以这些新特性,即使学了也用不上。

不能否认,一种新特性从诞生到被大众所接纳,确实需要经历一段相对漫长的过程。但设计一项新特性,是为了满足更新的需求,是为了迈向更广阔的前景。新特性本身,就是技术进步的具体体现。这些新特性的优越性,会随着时间的推进变得越来越明显。

几年前,淘宝的基础设施从 JDK 7 升级到 JDK 8 。升级的过程,当然有很多争论和不情愿。最后的结果,我们也看到了,淘宝并没有停留在 JDK 7 。用他们自己人的话说就是:“升级到 JDK 8 ,真香!”

所以说,对新特性的抗拒并不是明智之举,如果哪天你一觉醒来发现主流企业都已经在使用 JDK 11 甚至 JDK 17 了,很可能就会面临“书到用时方恨少”的尴尬。因此,我们请来了 Oracle 的首席软件工程师范学雷老师来给你深入剖析一下 Java 新特性。

作为Java 新特性的主要设计者之一,范学雷老师极富洞见地筛选出了 JDK 8 以来最重量级的 18 种新特性,为你划定了一条系统掌握新特性的快速通道。他不仅会通过案例带你深入了解这些新特性,还会从根源揭示新特性背后的设计理念,为你展示事半功倍的新特性叠加使用效果。 GitHub 上开设的代码库可以方便你即学即练,老师定期的评审意见则让你得到最有针对性的进阶方法论。

课程设计

按照新特性能够给我们带来的收益分门别类,这个课程一共有三个模块。它们分别是提升编码效率篇、提升代码性能篇和降低维护难度篇。

第一模块重点介绍了一些可以帮助我们提升编码效率的特性,比如说档案类、封闭类、类型匹配等。学完这一部分内容,你能够使用这些新特性,大幅度提高自己的编码效率,降低编码错误。保守估计,你的编码效率可以提高 20%。这也就意味着,如果工作量不变,每一个星期你都可以多休息一天。

第二模块的焦点在于怎么使用新特性提升代码性能,比如错误处理的最新成果、响应流和矢量运算等。学完这一部分内容,你将能够使用这些新特性,大幅度提高软件产品的性能,节省运营费用。

第三模块的重点是怎么使用新特性降低代码的维护难度,比如模块化和安全性、兼容性问题等。学完这一部分内容,你将能够编写出更健壮、更容易维护的代码,并且能够知道怎么高效地把旧系统升级到 Java 的新版本。

课程目录

开篇词|拥抱Java新特性,像设计者一样工作和思考
提升编码效率
01 Jshell:怎么快速验证简单的小想法?
02 文字块:怎么编写所见即所得的字符串?
03 档案类:怎么精简地表达不可变数据?
04 封闭类:怎么刹住失控的扩展性?
05 类型匹配:怎么切除臃肿的强制转换?
06 Switch表达式:怎么简化多情景操作?
07 Switch匹配:能不能适配不同的类型?
提升代码性能
08 抛出异常,是不是错误处理的第一选择?
09 异常恢复,付出的代价能不能少一点?
10 flow:响应流能提高内存使用效率吗?
11 矢量运算:Java的科学计算来了吗?
12 外部函数和内存接口:本地化能更高效吗?
13 原始类:面向对象的性能损耗能降下来吗?
降低维护难度
14 模块系统:为什么Java需要模块化?
15 模块系统:怎么模块化你的应用程序?
16 禁止空指针,该怎么避免崩溃的空指针?
17 现代密码:你用的加密算法过时了吗?
18 改进的废弃,怎么避免使用废弃的特性?
结束语|Java的未来,依然是星辰大海

讲师介绍

范学雷,Oracle Consulting Member of Technical Staff,Java SE 安全组成员,OpenJDK 评审成员,经历了从 JDK 5 到 JDK 18 的研发过程。同时,他也是 Java SE 安全的主要推动者和贡献者之一,是 Java 语言平台的设计实现者之一。

极客时间《代码精进之路》和《实用密码学》专栏作者,JavaOne、QCon 等会议的讲师和专题出品人。

Like (0)
Previous 2021年11月28日 下午1:27
Next 2021年11月28日 下午1:33

相关推荐

发表回复

Please Login to Comment