Kotlin
A concise multiplatform language developed by JetBrains
Cash App 案例研究:在舒适区中从 KMM 受益
来自 Cash App 的 Alec Strong 分享了他们使用 KMM 并从移动端跨平台共享代码中受益的故事。
而对 Kotlin Multiplatfor 的试验决定始于一个开源项目。 我们所维护的一个叫 SQLDelight 的库正准备只生成仅 Kotlin 可用的 API,同时还决定通过 KMM 让这些生成的 API 平台无关化。 这个调整比较自然。 SQLite 是目前使用最广泛的跨平台技术,因此将是测试该技术的机会,由于 Android 版 Cash 应用的核心重度依赖该库,也为应用后续使用该技术奠定基础。
Visit the Kotlin Multiplatform Mobile portal to find more case studies from different companies!
去年,我们对如何使用Kotlin Multiplatform做了重大的改变,以帮助团队去采用它。 我们最初通过将共享代码保存在同一个代码仓库中来将 Gradle 工具链引入 iOS 构建,但是考虑到依赖项的更改频率,运行 Gradle 和重新构建项目的额外成本显的没有意义。 后来,我们为Android / iOS创建了一个共享代码库,作为共享业务逻辑的主目录。 从那时起,我们的网络、投资和增长团队都使用 KMM 构建部分业务逻辑功能。 最让我兴奋的是不仅仅 Android 和 ios 团队的成员在贡献代码,服务器团队的成员也在贡献代码! 由于我们使用 Kotlin 进行服务器端开发,因此服务器端团队现在可以在共享的代码仓库中工作,并且由于与平台无关的 Kotlin 与 Swift 非常相似,我们的 iOS 团队也可以轻松的适应这种编程语言的转变。
我们的绝大多数代码都是本地编写的—让开发人员愉快而高效地编写代码对我们来说仍然是最重要的。我们现在的重点是确保那些想要尝试 Kotlin Multiplatform 的人可以轻松地做到这一点(而且用户数量继续增长!)。 去年有更多的项目考虑将其作为一种选择,这一趋势表明了该技术的实力。 对于JavaScript,我们在尝试之后很快就放弃了,但到目前为止,团队中越来越多的人已经表现出对采用KMM的兴趣。
访问 KMM 门户,使用 Kotlin 创建您的第一个跨平台应用程序!
我们喜欢Kotlin Multiplatform,因为我们不必放弃任何我们喜欢的工作内容。 我们现在处于这样一个阶段:开发人员的工作流程没有改变,但有一个分享代码的选项,并在不离开舒适区的情况下获得所有这些好处。 我们团队终于开始发现KMM的潜力,试用它,并看到它是多么强大。
Alec Strong,
Senior Kotlin Developer
英文博文原作者: