20人小团队做钱包后放弃跨端,转做原生开发更顺畅
这是一则有意思的开发经验分享。一年前,callebtc所在团队要为iOS和Android开发一款Cashu电子现金钱包,他开始调研对比KMP、Flutter、React Native等各类跨平台开发语言。
团队共有20名开发人员,大部分是后端工程师。团队最初选择跨平台开发,完全是受资源限制:先以跨端方案起步,接受方案本身的不足,等团队规模扩大后,再拆分为两个原生应用。
某天,callebtc用Android官方支持的原生语言Kotlin开发Android版Bitchat,参考了Jack写的iOS原生Swift代码。他只用一天就做出了可用版本,一周后成品体验就已经很好。
这次经历让他决定,之后再也不会碰跨平台代码。从那之后,他们一直沿用新的开发方式:先用一门语言(比如Swift)把整个应用做到至少MVP(最小可行产品)级别,再移植到另一门语言,这套方法每次都能成功。
他们把两个应用放在同一个 monorepo(单代码库)中,之后持续为两个版本同时修复问题、添加功能。现在他们用这套方法开发出来的应用流畅、性能出色,拥有原生界面,完全遵循对应平台的最佳实践。
callebtc认为,自己未来不会再需要使用跨平台开发语言,他觉得很快所有人都会意识到这一点,完全可以直接用原生方式开发应用。