分享界面的正确方法是什么?

问题描述 投票:-1回答:1

如果我有一个依赖于抽象(接口)但不包含该接口的任何实现的项目,该怎么办?因此,我想将该界面提供给可以实现它的人,这样我(或将要使用我的软件的其他人)将能够使用他们的界面实现。

因此,我有以下问题。我可以说,如何共享该界面?

我想到的想法是制作包含界面的JAR,并将其提供给将要在JAR中实现该界面的人。在它之后,实现界面的人创建了他的JAR并将其交给我。所以我可以使用他的JAR来实现我的界面。这是一种正确的方法吗?

enter image description here

它的目的是制作模块化架构,这样如果我需要一个新游戏(根据上面的例子),我将使用已实现的接口的JAR,并将其插入我的项目中。

java modularity interface-implementation
1个回答
2
投票

是。

您应该拥有一个只包含接口的共享构建工件(JAR文件),您的项目和实现项目都可以依赖这些接口。

您可能希望查看Maven或Gradle等工具,以帮助编排具有此类依赖关系的构建过程。例如,您可能希望将API JAR发布到开发人员可以使用的共享包存储库。

您可能还需要查看java.util.ServiceLoader和Service Locator模式,以发现您可以使用的具体实现。

© www.soinside.com 2019 - 2024. All rights reserved.