Skandia
Skandia 使用 Flutter 提升移动应用质量
2020 年,Skandia 重新评估了其数字战略,发现其移动银行应用程序需要更新。它在功能和性能方面开始落后于竞争对手,其 Android 和 iOS 应用程序之间的功能差距也开始扩大。
对于七人开发团队来说,修复这些差异,同时添加和改进现有功能变得越来越困难,这主要是因为代码库过时且不可扩展。
团队意识到,唯一的解决方案是从头开始重写应用程序,但他们不确定是选择每个平台的完整原生实现,还是采用混合方法,或者寻找跨平台解决方案。
为什么选择 Flutter?
团队评估了多个选项,包括继续使用原生应用程序。但是,他们也看到了尝试新的、更具创新性的解决方案的机会,他们开始关注跨平台框架。
其中一个潜在的框架是 React Native,因为 Skandia 已经拥有几名网页开发人员。但虽然这最初可以节省他们通过避免组建完整的应用程序团队而节省的资金,但他们意识到,在进入原型阶段之前,成本将超过收益。
Skandia 还考虑了嵌入式网页方法,因为他们已经习惯为特定用例构建微型网站。但这种方法无法很好地扩展或与原生功能很好地配合,团队希望获得比它所能提供的更好的移动 UX/UI 体验。
最终,一位在 Flutter 上开发过多个个人项目的 Skandia 开发人员向技术团队推荐了 Flutter 作为潜在的解决方案。在构建了概念验证后,Flutter 满足了团队的所有需求。它可以帮助他们确保跨平台的一致性,通过编译为原生代码提供出色的性能,并允许团队轻松扩展功能。Skandia 还赞赏 Flutter 强大的社区和支持,因此决定继续使用 Flutter。
他们的解决方案
虽然迁移意味着重新培训和增加一些新的 Flutter 工程师,但招聘和入职过程比他们预期的更容易。如今,团队中大部分成员都是来自非 Flutter 专业背景的开发人员,包括 Web、后端和原生移动开发人员。
经过短暂的入职期后,Skandia 报告称团队对这种改变感到高兴。他们遇到的少数问题通常可以在内部快速解决,通常借助 Flutter 社区的帮助。
得益于 Flutter 的可移植性,团队将他们的应用程序作为桌面应用程序在内部提供,用于一般开发工作,从移动应用程序中移植了 90% 以上的功能。 (另外 10% 是必须在物理设备上执行的平台特定功能。)Skandia 每天使用桌面应用程序来实施设计和技术更改,使他们的开发流程比以前更高效。
“开发人员的幸福感大幅提升,从为实现新功能而绞尽脑汁到纯粹的快乐。”
- Johannes Löhnn,Skandia 应用架构师
结果
几个月后,Skandia 发布了使用 Flutter 开发的 Android 和 iOS 应用程序的更新版本。
即使是在新的平台上,团队的开发速度也大幅提升。得益于 Flutter 的热重载功能,团队报告称,他们在改进设计和功能方面能够像 UI/UX 开发人员一样快速迭代,同时仍然能够按时完成所需的工单。这也将 Skandia 的上市时间缩短了几个月。
在内部,开发人员的满意度大幅提升。Skandia 团队对这种改变感到非常高兴,并感谢能够访问 pub.dev 上的 Flutter 和 Dart 开源包库。
Flutter 帮助 Skandia 在移动质量标准方面赶上了竞争对手,使他们能够通过加速启动和动态加载内容来优化用户体验。所有这些优势都帮助 Skandia 为客户提供出色的体验,并使团队能够更轻松地处理后端的瓶颈。
迁移到 Flutter 还带来了意想不到的经济效益:团队现在需要的顾问更少了。相反,他们雇用了一个规模小、速度快、灵活的团队,并拥有共享的知识库。