Java 9 模块化开发:从历史到实践
1. Java 9 模块化的好处
Java 9 模块化代码带来了诸多好处,这些好处以 Java 增强提案(JEP)的形式呈现:
- 模块化运行时镜像(JEP 220) :该提案对 Java SE 平台的模块化运行时镜像进行了改进。架构师对整个 Java 运行时平台进行了重构,包括目录和核心库。这种重构有助于提高安全性、性能和可管理性。例如,像 rt.jar、tools.jar 和 jfxrt.jar 这样的库将不再直接访问,而是被拆分为多个模块。
- Java 模块链接器(JEP 282) :Java 9 引入了新的 jlink 工具,它可以通过链接模块及其依赖项来组装和构建应用程序,形成自定义的运行时镜像。jlink 工具与运行时的结构(JEP 220)协同工作,二者相互配合。
- 提前编译(JEP 295) :也称为 AOT 编译。虽然它仍处于实验阶段,但 AOT 编译器能够在 Linux 操作系统上将 Java 代码转换为本地代码。这在没有安装 Java 运行时的环境中具有很大优势,同时还能提高运行速度,因为代码是静态编译的,无需 JIT(即时)编译或预热。这种能力将应用于小型设备或高效服务器(网络设备)。随着时间推移,流行的操作系统也将支持 AOT 编译。
这三个重要的 Java 增强提案共同作用,使得基于 Java 的应用程序变得更简单、更精简、更快且更具原生性。
2. 模块化代码的缺点
尽管设计模块化代码有很多好处,但也存在一些缺点:
-
超级会员免费看
订阅专栏 解锁全文
2046

被折叠的 条评论
为什么被折叠?



