#675·Recaf

插件的中间 API 和隐藏实现细节,以实现稳定的外观

作者: Col-E创建于 2022年11月6日更新于 2026年4月29日
标签enhancement

创建一个中介插件 API,以允许“快速启动”插件。目前,`plugin` 模块只是一个插件系统,与 Recaf 的逻辑没有直接关系。如果用户希望能够执行某些操作,例如“在 `Classes` 上下文菜单中插入 X”,则应有某种 API 来允许内部处理此类操作。用户可以创建 `MenuItem` 实例,并将其传递给 API,其余部分由我们处理。这还将大大减少开发人员在根据不正确的假设创建插件时的错误数量。此外,我们可以将 API 定义为与 Recaf 交互的首选方式,然后可以自由地对 `core` 进行大胆的更改,只要 API 保持完整。这可能需要大量的内部重组才能正确实现,可能涉及依赖注入(JSR-330)或更深入的 CDI 设置。