首先native app技术 经过几轮的发展 以及 一些大型公司技术架构的稳定成型。发展速度已经慢下来
google 先是推出kotlin 优化编码效率 然后推出jetpack 提供了app开发的框架组件指导。
历经最初的小项目mvc 中等mvp 不完全成熟的mvvm后 仿佛和经济一样进入到一个成熟的平稳期。大家更关注开发效率与成本 来适应快速开发的业务需求。
h5-native混合 - PhoneGap - weex &react native—flutter
有性能堪忧的完全混合的开发模式- 原生骨架+多webview工具 -web 映射编译为原生组件 - 虚拟机直接编译为字节码 。。混合开发 - 中间过渡- 目标跨平台 这个阶段技术和思想都逐步进步了。在体验和性能上都逐步优化了
flutter google推动 从开发语言到平台全部重构 实现android ios 甚至web的跨平台一致性体验。
Fuchsia os :google 重新构建的跨平台os
dart :跨平台开发语言
可以看出未来 os 作为pc mobile 物联网等跨平台战略的核心。
聚焦当下flutter 与 android ios 虽然既具备一点基础 但其开发模式以及组件工具都还不完善。以及native flutter融合开发模式 并没有比组件更丰富的react native高出多少。其现状不容乐观。可惜的是 开发者社区对flutter的热情很高。flutter的编码布局模式仍然很复杂。比之前端html 差了不只几里地。
那么又为什么选择flutter呢。
1 思想模式是对的。 坚信跨平台。 但 react native 编译为native组件的方式 始终是一个过渡模式的跨平台 。 flutter是唯一暂时前进的方向
2 google alibaba 推动。闲鱼等app 线上稳定
3 成为双端开发的生产力 产生更大的价值
Dart是核心
使用Dart2js编译成JavaScript代码,运行在常规浏览器中( Dart Web )。
使用DartVM直接在命令行中运行Dart代码( DartVM )。
AOT方式编译成机器码,例如Flutter App框架( Flutter )。
@flutter in action :
Flutter 的特性非常适合中小型客户端团队 /Android 市场占比较高的团队 / 量
产 App 的团队。同时由于 Flutter 的特性导致其在混合开发的场景下面存在一
定劣势