Flutter是
Google开源的应用开发框架,只要一套代码兼顾
Android、
iOS、
Web、
Windows、
macOS和
Linux六个平台。Flutter编译为原生机器代码,助力提升应用的流畅度并实现优美的动画效果。Flutter由
Dart语言强力驱动,助力高效构建全平台应用。
Flutter可以方便地加入现有的工程中。在全世界,Flutter 正在被越来越多的开发者和组织使用,并且 Flutter是完全免费、开源的。它也是构建未来的
Google Fuchsia 应用的主要方式。
Flutter组件采用现代响应式框架构建,这是从React中获得的灵感,中心思想是用组件(widget)构建你的
UI。 组件描述了在给定其当前配置和状态时他们显示的样子。当组件状态改变,组件会重构它的描述(description),Flutter 会对比之前的描述, 以确定底层渲染树从当前状态转换到下一个状态所需要的最小更改。
Flutter的第一个版本被称为“Sky”,运行在
Android操作系统上。它是在2015年Dart开发者峰会上亮相的,其目的是能够以每秒120帧的速度持续渲染。
runApp函数接收给定的组件(Widget)并使其成为组件树的根。 在此例中,组件树由两个组件构成,Center组件和它的子组件-Text组件。框架强制根组件覆盖整个屏幕,这意味着“
Hello, world”文本在屏幕上居中显示。需要注意的是,上面的例子中,文字的样式是缺省的。不必担心,当使用MaterialApp时,它会使用
Material Design 样式。
在编写app时,通常会创建独立组件,是继承无状态的StatelessWidget还是有状态的StatefulWidget, 取决于您的组件是否需要管理状态。组件的主要工作是实现一个build函数,它使用其他低级别的组件来构建自己。Flutter框架将依次构建这些组件,最终会到达代表底层渲染对象的组件-RenderObject,它会计算并描述组件的
几何形状。
Flutter的热重载帮助你快捷方便的试验、重构UI、添加特性和修复
bug。在
仿真器、
模拟器和
ios、android硬件上体验亚秒级的重载,而不会丢失状态。
通过Flutter内建的漂亮的
质感设计和Cupertino(ios-flavor)小工具、丰富的动画API,平滑的自然滚动和平台感知,让用户感到满意。
通过Flutter的现代响应式(Reactive)框架和丰富的平台布局和基础组件轻松构建您的
用户界面。用强大而灵活的API解决
2D、动画、手势、效果等难题。
通过平台api、第三方sdk和原生代码使您的应用变得生动起来。Flutter让您可以重用您现有的java、swift和Objc代码,并在iOS和Android上访问原生特性和
SDK。
2022年2 月 ,据
谷歌官方消息,谷歌为开发者带来了 Windows 平台支持的首个正式版本,Flutter 稳定版本全面支持 Windows 应用。谷歌表示,Flutter 的 Windows 实现结合了 Dart 框架和 C++ 引擎,与对
Android 和
iOS 提供的支持一致。