gpt4 book ai didi

java - 与 Java 中@deprecated 代码的条件兼容性

转载 作者:行者123 更新时间:2023-11-30 07:39:47 25 4
gpt4 key购买 nike

我不知道怎么问这个所以我先解释一下问题:

我正在为另一个软件开发一个插件,它依赖于一个不由我管理的 API。

当该 API 的代码发生变化时,我需要更新我的插件以使其再次兼容(例如,由于弃用的代码、删除的类等)。

问题是,如果我更改我的插件以使其与新软件版本兼容,它就不再与以前版本的软件兼容。

是否有可能只有一个插件与软件的两个版本兼容(假设 API 中的一个类更改了名称或被删除)?或者唯一的解决方案是维护两个版本?

最佳答案

在某些情况下,您需要有两个版本的代码。
但是您可以通过使用类似于设计模式的适配器来缓解这个问题。

enter image description here

通过这种方式,您可以创建两个版本响应的通用接口(interface),并仅实现版本变体(适配类删除等)。

您可以在本书中搜索更多信息:https://iansommerville.com/software-engineering-book/

使用这种方法,您可以更新插件并在运行时加载代码。这个答案展示了如何去做:How should I load Jars dynamically at runtime?

关于java - 与 Java 中@deprecated 代码的条件兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59098831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com