App快速开发建设领悟:小程序+自定义插件的重要性

2022-08-05 15:08:06 浏览数 (3)

插件的出现可以追溯到1970年代中期,当EDT文本编辑器在Univac90/60系列大型机上运行UnisysVS/9操作系统的时候,其提供了一项功能就是编辑器可以运行一个程序,并允许这个程序进入编辑器的缓冲,允许外部程序染指内存中,正在编辑的任务。

插件程序使得编辑器在缓冲区上进行文本编辑,而这个缓冲是编辑器和插件所共同享用的。近年来,是插件技术、分层技术等现代技术的快速进步一定程度上推动了技术行业的发展。

插件技术的定义和类型?

插件是指会随着IE浏览器的启动自动执行的程序。而插件技术就是指的是一种应用程序,遵循程序接口完成相应的编写,再规范接口插件,达到拓展程序功能的目的。现在许多软件开发的过程中均包含了插件结构。

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

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

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

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

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

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)插件

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

0 人点赞