当下App开发可采用:1、原生开发(如android
选择Java或Kotlin,iOS
可选择Objective-C或Swift),2、跨平台开发(React Native或Flutter)。
由于笔者最近也接触跨平台开发,这里顺便介绍一下Flutter和React Native这两个当下非常热门的跨品台应用开发框架的对比,后续若要在二者间选型可简单参考。
1、首先主要关注性能方面:
- Flutter是谷歌推出的框架,采用谷歌自家的Dart语言、拥有良好的性能,原因是Dart可以直接编译为ARM代码和Fiasco微内核并且使用自己的渲染引擎Skia。Skia同时也是Android系统的图形渲染引擎之一,iOS的渲染引擎有Quartz 2D、OpenGL ES、Metal、Core Animation、Core Image。
- React Native需要在JavaScript线程和原生线程之间频繁切换上下文,对性能有一定的影响。
2、UI组件:
- Flutter:
- React Native:
3、开发语言:
- Flutter:Google的Dart
- React Native:Java Script
4、社区和生态:
- Flutter:快速发展中
- React Native:发布更早,有比较成熟的社区,插件和三方库较多。