一款新的APP开发框架--Flutter

2020-08-06 13:57:11 浏览数 (47)

由于物联网的快速发展,新的APP开发热潮正在到来,谷歌、华为这些公司正在重新定义移动开发框架,而Flutter就是可选择之一。不敢说Flutter一定是移动技术的未来,但一定代表了移动技术的发展方向。

一、Flutter是什么

FlutterGoogle 于 2015 年 5 月 3 日推出的免费开源跨平台开发框架,可以快速在iOSAndroid上构建高质量的原生用户界面。Flutter旨在帮助开发者使用一套代码开发高性能、高稳定性、高帧率、低延迟的AndroidiOS应用。Flutter使用的是 Google 自己开发的网络编程语言——Dart语言

Flutter 的发展

二、Flutter 的发展

2015年 05 月Flutter的第一个版本“Sky”在Dart开发者峰会上亮相;

2018年02月27日在世界移动大会 (MWC)上宣布了第一个 Beta 版发布;

2018年03月06日Beta 2版本发布;

2018年12月05日谷歌发布 Flutter 1.0 正式版;

2019年9月谷歌发布Flutter 1.9

目前很多大公司、开发者纷纷转型使用和学习 Flutter 进行跨平台应用的开发。全世界已经有多个公司开始使用 Flutter 来开发应用,包括 Abbey Road Studios阿里巴巴Capital OneGrouponHamilton京东Philips HueReflectly 以及腾讯等。Flutter 1.9于 2019 年 9月发布,这样的更新频率给开发者和公司增加了动力,Flutter 势必将成为未来跨平台开发主流趋势。

使用Flutter的公司

三、Flutter框架特性

快速开发

Flutter的热重载能力帮助开发者快捷方便的试验、重构UI、添加特性和修复bug。在仿真器、模拟器、ios、android硬件上体验亚秒级的重载,而不会丢失状态。

跨平台

Flutter基于图像绘制引擎进行渲染,在不同平台下绘制效果绝对一致,能做到真正的跨平台。

绚丽UI

通过Flutter内建的、漂亮的、有质感设计的Cupertino(ios-flavor)小工具、丰富的动画API,平滑的自然滚动和平台感知,让用户感受UI设计的快乐。

响应式

通过Flutter的现代响应式(Reactive)框架、丰富的平台布局、基础组件,能够轻松的构建用户界面。使用强大而灵活的API解决2D、动画、手势、效果等难题。

访问原生功能

通过平台api第三方sdk原生代码,使应用变得生动。Flutter可以重用现有的javaswiftObjc代码,并在iOSAndroid上访问原生特性和SDK

四、目前各种跨平台方案的对比

开发APP应用,如需要同时兼容iOSAndroid两种平台,有两种技术选择:

1、走原生开发路线,把界面和逻辑在不同平台分别实现;

2、用同一套代码兼容多个平台,但这往往意味着运行速度和产品体验的损失。

除了原生外,目前跨平台技术一般是混合开发,如采用 H5React NativeWeex、小程序等技术实现跨平台应用。不过这些混合开发,或多或少都能感觉到UI卡顿和体验不流畅,并且开发和学习成本非常高,有各自的局限性。

Flutter的出现,为开发者提供了一套两全其美的解决方案:既能用原生代码直接调用的方式来加速图形渲染和 UI 绘制,又能同时运行在两大主流移动操作系统上,并且体验和流畅度和原生基本一致、开发效率非常高、学习难度和成本低。

跨平台方案的对比

从上面的对比可以看出,Flutter 优势明显:高体验度、高开发效率、低学习成本、高可扩展性。未来 Google Flutter团队还将会使 Flutter 支持 PCWeb 的跨平台开发,实现真正全平台。 针对Flutter的跨平台特性,与react nativeweex做对比可以发现,其性能碾压后两者,采用自带Skia绘制引擎,性能堪比原生。

以上就是关于Flutter的一些介绍了,对Flutter感兴趣的同学可以看一下教程:

1 人点赞