【发布时间】:2019-03-05 00:34:32
【问题描述】:
我一直在问自己这个问题:使用 Flutter 创建的应用程序是 100% Native 的吗? Flutter 应用程序的性能可以等于或优于使用 Java / Kotlin 创建的应用程序吗?很多人说用flutter创建的应用程序不是真正的原生,它们是混合的或类似的,我在互联网上的一些地方也看到过,所以我想看看你的说法,谢谢。
【问题讨论】:
我一直在问自己这个问题:使用 Flutter 创建的应用程序是 100% Native 的吗? Flutter 应用程序的性能可以等于或优于使用 Java / Kotlin 创建的应用程序吗?很多人说用flutter创建的应用程序不是真正的原生,它们是混合的或类似的,我在互联网上的一些地方也看到过,所以我想看看你的说法,谢谢。
【问题讨论】:
答案取决于您对“原生”的定义。
对于某些人来说,“原生”意味着使用操作系统提供的 UI 小部件。
Flutter 应用程序是“原生的”,因为它们被编译为原生机器指令,而不是由 VM 解释。对于 Android 和 iOS 应用程序,这意味着它们被编译为 ARM 代码。
从保真度的角度来看,这确实意味着 Flutter UI 小部件的外观或行为可能与操作系统的 UI 小部件不同。然而,从性能的角度来看,Flutter UI 小部件与操作系统的性能一样(或可能更多)。
延伸阅读:Pitching Flutter to your company or client: 3. Native Apps
【讨论】:
根据这篇文章,native app 在性能上比 Flutter 要好。
所以我猜你的答案是否定的,但对于大多数情况,Flutter 绝对是一个“足够好的解决方案”。除非您正在开发超级 cpu 密集型应用程序,否则您不会注意到人类的性能差异。
【讨论】: