Java 9中的模块系统的优缺点是什么?

Java 9版本中的一个主要更改是Module System,它提供了可在可用内存较少的设备上运行的模块化JVM。JVM仅与应用程序所需的那些模块和API一起运行。

module Module-Name {
   requires moduleName;
   exports packageName;
}

以下是模块系统的一些优点和缺点。

模块的优点:

  • Java 9的主要变化是它现在是一个具有模块化JDK模块化源代码模块化运行时映像的模块系统。

  • 内部API隐藏在模块中。

  • 模块系统为可处理分布式数据处理的项目开发创造了更多机会。例如,新的Java 9已用于构建需要同时处理各种数据的IoT解决方案和平台

  • Java中的模块现在还使方法在模块内部公开,并限制普通用户的访问。

模块的缺点:

  • 在Java 9发布之后,不再支持Java的早期版本,并且客户端可能必须花费时间和资源进行迁移。

  • 如果一个项目仍处于开发阶段,那就不会太困难。但是对于其他解决方案而言,迁移可能是一个严重的问题。

  • 程序产品和库的相互依赖性问题尚未解决,因此很难安装新产品和卸载旧产品。