应用和插件的区分
通常的,我们可以把业务相对独立的一个完整的功能,开发为插件。
开发插件的好处是系统具有非常好的扩展性。
基于niucloud-admin框架体系而言,我们一般的把一个功能单元定义为两个类型(应用、插件)。非常深刻的理解应用和插件的定义,区分他们的区别,对于系统的可扩展性和开发方案的规划是非常重要的前提。
注意!在niucloud-admin框架体系,一个框架只支持单个应用安装多个插件。而非多应用!niucloud-admin框架不支持多应用。我们设计的初衷是简单,高效,可扩展。如果多应用模式,会成倍增加开发者的复杂度,导致系统最终无法维护。
区分他们需要考虑两点
第一,要开发的系统是否庞大,是否可能要修改整个niucloud-admin框架核心代码才能实现最终的业务功能,如果涉及到前面所述,我们一般会基于niucloud-admin框架进行全面的定制。这样的开发一般叫应用开发,插件是运行在应用上的功能扩展,插件是不能独立运行的,niucloud-admin框架是一个最基础的应用。一套niucloud-admin框架开发的系统,安装和运营只能有一个应用,一个应用可以安装多个支持本应用的插件。
第二,对于一些功能,相对单一,和其他系统单元没有过多的耦合性,也几乎没有业务黏连。或者,是实现某项具体的内核功能,这类型的功能,一般定义并开发为插件。比如阿里云短信,这一个系统功能,和任何业务系统没有关联,功能完全是独立的。再比如,开发一个刮刮乐的游戏,或者抽奖的小系统。这一类型的业务系统,一般的,仅仅会对会员账户的积分,佣金等操作。和具体的其他的业务几乎没有关联,这一类型的功能,一般开发为插件。插件的好处是便于流传,各种应用都可以加载,对于小开发商来说,可以从一个插件做起。
看完以上介绍,相信大家都应该知道自己开发的时候是该选择应用还是插件了,那就赶紧行动起来,让niucloud-admin带你起飞吧!