前端,何不尝试一下『插件化』开发

前端,何不尝试一下『插件化』开发

前端组件化开发

随着MVVM的框架和库的流行,想必组件化开发已经成为了前端开发的主流思想,特别是Vue、React、Angular已经有比较成熟的开发模式、社区和UI组件库。

现在的前端,开发页面代码量太、逻辑多、同一功能组件可能在多个页面中复用。而这些框架或库的出现,很好的将页面进行了功能拆分、组件封装,组件的通用性大大的提高了可维护性。同时功能单一的组件也极大的解耦了系统间功能的耦合,大大的提高了前端工程的开发和维护难度,提高了开发效率。

我在企业中的前端开发我曾从事过多个类型的前端项目开发工作,初创型功能明确产品、成熟型功能明确产品、面向企业或单位的部分功能不明确产品都有涉猎。下面介绍一下我所遇到的产品特点。初创型功能明确产品特点产品功能很固定需要不定期维护和更新时常有新功能需要上线成熟型功能明确产品产品功能很固定需要定期维护和更新定期上线新功能有2个以上类似系统重用绝大部分功能开发上线不能影响其他功能功能复杂,全站回归测试很耗时面向企业或单位的部分功能不明确产品产品需要在不同地方定制开发和部署产品有很大部分功能相同或相似需要进行后期维护我如何解决代码重用、快速开发『成熟型功能明确产品』和『面向企业或单位的部分功能不明确产品』都有一些共同的特点。很大部分逻辑功能是相同的,它们可能会用在很多的系统里面这些功能是需要维护的,不可能维护一个功能要去N个系统里面修改修改某一部分功能不会影响到其他功能,可以随时上线,全站回归的成本太高。

而我的整体思路是渐进式的封装到可视化开发

建立内部UI组件库(封装粒度小)基于UI组件库搭建业务组件库(封装粒度一般,有部分功能逻辑)基于UI组件库和业务组件库建立插件库(封装粒度大,包含完整业务逻辑)* 基于插件化开发的模板编译生成页面代码* 基于平台的可视化配置+模板编译的低代码开发平台什么是插件化开发

借用内核+应用软件开发的思想,首先有一个插件调度的核心,在这个核心的支持下可以开发支持这个核心的应用程序,我把这些应用程序称为『插件』,插件是一个具有完整逻辑的应用程序,它不依赖任何其他的插件,只需要依赖核心即可在系统中独立运行。

核心所包含内容

插件调度基础组件(引用自建或第三方)基础服务http服务数据格式转换时间转换等事件总线其它自动加载插件文件(异步)

插件系统核心作为插件的环境依赖,为插件提供基本的服务、插件调度、事件和其他的一些基本功能。插件之间的相互调用可以通过插件核心进行传递,且这个调用是解耦的,不影响插件内部的逻辑。插件核心所提供的基础组件、业务组件来自于外部依赖,所以插件核心是一个相对精简的核心,可以通过外部依赖来扩展插件核心的功能。

插件的核心我已发布到NPM,可以通过NPM直接安装。

插件系统NPM


比丘资源网 » 前端,何不尝试一下『插件化』开发

发表回复

提供最优质的资源集合

立即查看 了解详情