Dropbox 工程师近日在其官方博客和大家分享了他们“弃暗投明”的经历 —— 放弃在其 iOS 和 Android 客户端之间共用同一套代码的策略,转而使用各自平台的原生语言进行开发。
工程师表示,Dropbox 在 2013 年开发 iOS 和 Android 平台的移动应用时,采用了通过 C++ 语言在两个平台之间共享同一套代码的策略。当时的想法十分简单,开发团队希望使用 C++ 编写一次代码即可,无需分别针对 iOS 和 Android 平台各使用 Objective-C 和 Java 编写两次代码。另外,当时负责移动应用开发的团队规模相对较小,为支持快速增长的移动应用,他们需要找到一种方法以通过这个小团队在 iOS 和 Android 平台上快速部署大量代码。
但现在 Dropbox 放弃了这个策略,转而使用各自平台的原生语言(主要是 Swift 和 Kotlin)。之所以做出这个决定,是因为在两个平台共用同一套代码的隐藏开销其实很高。他们从中总结到的经验就是:如果遵循广泛使用的平台默认标准,而不是以非标准方式编写代码,他们可以不用承担本应不必考虑的开销,这种开销最终比编写代码两次更昂贵。
翻译来源:https://www.oschina.net/news/109179/hidden-cost-of-sharing-code-between-ios-and-android
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4604/viewspace-3158952/ ,如需转载,请注明出处,否则将追究法律责任。