插件式的架构设计简单来说就是将一套系统中的算法和功能不同而接口相同的同类事物抽象为插件的一种架构设计方式。我更将其看作是策略模式在整个系统的应用,如果采用微服务架构,插件也可以理解为微服务中的微单元。甚至于微服务架构也可以理解为一定程度上的插件设计,微服务作为大系统的插件而存在。 我最初使用这种方式是在工作第一年,当时参与公司产品重新架构,使用C编写程序,利用C语言的动态库动态加载能力,我们实现了不同厂家设备的动态支持和适配。当时还没有这样的架构名称,我在后来的使用中,不断提炼核心思想,姑且将其命名为插件式架构设计。 插件式架构设计的抽象设计如图所示: 主要给出了基于插件体系的一系列相关层,