写点什么

小程序容器 + 自定义插件,可实现混合 App 快速开发

作者:Speedoooo
  • 2022 年 8 月 01 日
  • 本文字数:1678 字

    阅读完需:约 6 分钟

近年来,得益于技术的迅猛发展,具体体现之一就是插件技术、分层技术等现代技术的快速进步。

什么是插件技术?

插件技术指的是一种应用程序,遵循程序接口完成相应的编写,再规范接口插件,达到拓展程序功能的目的。现在许多软件开发的过程中均包含了插件结构。


当前软件开发中运用到的插件技术主要有以下两种类型:

1、组件对象的模型插件。该技术又被简称为 COM,利用该模型可以直接定义程序接口,而不需了解插件功能的整个实现过程,同时也能达到不同插件间通信的目的---此类插件也是市面上使用最广泛的插件类型。

2、脚本插件。将插件逻辑运用编程语言转换为脚本代码(这里的编程语言可以是通用语言,也可以是自行开发)当前脚本插件的主要语言形式为 XML,在利用过程中具有简便、易于操作等优势,同时也使得脚本插件具备一定的风险漏洞。


使用插件技术在软件设计中有什么好处?

使用插件技术能够在分析、设计、开发、项目计划、协作生产和产品扩展等很多方面带来好处:

1、结构清晰、易于理解。由于借鉴了硬件总线的结构,而且各个插件之间是相互独立的,所以结构非常清晰也更容易理解。

2、易修改、可维护性强。由于插件与宿主程序之间通过接口联系,就像硬件插卡一样,可以被随时删除,插入和修改,所以结构很灵活,容易修改,方便软件的升级和维护。

3、可移植性强、复用力度大。因为插件本身就是由一系列小的功能结构组成,而且通过接口向外部提供自己的服务,所以复用力度更大,移植也更加方便。

4、结构容易调整。系统功能的增加或减少,只需相应的增删插件,而不影响整个体系结构,因此能方便的实现结构调整。

5、插件之间的耦合度较低。由于插件通过与宿主程序通信来实现插件与插件,插件与宿主程序间的通信,所以插件之间的耦合度更低。

6、可以在软件开发的过程中修改应用程序。由于采用了插件的结构,可以在软件的开发过程中随时修改插件,也可以在应用程序发行之后,通过补丁包的形式增删插件,通过这种形式达到修改应用程序的目的。

7、灵活多变的软件开发方式。可以根据资源的实际情况来调整开发的方式,资源充足可以开发所有的插件,资源不充足可以选择开发部分插件,也可以请第三方的厂商开发,用户也可以根据自己的需要进行开发。

App 快速开发离不开「Hybird」混合开发模式

自从小程序容器技术被应用到微信中,整个微信的小程序生态便被带火了。于是乎,就有企业开始研究,能不能将小程序容器技术开发出来,应用到别的 App 中呢?还真有,例如FinClip

「Native+H5」和「Native+小程序」两种混合式 APP 开发模式相比之下,「Native+小程序」的开发模式更优。技术优势包括:

  • 具备跨平台的能力,一套代码可以在 iOS 与 Android 两个平台中运行;

  • 远超过 H5 的体验(支持本地缓存,Webview,有丰富的组件与支持库);

  • 能获取更多系统权限,完成更加丰富的产品设计;

  • 可以避免 DOM 泄露(不使用常用的 window 对象与 document 对象);

  • 包尺寸有效减少,节省流量和存储

  • 服务不再受发版所限制,支持热更新


小程序+插件+App,高体验的组装式 App 诞生

如果从体验上说,采用原生开发的 App 体验上肯定是最好的。但市场上的用户需求日新月异,业务发展也需要跟得上用户的需求迭代速度,于是乎,「跨端」理念就开始映入了程序员的眼帘。从做程序员的第一天开始,就要接受跨端的“洗礼”,换句话说就是要快!而且质量好!


小程序这种介乎于 H5 和原生之间的语法便诞生了。


与此同时,软件的快速开发,其本质是将重复的底层功能提取出来,已组件的形式嵌入到框架之中,力求最大程度的减少开发人员的开发难度,节省开发时间。一个企业要做到面面俱到,几乎是不可能的,因为用户的需求千差万别,要想尽可能的做到尽善尽美,必须要在开发技术选型上下足功夫,选择一些具有一定开放性的开发平台,对于这种“开放性”的理解,自定义插件必不可少。


稍微调研了下 FinClip,他们有自己的小程序插件市场,Finclip小程序应用市场可以了解一下。一些第三方原生插件也有相当程度的自定义支持,例如声网(Agora)插件


自定义插件在快速开发平台中的重要作用,以传统开发方式为基础,以敏捷思想作指导,这样开发出来的产品可拓展性强,用户满意度也会很高。

用户头像

Speedoooo

关注

还未添加个人签名 2021.10.08 加入

还未添加个人简介

评论

发布
暂无评论
小程序容器+自定义插件,可实现混合App快速开发_小程序_Speedoooo_InfoQ写作社区