如何与专门的 Native Apps 团队一起实施微前端?

Txu*_*ugo 8 architecture ios microservices micro-frontend

(找朋友 ;-) )

我正在与 Web(反应)和移动(IOS、Android)团队合作。我发现即使使用微服务架构,我们最终总是在前端/客户端级别做重复的工作。如何实施微前端架构,以减少前端工作的重复,但仍为本地客户端提供高质量的体验?

更多背景:

我阅读了 Cam Jackson 的microfrontends 文章并浏览了Michael Geers 的 microfrontends blog。我意识到我们更接近微服务模式:

微服务架构

比微前端之一:

微前端

这主要是由于康威定律。即使拥有拥有完整产品的专门团队,我们仍然有专门的团队仅用于 IOS 和 Android 原生工作。每一个新的离散功能,即使在 API/服务级别有明确的有界上下文,最终都会被分割成相同功能/组件的多个不同前端实现,主要是为了支持原生应用程序(这要求每个组件运行在本机应用程序必须是本机)。这让我想到了实施微前端。在理想情况下,不会有任何专门的本地应用程序团队,而 ios 和 android 开发人员将集成相应的产品团队(如上图所示)。但这不是一个选择。

鉴于我们的网络应用程序具有与移动应用程序相同的外观和感觉。创建单个 Web 组件作为微前端的一部分并在具有嵌入式 Web 视图的本机应用程序中使用它是否是个好主意?这会被视为微前端架构吗?这种方法有什么缺点?

这样,构建响应式 Web 组件的同一团队将负责端到端的功能。并且只留下核心用户旅程和本机特定功能(如 AR 和条形码扫描)作为本机组件运行。