RN 是一套概念/设计理念跨越两个平台,具体到实际平台上去还要去适配和桥接差异性(这其中有巨大的工程成本和性能牺牲,比如做动画,js 就绝对不能用,用了性能就差了)。Flutter 至少做到了一套代码(不涉及平台 api 层面的 UI 及纯事件响应可以完全一样)。
Flutter 相对来说是做到了跨平台。RN 更适合称为:将一种设计理念延展到两个平台,不能称其为“一套代码,自动部署多平台”的跨平台方案。
3. 对未来的适应性
由于 Flutter 从更基础的层去抹平平台差异,Flutter 站在了更宽广、更可控的一个基础平台上去演变和发展。RN 永远需要 follow native 开发的这套约束,桥接和抹平差异乃至应用层去适配的成本、面对具体场景去优化性能所需要的成本都是居高不下的。RN (动态化当然是首要好处,这是这份回答的隐含前提)属于“大公司扛大旗,赚吆喝,小公司跟着复用下现有资源”。
4. 动态化技术的未来
我个人认为 RN、weex 这类设计都是走不远的,为什么,动态化技术最成熟的就是 H5/Web,真正产业化(标准化、研发支撑、上下游软件开发商、开发者生态)的技术栈还是 H5/Web。所以业界(软件公司、开发团队)对于动态化技术的期待就是 H5,H5 是要由浏览器来支撑的,RN 的能力不到浏览器的 5%(举例 index = 1000,绝对布局,各种动画和复杂布局能力很难用 native 来实现,还有各种布局模型、浮动元素、css rule,不一而足。举例:本人曾经跨 Android、iOS 对等的实现全规范 css 中的渐变色,开发测试花了 2 天,可能还有未知的 bug)ÿ
如何评价-Google-的-Fuchsia、Android、iOS-跨平台应用框架-Flutter
最新推荐文章于 2024-04-26 22:49:13 发布