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