Mercari 允许数百万用户买卖几乎任何东西。该公司成立于 2013 年,总部位于日本,现在是日本最大的以智能手机为中心的 C2C 市场。Mercari 的客户端架构团队于 2020 年开始使用 Jetpack Compose,目标是使用可以长期扩展的现代解决方案和技术来构建其用于新应用的技术堆栈。
他们做了什么
Mercari 团队需要在 Android 视图上实现一个具有复杂状态管理和样式的设计系统,这是一个非常复杂的任务。使用 Jetpack Compose,他们不仅能够实现这个复杂的系统,而且帮助他们减少了开发每个屏幕所花费的时间。
Jetpack Compose 还帮助该团队使用设计系统为其新应用编写 UI 代码,使其 UI 代码简洁易懂。因此,该团队可以花更多时间编写屏幕和业务逻辑,例如对深色主题的实际支持。
此外,Mercari 团队编写了一个用于将 Figma 集成到设计系统的概念验证工具,该工具可以从组件设计自动生成 UI 代码。该团队表示,由于 Compose 的声明性,开发这个工具更容易。
“一旦 Android 开发人员习惯了编写 Jetpack Compose 代码,他们就不会想再回到过去。” - Anthony Allan Conda,Mercari 的 Android 技术主管
结果
在 Jetpack Compose 和他们新的设计系统的帮助下,Mercari 能够使用更少的代码编写屏幕。在具有无限可滚动内容的屏幕上(一个常见的用例),他们实际上将代码减少了约 56%。因此,他们能够在相同的时间内编写更多屏幕,从而让他们有更多时间编写业务逻辑和代码的其他部分。
此外,他们还能够在 UI 本身做更多事情,例如加入动画并使用直观的 API,如 AnimatedVisibility、Crossfade 和 Animatable。
Mercari 计划在其新应用发布之前继续使用 Jetpack Compose。他们的设计系统(使用 Jetpack Compose 编写的 Android SDK)也旨在与 Mercari 内部的多个应用配合使用。
入门
了解有关 Jetpack Compose 的更多信息。