Kotlin Multiplatform Can’t Do It All. Which is Exactly Why You Should Try It!

From touchlab.co/Kotlin+Mult…框架

在开始以前,我想澄清全部工具都是为解决问题而建立的,但它们都没有解决全部问题。若是您的开发团队匆忙,或者高质量的UI不是主要优先事项,请继续选择像Xamarin或Flutter或React Native这样的“端到端”开发平台来为Android和iOS编写应用程序代码。你能够完成工做!工具

如今,若是您已经拥有应用程序的UI,或者您但愿为每一个平台优化UI,那么您将须要使用Kotlin Multiplatform。缘由?它根本不作UI(至少尚未)。但它的确作到了 - 并且很是好 - 是Android和iOS应用程序的业务逻辑优化

虽然其余多平台解决方案但愿支持全部应用层,但它们没法充分覆盖全部应用层。

不管如何,跨平台共享UI代码并不必定是可取的。一般,当完成此操做时,须要进行屡次迭代才能使UI看起来更具原生性。这将耗尽开发周期,给您的开发团队带来更多压力,以便按时交付。一般,该业务正在推进更多功能而不是UI质量。共享UI是有风险的,对于士气或业务而言,它不多有用。编码

与Xamarin,Flutter或React Native不一样,Kotlin Multiplatform并不属于本身的生态系统。相反,它很是像一本“选择你本身的冒险”一书,这就是它如此强大的缘由。

虽然KMP目前拥有有限的库(虽然数量正在增加),但它确实使您可以使用iOS和Android上的全部现有库和工具,所以无需等待库或实施黑客和解决方法。你不能用Flutter或React Native作到这一点,而不会遇到至关大的障碍。3d

Kotlin Multiplatform的输出只是Android上的另外一个软件包和iOS上的框架。这能够节省大量的时间和麻烦,由于编写桥接代码或彻底重写其余解决方案中缺乏的东西的时间要少得多。code

要在Flutter中编写业务逻辑代码,您的团队首先必须使用小众语言编写共享逻辑--Dart - 在新的生态系统中,使用较小的社区,而且难以将其与现有代码链接起来。在React Native中,您的移动团队须要沉浸在JavaScript的新IDE和其余工具的Web生态系统中。在Xamarin中,他们必须使用C#编写代码,使用Visual Studio,以及一个较小的,不太活跃的社区。更糟糕的是,不管您的团队使用哪一种平台,他们都须要在本机和非本机代码之间创建通讯桥梁。orm

可是,在Kotlin Multiplatform中,您的团队能够编写特定于平台的业务逻辑,与本机平台直接通讯,无需等待库或实施黑客或变通方法。

(若是你愿意,你能够选择。这也是你选择的冒险的一部分。)即便有任何问题,与Kotlin Multiplatform的可选共享意味着你只须要恢复与问题直接相关的代码 - 不要撕掉整个引擎,由于一个坏的火花塞。因此,你老是有选择。cdn

固然,这很重要,由于它是决定应用程序中全部功能如何工做的业务逻辑。由于您为此层编写了一次本机代码,因此能够加快开发时间并帮助确保可靠的代码库。另外,编写一组本机代码是一种很是有效的方法,能够为之后的版本提供面向将来的代码。blog

换言之,Kotlin Multiplatform为您的开发团队提供了更大的灵活性。

其余多平台解决方案基本上是专有的,致使供应商锁定。它还致使须要实际管理第三个平台,由于生态系统与本机平台太不相同,而且由于它们试图解决全部问题,但它们没法解决全部问题,您须要编写更多特定于平台的代码比宣传的。ip

与Xamarin和React Native不一样,Kotlin Multiplatform不须要VM。Flutter不须要生产中的VM,但它确实将您置于非本地生态系统,使用非本地语言编写,这与Kotlin Multiplatform不一样,Kotlin Multiplatform尊重每一个平台的本地语言和生态系统。Kotlin Multiplatform是您的团队目前可使用的最原生的多平台解决方案。

KMP并无隐藏您正在处理多个平台的事实,由于它已经编译为iOS或Android的本机库。

没有中间层能够处理,几乎消除了任何互操做瓶颈。因为Kotlin Multiplatform与原平生台生态系统协同工做而不是本身的生态系统,开发人员可使用他们一直使用的工具和库,包括SwiftUI和Jetpack Compose等新平台创新。您遇到的限制并不是死胡同,由于您始终可使用Kotlin,Swift或其余语言对其进行编码,以便以最小的风险解决问题。

总而言之,这就是咱们如何衡量多平台解决方案的世界。下周,咱们将分享有关咱们排名细节的更多细节。在此期间,若是您有兴趣与咱们讨论Kotlin Multiplatform,请与咱们联系

Harvey-Scorecard.png
相关文章
相关标签/搜索