1、跨平台开发
- 传统的原生开发一般都要维护Android、iOS两个开发团队,版本迭代时,无论人力成本,还是测试成本都会变大。
- 使用Flutter开发,真正的一套代码多端使用,增加代码复用,降低人力和开发成本。
2、第一阶段:原生开发
- 开发成本大
原生开发一般都要维护Android、iOS两个开发团队,版本迭代时,人力成本,开发成本,测试成本都会变大。
- 动态化需求
当需求发生变化时,纯原生应用大多数需要通过版本升级来更新内容,不发版也可以更新应用内容的需求就变的迫在眉睫。
3、第二阶段:H5
图片.png4、第三阶段:跨平台
图片.png5、Flutter介绍
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。
图片.png
6、Flutter架构
图片.png7、Flutter发展史
图片.png8、Flutter特点
- 快速开发
- 富有表现力,漂亮的用户界面
本地性能
图片.png
9、Flutter优势
- 快速开发
- 毫秒级的热重载,修改后,您的应用界面会立即更新。使用丰富的、完全可定制的widget在几分钟内构建原生界面。
- 富有表现力和灵活的UI
- Flutter内置美丽的Material Design和Cupertino(iOS风格)widget、丰富的motion API、平滑而自然的滑动效果和平台感知,为您的用户带来全新体验。
- 原生性能
- Flutter包含了许多核心的widget,如滚动、导航、图标和字体等,这些都可以在iOS和Android上达到原生应用一样的性能。
- 热重载
- Flutter最受欢迎的功能之一是其快速,保留程序状态的热重载 (hot reload)。 您可以在Flutter应用程序运行时对其进行更改,重新加载应用程序的代码,将其从之前的操作位置继续下去。一次热重载通常用不到一秒钟。 如果您的应用遇到错误,您通常可以修复错误,然后继续,就像错误从未发生过。 即使你必须完全重新加载,它也是很快速的。
10、Dart
图片.png11、你觉得Flutter前景怎么样?为什么你会选择使用Flutter?
- 现有的跨平台框架,比如RN都是基于JS,由于JS的执行性能,导致跨平台应用性能一直无法突破瓶颈。而Flutter在Debug使用JIT编译,支持热重载,能够提高我们的开发效率,而Release中利用AOT直接编译成机器码,能够达到更好的性能。
- 从设计角度而言,Flutter提供了非常丰富的Widget组件,能够让我们非常轻松的实现Android或者IOS风格的UI效果。
- Flutter作为Google官方孵化的项目,拥有更加规范与完善的生态圈,依托官方就是它最大的优势之一。
12、ReactNative
- 采用Javascript开发,需学React,成本高
- 需要JavaScript桥接器,实现JS到Native转化,性能耗损
- 访问原生UI,频繁操作易出性能问题
- 支持线上动态性,可有效避免频繁更新版本
13、Flutter
- 采用Dart开发,可直接编译成Native代码(易学)
- 自带UI组件和渲染器,仅依赖系统提供的Canvas(无桥接耗损)
- 暂不支持线上动态性
网友评论