Flutter教程(一) Flutter简介

本篇为Flutter教程系列第一篇,先总体介绍一下Flutter,旨在让您对Flutter有一个全局感性的认识。若是您还想了解更多,能够去[Flutter中文网](https://flutterchina.club/) 了解更多。后续教程将陆续发布,若是您对Flutter感兴趣,欢迎关注个人博客。webpack

Flutter是什么?

Flutter是谷歌的移动UI框架,能够快速在iOS和Android上构建高质量的原生用户界面。 Flutter能够与现有的代码一块儿工做。在全世界,Flutter正在被愈来愈多的开发者和组织使用,而且Flutter是彻底免费、开源的。简单来讲,Flutter是一款移动应用程序SDK,包含框架、控件和一些工具,能够用一套代码同时构建Android和iOS应用,而且性能能够达到原生应用同样的性能。详情请参考Flutter简介程序员

Flutter和React-Native、Weex这样的动态化框架有什么不一样?

React-Native、Weex核心是经过Javascript开发,执行时须要Javascript解释器,UI是经过原生控件渲染。Flutter与用于构建移动应用程序的其它大多数框架不一样,由于Flutter既不使用WebView,也不使用操做系统的原生控件。 相反,Flutter使用本身的高性能渲染引擎来绘制widget。Flutter使用C、C ++、Dart和Skia(2D渲染引擎)构建。在IOS上,Flutter引擎的C/C ++代码使用LLVM编译,任何Dart代码都是AOT编译为本地代码的,Flutter应用程序使用本机指令集运行(不涉及解释器)。而在Android下,Flutter引擎的C/C ++代码是用Android的NDK编译的,任何Dart代码都是AOT编译成本地代码的,Flutter应用程序依然使用本机指令集运行(不涉及解释器)。所以,Flutter能达到原生应用同样的性能。web

同时,Flutter提供了一组本身的widget),由Flutter的framework和引擎管理和渲染。您能够浏览Flutter widget目录。之因此不适用原生控件,是由于Flutter但愿最终结果是更高质量的,若是Flutter使用原生系统widget,Flutter应用的质量和性能将受到这些widget自己质量的限制。例如,在Android中,有一组硬编码的手势和固定的规则来对它们进行手势冲突消歧。在Flutter中,您能够编写本身的手势识别器,该手势识别器是手势系统中的一级参与者 。此外,由不一样人撰写的两个小工具可协调手势冲突消歧。编程

Flutter用什么语言开发?

Flutter 用Dart做为开发框架和widget的语言,详情请参考为何Flutter选择使用Dart语言bootstrap

Dart语言好学吗?

若是你有编程经验,尤为是了解Java或Javascript, 那么你回发现Dart学习起来很是容易,笔者只用了两个小时基本就开始愉快的使用Dart编码了。Flutter中文网编辑了一份能够帮助您快速学习Dart的Dart语言资源列表,但愿对你有用。网络

Flutter支持像webpack同样“热重载”或者Android “instant run”吗?

支持,Flutter支持Hot Reload,经过将更新的源代码文件注入正在运行的Dart VM(虚拟机)中工做。这不只包括添加新类,还包括向现有类添加方法和字段,以及更改现有函数。详情请参阅Flutter热重载框架

对于程序员/开发人员来讲,要使用Flutter必须具有哪些经验?

Flutter对熟悉面向对象概念(类、方法、变量等)和命令式编程概念(循环、条件等)的程序员来讲是很容易入门的。学习和使用Flutter,无需事先具备移动开发经验。 咱们已经看到了一些不怎么有编程经验的人学习并使用Flutter进行原型设计和应用程序开发。函数

能够在我现有的原生应用程序中使用Flutter吗?

能够,您能够在现有的Android或iOS应用中嵌入Flutter。详情请参考原生应用程序中使用Flutter工具

Flutter支持文件读取、发起网络请求吗?

支持!详情请参考:性能

  1. Flutter 文件操做
  2. Flutter发起Http请求

我在哪里能够得到Flutter学习资源?

您能够去谷歌Flutter官网,可是,如今也能够访问Flutter中文网了,Flutter中文网 上提供了官方文档翻译和一些其它案例、资源,您也能够去Github 上Flutter项目主页,去查看最新动态和提issue.

本文参考文档:Flutter中文网-Flutter FAQ .

相关文章
相关标签/搜索