1.微应用是什么
微应用即APP,本质上是微服务将后端分离出的区域单独部署。微信、微博等基于移动互联网的大众微应用已经在各类人群中大行其道,在如今信息以爆炸速度更新的盛况下,以学生为代表的年轻微应用用户带动着身边的朋友、家人开启了“指尖互动时代”。

2.微应用的优点
(1)高度个性化
由于微应用程序是定制的,它们可以让用户使用特定的功能,而无需合并大量令人困惑的功能。这些移动应用程序为用户提供了一个平滑和最小版本的应用程序,他们可以访问它来完成特定的任务。在这些应用程序中,图像以及标记都是为特定的用户需求而构建的。
(2)无需应用商店优化
用HTML开发的微型应用程序通常跳过应用程序商店,动态地存在于设备中现有的应用程序和工具集中。移动应用程序开发人员可以将它们无缝地嵌入到web/Mobile上成熟的应用程序中,或者将它们作为现有应用程序中的一个模块进行访问。这节省了大量的时间、金钱和劳力。
(3)设备不可知
微应用的一个主要优势是,无论是网络还是移动设备,它们都可以在所有设备中平稳运行。由于一个应用程序可以在所有设备上运行,因此每个平台也只需要一个单独的应用程序。用户可以通过浏览器、电子邮件或推送通知访问这些应用程序。
延伸阅读
3.微应用程序的基础
(1)面向用户的应用
面向用户的应用程序的代码库包含了孤立的模块,并作为协调器,将它们整合为统一的用户体验。其实现应尽可能少,因为所有的特性和业务逻辑都存在于专门的模块中。它在启动时实例化特性模块,提供模块所需的服务,将相关信息从一个模块传递给另一个模块,并传播操作系统和应用程序的生命周期事件。
(2)特性模块
每一个特性或特性组属于同一业务垂直领域,在一个专门的模块中存在。举例来说,在电子商务应用程序中,浏览库存可能存在于购物车管理不同的模块中。在模块的代码库中,有该功能所需的所有业务逻辑和自定义用户界面。
模块并不直接实现低级别的特性,比如联网或持久性;相反,它们为所需的低级别的特性定义了抽象,并依赖于插入的应用程序来提供具体的实现。开发者主要通过单元测试和建立专门的微应用程序来迭代特性模块。
(3)用户界面模块
不管微应用是否具有设计系统,所有跨特性的用户界面元素和配置都应该在一个专门库中,可以导入特性模块。这样可以大大减少用户界面代码的重复,并帮助为用户提供一致的视觉体验。
(4)基础与实用模块
基础模块和实用模块提供了特性模块和面向用户的应用程序共享的低级特性。
基础模块集中了一些特性的实现,比如与远程 API
的接口或者从设备存储中加载数据。将所有与低级特性相关的逻辑聚合起来,使其能够在进行更改时更好地进行局部推理。在不同的特性模块使用相同的底层逻辑时,每个模块都可以从其他模块的改进中获益。回到我们的电子商务应用的例子,库存浏览团队的开发者可能希望通过加速网络响应解码来提高销量。由于网络解码是基础模块的一部分,开发者所做的更改会让应用程序中的所有请求变得更快,而不仅仅是浏览特性模块的请求。
实用模块所持有的逻辑,例如标准库扩展,或定义明确的、孤立的功能,比如自定义日期格式化。这种代码的变化速度往往比基础或功能组件慢得多,因此将其存储在一个专门的库中意味着在构建消费者应用程序时无需重新编译。
(5)工具
在微应用程序中,CI可以检查每一个更改集,确定修改过的模块及其下游依赖关系,并且只对代码库中较小的子集运行测试,而忽略那些未受更改影响的子集。这些构建将变得更快,因为表面积较小,开发者也可以更快地得到关于他们修改的反馈。
以脚本或高级代码生成工具(如
Tuist)形式出现的自动化,使得将新模块集成到面向用户的应用程序中成为一项不太容易出错的任务,使开发者不必编辑包含许多选项的配置文件,完全不需要对应用程序的依赖关系树进行全面的心智表征,并且不需要知道构建系统的神秘细节。微应用程序的自动化底层的质量,可能是争论发布所花费的时间与任何人都能触发的一步到位的过程之间的差异。
CI和自动化在微应用程序中必不可少,能够确保测试和部署的快速进行以及模块的无缝集成。
以上就是有关于微应用的定义及优点的全部介绍,如果还想了解更多微应用的相关内容,敬请关注三个皮匠报告网站。
推荐阅读
计算机中wban是什么?组成及应用介绍
微电网是什么?构成与作用分析
《App Annie:2021年移动游戏解析(45页).pdf》
《个推:APP消息推送白皮书(2022)(41页).pdf》