当前位置:网站首页>App快速开发建设心得:小程序+自定义插件的重要性
App快速开发建设心得:小程序+自定义插件的重要性
2022-08-05 04:11:00 【speedoooo】
近年来,得益于技术的迅猛发展,具体体现之一就是插件技术、分层技术等现代技术的快速进步。
什么是插件技术?
插件技术指的是一种应用程序,遵循程序接口完成相应的编写,再规范接口插件,达到拓展程序功能的目的。现在许多软件开发的过程中均包含了插件结构。
当前软件开发中运用到的插件技术主要有以下两种类型:
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)插件
自定义插件在快速开发平台中的重要作用,以传统开发方式为基础,以敏捷思想作指导,这样开发出来的产品可拓展性强,用户满意度也会很高。
边栏推荐
- 重载运算符
- [Geek Challenge 2019]FinalSQL
- 35岁的软件测试工程师,月薪不足2W,辞职又怕找不到工作,该何去何从?
- Android Practical Development - Kotlin Tutorial (Introduction - Login Function Implementation 3.3)
- 包拉链不可用,但是是被另一个包。
- Ffmpeg - sources analysis
- 4T硬盘剩余很多提示“No space left on device“磁盘空间不足
- 将故事写成我们
- Mysql's redo log detailed explanation
- Use CH341A to program external Flash (W25Q16JV)
猜你喜欢
随机推荐
炎炎夏日教你利用小米智能家居配件+树莓派4接入Apple HomeKit
[CISCN2019 华东南赛区]Web11
Growth-based checkerboard corner detection method
UE4 第一人称角色模板 添加蹲伏功能
1007 Climb Stairs (greedy | C thinking)
bytebuffer 使用demo
Based on holding YOLOv5 custom implementation of FacePose YOLO structure interpretation, YOLO data format conversion, YOLO process modification"
UE4 通过与其它Actor互动开门
Ice Scorpion V4.0 attack, security dog products can be fully detected
【树莓派】树莓派调光
概率论的学习和整理8: 几何分布和超几何分布
动力小帆船制作方法简单,电动小帆船制作方法
markdown如何换行——md文件
flink reads mongodb data source
How to wrap markdown - md file
Static method to get configuration file data
【测量学】速成汇总——摘录高数帮
AUTOCAD——标注关联
机器学习概述
[SWPU2019]Web1





![[BSidesCF 2019]Kookie](/img/29/19e7c244feb86b37ab32a53aa11f25.png)


