自从 2016 年在技术雷达中介绍微前端以来,我们已经看到 Web UI 广泛地采用它们。然而,最近我们看到一些项目把这种架构风格也拓展到了 移动微前端 。当应用程序变得足够庞大与复杂时,就有必要将开发工作分配给多个团队。这提出了围绕团队自治、仓库结构与集成框架的许多挑战。过去,我们提到过 Atlas 与 BeeHive,但是这些框架未能获取关注而且也不再处于活跃开发状态。最近的方法包括用于将多个团队的工作集成到单个应用程序中的 Tuist 或 Swift 包管理器。但根据我们的经验,团队最终经常会实现自己的集成框架。虽然我们毫无疑问看到了在扩充移动开发团队规模时对模块化的需求,但是对微前端的需求却不太确定。这是因为尽管微前端意味着团队与页面或组件之间的直接对应关系,但是这种结构却有可能最终导致业务领域上下文的职责模糊,由此增加团队认知负载。我们的建议是遵循良好、整洁的应用程序设计,当规模扩大为多个团队时采纳模块化,仅当模块与业务领域高度对齐时才采用微前端架构。
自2016年雷达介绍了微前端以来,我们已经看到其在 Web UI 中得到了广泛应用。然而,最近我们发现不少项目也将这种架构风格扩展到了移动应用程序中,亦可称其为移动微前端。当应用程序变得足够庞大且复杂时,有必要将其开发分布在多个团队中。如此一来,在保证团队自治的同时,还要将他们的工作集成到单个应用中是很有挑战的。 有的团队在编写自己的框架来支持这种开发风格,过去我们提到过 Atlas 和 Beehive 可以作为可行框架以简化多团队应用开发的集成问题。最近我们看到有的团队亦使用 React Native 达成了此目标。各个 React Native 微前端在各自的代码仓库中保存,以支持独立的编译、测试和部署。负责整体应用的团队则将各个团队构建的微前端统一集成到发布版本中。
自2016年雷达对其进行介绍以来,我们已经看到微前端在 Web UI 中得到了广泛应用。 然而,最近我们发现不少项目也将这种架构风格扩展到了移动应用程序中,亦可称其为 移动微前端 。当应用程序变得足够大且复杂时,有必要将其开发分布在多个团队中。如此一来,在保证团队自治的同时,还要将他们的工作集成到单个应用中是很有挑战的。 尽管我们已经看到有的团队在编写自己的框架来支持这种开发风格,但是现有的模块化框架(例如 Atlas 和 Beehive)也可以简化多团队应用开发的集成问题。