我需要一些资源来讨论如何将您的软件设计为可扩展的,即,以便其他人可以编写附加组件/插件来为其添加功能。
你有什么建议吗?有没有讨论这个主题的书?
我更喜欢简明扼要的东西;一点理论和一堆具体的例子。
我不是针对特定的语言,我希望能够理解核心思想,以便我可以用任何语言实现它。
出于同样的原因,我不喜欢使用别人构建的框架(除非框架不是很高级,即没有隐藏太多),目前我只想自学主题并尝试各种方法来实现它。另外,一个框架通常假设用户对主题的了解。
更新
我不是在询问 OOP 或允许我的类被继承。我说的是设计一个将部署在系统上的应用程序,这样它就可以在部署后由第三方附加组件进行扩展。
例如,Notepad++ 有一个插件架构,您可以在其中将 .dll 文件放置在 plugins 文件夹中,并为应用程序添加不存在的功能,例如颜色选择、片段插入或许多其他功能(广泛的功能)。