Flutter框架概览

简介: 前言:进入新框架的开发前,有必要整体了解框架设计及特点,对该框架初步认识,此文对Flutter框架进行浅显梳理,以备查阅; Flutter框架
前言:进入新框架的开发前,有必要整体了解框架设计及特点,对该框架初步认识,此文对Flutter框架进行浅显梳理,以备查阅;
Flutter框架
3a29ebf614f6a254ef28482858a4aa8b624841bd
从该架构图可知,Flutter框架可分为Framework层和Engine层;
Flutter Framework: 整个框架层都是用Dart语言实现,该层提供一套基础库, 用于处理动画、绘图和手势等。并且基于绘图封装了一套 UI组件库,并且细分为两种风格的组件
Materail : Android风格的Widget,包含以下几个大类
  1. App基础结构和导航类型(Scaffold,Appbar,BottomNavigationBar等)
d65b6dcca8923ffd3834d4071bbf6f3687075c49
20fc00de0a2b13961656f336d7f233c39ec54df7
a539598216f3c242327f76af258c28a4426d9c02
2f30f3e006e67064382ad783121976a2acb4bcd7
62e631bbb8c98273fb9a25d82ea163cf4918d3ee
Cupertino: IOS风格的Widget,主要包含:
CupertinoTabBar,CupertinoPageScaffold,CupertinoTabScaffold,CupertinoTabView
4a6746b4637071b4752e2f63741e0ca0af72213d
Flutter Engine: 这是一个纯 C++实现的框架层,包含了 Skia引擎(高性能渲染引擎)、Dart运行环境、文字排版引擎等。它可以以 JIT、JIT Snapshot 或者 AOT(预先编译)的模式运行 Dart代码。AOT直接将Dart源码编译成了本地字节码,没有了解释执行的过程,提升执行性能。和Java显著不同的是Dart的"线程"(Isolate)是不共享内存的,各自的堆(Heap)和栈(Stack)都是隔离的,彼此之间通过消息通道来通信。所以,Dart不存在数据竞争和变量状态同步的问题,整个Flutter Framework Widget的渲染过程都运行在一个isolate中,在代码调用 dart:ui库时,提供 dart:ui库中 Native Binding 实现。 这个运行时还控制着 VSync信号的传递、GPU数据的填充等,并且还负责把客户端的事件传递到运行时中的代码。
bcd046dcf3c5e7f1e8174938a097d865585acd97

原文发布时间为:2018年06月21日
作者: country5
本文来源:  掘金  如需转载请联系原作者

相关文章
|
3月前
|
监控 Dart 安全
创建一个Dart应用,监控局域网上网记录的软件:Flutter框架的应用
在当今数字时代,网络安全变得愈发重要。为了监控局域网上的上网记录,我们可以借助Flutter框架创建一个强大的Dart应用。在这篇文章中,我们将深入讨论如何使用Flutter框架开发这样一个监控局域网上网记录的软件,并提供一些实用的代码示例。
273 1
|
2月前
|
开发框架 开发者 UED
跨平台开发框架Flutter在移动应用开发中的应用与前景
【2月更文挑战第3天】本文将探讨跨平台开发框架Flutter在移动应用开发中的应用价值和未来发展前景。通过分析Flutter的特点和优势,以及其在实际项目中的应用案例,展示了Flutter在提升开发效率、降低成本、增强用户体验等方面的优势。同时,对Flutter在未来移动应用开发领域的发展趋势进行了展望,指出了其在日益激烈的市场竞争中的巨大潜力。
|
3月前
|
Rust 前端开发 JavaScript
IM跨平台技术学习(十):快速对比跨平台框架Electron、Flutter、Tauri、React Native等
在本文中,我们将比较五种流行的桌面应用程序开发框架:Electron、Flutter、Tauri、React Native 和 Qt,希望可以帮助你根据项目需求做出明智的技术选型决策。
143 2
|
4月前
|
开发框架
Flutter 工程化框架选择——搞定 Flutter 动画
Flutter 工程化框架选择——搞定 Flutter 动画 Flutter 是 Google 推出的跨平台移动应用开发框架,它具有快速开发、高性能、美观等优点。但是,在实际开发中,为了更好地维护和扩展代码,我们需要选择一个合适的工程化框架来协助我们进行开发。本文将介绍几种常用的 Flutter 工程化框架,并重点介绍一个搞定 Flutter 动画的方法。
|
7月前
|
Dart 数据库 开发者
Flutter笔记:用于ORM的Floor框架简记
最近想找用于Dart和Flutter的ORM框架,偶然间发现了Floor,觉得还不错,做一些记录。
130 0
|
7月前
|
Dart 前端开发 开发工具
谷歌移动UI框架Flutter教程之Widget
谷歌移动UI框架Flutter教程之Widget
|
7月前
|
Web App开发 Dart 开发工具
谷歌移动UI框架Flutter入门
谷歌移动UI框架Flutter入门
|
10月前
|
开发框架 Dart 数据可视化
鸿蒙全新声明式UI框架ArkUI初体验,开发应用不错,比起flutter如何
鸿蒙全新声明式UI框架ArkUI初体验,开发应用不错,比起flutter如何
|
11月前
|
设计模式 算法 vr&ar
Flutter 基础 | 动画框架分析及其中的设计模式
Flutter 基础 | 动画框架分析及其中的设计模式
113 0
|
JSON Dart 安全
【Flutter框架】项目的手动序列化小项目以及对于进程异步性和格式化代码的研究
【Flutter框架】项目的手动序列化小项目以及对于进程异步性和格式化代码的研究