fbpx
维基百科

Flutter

Flutter是一个由谷歌开发的开源跨平台应用软件开发工具包,用于为AndroidiOSWindowsmacOSLinux Desktop、Google Fuchsia开发应用[4]

Flutter
原作者Google
開發者Google与社区
首次发布Alpha (v0.0.6) / 2017年5月,​6年前​(2017-05[1]
当前版本
  • 3.16.2 (2023年11月30日)[2]
源代码库
  • github.com/flutter/flutter
编程语言Dart[3]
系統平台AndroidiOSGoogle Fuchsia、Web平台、WindowsmacOSLinux
类型应用框架
许可协议
网站flutter.dev

Flutter第一个版本支持Android操作系统,開發代號称作“Sky”。 它于2015年4月的Flutter开发者会议上被公布[5],宣称其目标为实现120FPS渲染性能[6]。在上海Google Developer Days的主题演讲中,Google宣布了Flutter Release Preview 2,这是Flutter 1.0之前的最后一个重要版本。2018年12月4日,Flutter 1.0在Flutter Live活动中发布,是该框架的第一个“稳定”版本。[7]2019年12月11日,在Flutter Interactive活动上发布了Flutter 1.12,宣布Flutter是第一个为环境计算设计的UI平台[8]。2022年5月12日,在 Google I/O 2022 发布了 Flutter 3[9],正式支援了 Windows、macOS、Linux 等操作系统。

框架组织 编辑

Flutter的主要组成部分包括:

Dart平台 编辑

Flutter是使用Dart语言编写,并利用该语言的许多高级功能。[11]

WindowsmacOSLinux上,Flutter在Dart虚拟机中运行,该虚拟机具有即時編譯执行引擎。在编写和调试应用时,Flutter使用即时编译功能进行“热重载”(Hot Reload),可以将对源文件的修改注入正在运行的应用中。Flutter通过支持有状态的热重载来扩展此功能,在大多数情况下,对源代码的更改可以立即在运行的应用中反映出来,而无需重新启动或丢失任何状态。[12]Flutter实现的此功能已广受赞誉。

Flutter应用的发布版本在Android和iOS上都进行了提前(AOT, Ahead Of Time)编译[13],使Flutter在移动设备上可以高性能地运行。

Flutter 引擎 编辑

Flutter的引擎主要使用C++开发,通过Google的Skia图形库提供底层渲染支持,亦提供平台相关的SDK,例如AndroidiOS[11]。Flutter引擎是用于托管Flutter应用的可移植的运行环境。它实现了Flutter的核心库,包括动画和图形、文件和网络I/O、可访问性支持、插件架构以及Dart运行环境和编译工具链。大多数开发人员将通过Flutter框架与Flutter进行交互,该框架提供了一个现代、响应式的框架,以及一组丰富的平台、布局和基础组件。

基础库 编辑

基础库由Dart编写,提供了用Flutter构建應用程式所需的基本的类和函数,例如与引擎通讯的API[14]

元件 编辑

Flutter是通过组织、创建不同的组件完成用户界面设计的。在Flutter中,一个组件代表用户界面中不可变的一部分;包括文本、多边形以及动画在内的所有图形都是用组件创建的。复杂的组件由简单的组件结合而成。

定制化设计风格的组件 编辑

Flutter框架包含了两套符合特定设计语言组件。 称作Material Design的组件实现的是同名的谷歌设计语言,称作Cupertino的组件实现苹果公司iOS的人机接口指南(Human interface guidelines)[11][15][16][17]

第三方扩展 编辑

Flutter 使用 pub (页面存档备份,存于互联网档案馆) 管理第三方依赖包。在项目的 pubspec.yaml 中,开发者可以指定每个依赖的版本范围,或者固定版本号。

IDE 编辑

Flutter支持使用 Visual Studio CodeAndroid Studio ,需要安装 Flutter 插件和 Dart 插件。

在中国大陆,由于防火长城的存在,需要切换软件源才能正常安装Flutter。

Hello World 示例 编辑

一个Flutter中的Hello World程序如下所示:

import 'package:flutter/material.dart';  void main() => runApp(HelloWorldApp());  class HelloWorldApp extends StatelessWidget {  @override  Widget build(BuildContext context) {  return MaterialApp(  title: 'Hello World App',  home: Scaffold(  appBar: AppBar(  title: const Text('Hello World App'),  ),  body: const Center(  child: Text('Hello World'),  ),  ),  );  } } 

参考文献 编辑

  1. ^ Chris Bracken. Release v0.0.6: Rev alpha branch version to 0.0.6, flutter 0.0.26 (#10010) · flutter/flutter. GitHub. [2018-08-08]. (原始内容于2019-02-05). 
  2. ^ Release 3.16.2. 2023年11月30日 [2023年12月1日]. 
  3. ^ FAQ - Flutter. [2018-08-08]. (原始内容于2018-08-09). 
  4. ^ Google’s "Fuchsia" smartphone OS dumps Linux, has a wild new UI. Ars Technica. [2018-04-03]. (原始内容于2019-09-26). 
  5. ^ Sky: An Experiment Writing Dart for Mobile (Dart Developer Summit 2015). [2020-06-12]. (原始内容于2020-06-14). 
  6. ^ Amadeo, Ron. Google’s Dart language on Android aims for Java-free, 120 FPS apps. Ars Technica. 1 May 2015 [2018-04-03]. (原始内容于2015-05-06). 
  7. ^ . Appetiser Apps. [2018-12-21]. (原始内容存档于2019-03-12) (英语). 
  8. ^ Flutter: the first UI platform designed for ambient computing. Flutter blog. [2019-12-11]. (原始内容于2019-12-11) (英语). 
  9. ^ Sneath, Tim. Introducing Flutter 3. Flutter. 2022-05-11 [2022-07-05] (英语). 
  10. ^ Flutter Engine Source Code. GitHub. [2022-03-03]. (原始内容于2022-05-10). 
  11. ^ 11.0 11.1 11.2 . flutter.io. [2017-12-13]. (原始内容存档于2017-12-13) (英语). 
  12. ^ Lelel, Wm. . HackerNoon. 26 February 2018 [5 December 2018]. (原始内容存档于2019-11-16). 
  13. ^ stephenwzl. Flutter’s Compilation Patterns. ProAndroidDev. 2018-08-01 [2018-12-06]. (原始内容于2020-06-09). 
  14. ^ foundation library - Dart API. [2017-12-13]. (原始内容于2017-12-13) (英语). 
  15. ^ Material Design Widgets - Flutter. flutter.dev. [2017-12-13]. (原始内容于2020-06-16) (英语). 
  16. ^ Cupertino (iOS-style) Widgets - Flutter. flutter.dev. [2017-12-13]. (原始内容于2020-06-16) (英语). 
  17. ^ Human Interface Guidelines. developer.apple.com. [2019-10-08]. (原始内容于2020-11-28) (英语). 

外部链接 编辑

  • 官方网站  

flutter, 是一个由谷歌开发的开源跨平台应用软件开发工具包, 用于为android, windows, macos, linux, desktop, google, fuchsia开发应用, 原作者google開發者google与社区首次发布alpha, 2017年5月, 6年前, 2017, 当前版本3, 2023年11月30日, 源代码库github, flutter, flutter编程语言dart, 系統平台android, google, fuchsia, web平台, windows, macos. Flutter是一个由谷歌开发的开源跨平台应用软件开发工具包 用于为Android iOS Windows macOS Linux Desktop Google Fuchsia开发应用 4 Flutter原作者Google開發者Google与社区首次发布Alpha v0 0 6 2017年5月 6年前 2017 05 1 当前版本3 16 2 2023年11月30日 2 源代码库github wbr com wbr flutter wbr flutter编程语言Dart 3 系統平台Android iOS Google Fuchsia Web平台 Windows macOS和Linux类型应用框架许可协议3句版BSD许可证网站flutter wbr devFlutter第一个版本支持Android操作系统 開發代號称作 Sky 它于2015年4月的Flutter开发者会议上被公布 5 宣称其目标为实现120FPS的渲染性能 6 在上海Google Developer Days的主题演讲中 Google宣布了Flutter Release Preview 2 这是Flutter 1 0之前的最后一个重要版本 2018年12月4日 Flutter 1 0在Flutter Live活动中发布 是该框架的第一个 稳定 版本 7 2019年12月11日 在Flutter Interactive活动上发布了Flutter 1 12 宣布Flutter是第一个为环境计算设计的UI平台 8 2022年5月12日 在 Google I O 2022 发布了 Flutter 3 9 正式支援了 Windows macOS Linux 等操作系统 目录 1 框架组织 1 1 Dart平台 1 2 Flutter 引擎 1 3 基础库 1 3 1 元件 1 4 定制化设计风格的组件 2 第三方扩展 3 IDE 4 Hello World 示例 5 参考文献 6 外部链接框架组织 编辑Flutter的主要组成部分包括 Dart平台 Flutter引擎 10 基础库 客製化设计语言的组件 Flutter DevToolsDart平台 编辑 Flutter是使用Dart语言编写 并利用该语言的许多高级功能 11 在Windows macOS和Linux上 Flutter在Dart虚拟机中运行 该虚拟机具有即時編譯执行引擎 在编写和调试应用时 Flutter使用即时编译功能进行 热重载 Hot Reload 可以将对源文件的修改注入正在运行的应用中 Flutter通过支持有状态的热重载来扩展此功能 在大多数情况下 对源代码的更改可以立即在运行的应用中反映出来 而无需重新启动或丢失任何状态 12 Flutter实现的此功能已广受赞誉 Flutter应用的发布版本在Android和iOS上都进行了提前 AOT Ahead Of Time 编译 13 使Flutter在移动设备上可以高性能地运行 Flutter 引擎 编辑 Flutter的引擎主要使用C 开发 通过Google的Skia图形库提供底层渲染支持 亦提供平台相关的SDK 例如Android和iOS 11 Flutter引擎是用于托管Flutter应用的可移植的运行环境 它实现了Flutter的核心库 包括动画和图形 文件和网络I O 可访问性支持 插件架构以及Dart运行环境和编译工具链 大多数开发人员将通过Flutter框架与Flutter进行交互 该框架提供了一个现代 响应式的框架 以及一组丰富的平台 布局和基础组件 基础库 编辑 基础库由Dart编写 提供了用Flutter构建應用程式所需的基本的类和函数 例如与引擎通讯的API 14 元件 编辑 Flutter是通过组织 创建不同的组件完成用户界面设计的 在Flutter中 一个组件代表用户界面中不可变的一部分 包括文本 多边形以及动画在内的所有图形都是用组件创建的 复杂的组件由简单的组件结合而成 定制化设计风格的组件 编辑 Flutter框架包含了两套符合特定设计语言的组件 称作Material Design的组件实现的是同名的谷歌设计语言 称作Cupertino的组件实现苹果公司iOS的人机接口指南 Human interface guidelines 11 15 16 17 第三方扩展 编辑Flutter 使用 pub 页面存档备份 存于互联网档案馆 管理第三方依赖包 在项目的 pubspec yaml 中 开发者可以指定每个依赖的版本范围 或者固定版本号 IDE 编辑Flutter支持使用 Visual Studio Code 和 Android Studio 需要安装 Flutter 插件和 Dart 插件 在中国大陆 由于防火长城的存在 需要切换软件源才能正常安装Flutter Hello World 示例 编辑一个Flutter中的Hello World程序如下所示 import package flutter material dart void main gt runApp HelloWorldApp class HelloWorldApp extends StatelessWidget override Widget build BuildContext context return MaterialApp title Hello World App home Scaffold appBar AppBar title const Text Hello World App body const Center child Text Hello World 参考文献 编辑 Chris Bracken Release v0 0 6 Rev alpha branch version to 0 0 6 flutter 0 0 26 10010 flutter flutter GitHub 2018 08 08 原始内容存档于2019 02 05 Release 3 16 2 2023年11月30日 2023年12月1日 FAQ Flutter 2018 08 08 原始内容存档于2018 08 09 Google s Fuchsia smartphone OS dumps Linux has a wild new UI Ars Technica 2018 04 03 原始内容存档于2019 09 26 Sky An Experiment Writing Dart for Mobile Dart Developer Summit 2015 2020 06 12 原始内容存档于2020 06 14 Amadeo Ron Google s Dart language on Android aims for Java free 120 FPS apps Ars Technica 1 May 2015 2018 04 03 原始内容存档于2015 05 06 Speed Up Native Development As Google Flutter Comes Out Of Beta Appetiser Apps 2018 12 21 原始内容存档于2019 03 12 英语 Flutter the first UI platform designed for ambient computing Flutter blog 2019 12 11 原始内容存档于2019 12 11 英语 Sneath Tim Introducing Flutter 3 Flutter 2022 05 11 2022 07 05 英语 Flutter Engine Source Code GitHub 2022 03 03 原始内容存档于2022 05 10 11 0 11 1 11 2 Technical Overview Flutter flutter io 2017 12 13 原始内容存档于2017 12 13 英语 Lelel Wm Why Flutter Uses Dart HackerNoon 26 February 2018 5 December 2018 原始内容存档于2019 11 16 stephenwzl Flutter s Compilation Patterns ProAndroidDev 2018 08 01 2018 12 06 原始内容存档于2020 06 09 foundation library Dart API 2017 12 13 原始内容存档于2017 12 13 英语 Material Design Widgets Flutter flutter dev 2017 12 13 原始内容存档于2020 06 16 英语 Cupertino iOS style Widgets Flutter flutter dev 2017 12 13 原始内容存档于2020 06 16 英语 Human Interface Guidelines developer apple com 2019 10 08 原始内容存档于2020 11 28 英语 外部链接 编辑官方网站 nbsp 取自 https zh wikipedia org w index php title Flutter amp oldid 79538877, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。