Flutter学习笔记(1)

Flutter介绍
Flutter是谷歌的移动UI框架,可以快速的在IOS和Android上构建高质量的原生用户界面,它可以与现有的代码一起工作,并且Flutter是完全免费的、开源的。

Flutter架构
在这里插入图片描述
Flutter的整体框架有两层,一个是Engine层,这层是由c++语言编写的;另一个是FrameWork层,这层是由Dart语言编写的。

Flutter特点

  1. 快速开发
  2. 富有表现力,漂亮的用户界面
  3. 本地性能

Flutter优势

  1. 热重载
    支持开发过程中热重载
  2. 统一的UI
    Flutter提供了丰富的内置组件 Material Design(针对Android)和 Cupertino(适用于iOS),不用担心在众多设备上会有什么差异

Dart
Flutter使用的是Dart
特点

  1. 基于JIT的快速开发周期
    Flutter在开发阶段采用JIT模式,这样可以避免每次有改动都要进行编译,极大的节省了开发时间

  2. 基于AOT的发布包
    Flutter在发布时可以通过AOT生成高效的ARM代码以保证应用性能

  3. 单线程
    不需要锁,不存在数据竞争和变量状态同步,也没有线程上下文切换的性能损耗和锁导致的卡顿

  4. 垃圾回收
    多生代无锁垃圾回收器,专门为UI框架中常见的大量Widgets对象创建和销毁优化

JIT:JIT编译(just-in-time compilation)“即时编译”
AOT:事前编译(ahead-of-time compilation,简称AOT)

为什么会选择使用Flutter?

  1. 现有的跨平台框架,比如RN都是基于JS,由于JS的执行性能,导致跨平台应用性能一直无法突破瓶颈。而Flutter在Debug使用JIT编译,支持热重载,能够提高我们的开发效率,而Release中利用AOT直接编译成机器码,能够达到更好的性能。
  2. 从设计角度而言,Flutter提供了非常丰富的Widget组件,能够让我们非常轻松的实现Android或者IOS风格的UI效果。
  3. Flutter作为Google官方孵化的项目,拥有更加规范与完善的生态圈,依托官方就是它最大的优势之一

AS中安装Flutter、Dart插件
Flutter安装
第一次创建项目界面卡死解决方案

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值