软件如何允许开发人员在其核心之上创建插件/扩展?这与面向对象编程有什么关系?也许可以使用继承或接口?应该使用哪种设计模式?
例如,增强firefox、wordpress扩展等的firefox扩展。这些系统在安装后可以“识别”插件,并且工作良好,在某些情况下,它们执行安全检查、依赖关系等。
有人愿意解释一下吗?
发布于 2011-01-24 09:05:31
像firefox这样的真实应用程序中的插件模型可能比一般情况下更复杂。一般来说,你定义了一些插件应该实现的接口,并在你的插件中实现它,仅此而已。现代框架包含插件开发工具,如.NET中的MEF、Java中的mojo等。
发布于 2011-01-24 09:15:57
Java通过其SPI (服务提供者接口)支持基本的插件机制。主要机制围绕着新提供者的发现和绑定。下面两篇文章将帮助您入门
有一些开源框架比JDK提供的框架更强大。
但在我看来,OSGi是所有插件框架的标准和母体。
https://stackoverflow.com/questions/4777647
复制相似问题