作者:菜虫 时间:2018-7-1
1. Flutter是什么?
这是Flutter官网给出的解释,翻译过来就是说Flutter一个移动应用SDK,可以用一份代码同时生成iOS、Android两个平台下的高性能的、高保真的App
2. 为什么要用Flutter?
在Flutter的官网其实也已经给出了答案,
- Be highly productive(提高开发效率)
- 一份代码同时开发iOS和Android
- 用更少的代码去干更多的事
- 快速迭代
- 通过热加载,在App运行时可以直接通过更改代码就能直接看到效果
- 修复crash并且可以从从应用程序停止的地方继续进行调试
- Create beautiful, highly-customized user experiences(漂亮、高度定制的用户体验)
- Flutter提供了丰富的Material Design和Cupertino(iOS风格)的widget
- 实现定制、美观、品牌驱动的设计,而不受原生控件的限制
简单的解读下,就是Flutter提供很多针对与iOS和Android平台下小组件,能够高效的、快速的跨平台开发
3. Flutter的核心原则
- 一切皆为widget widget是Flutter应用程序的基本构建模块,可以自由组合不同的widget,而且widget还可以存储状态。单个widget的结构其实跟树差不多,如图:
4. Flutter VS React Native
- Flutter不会调用系统自带的UI组件,只需要操作系统提供一个画布(Canvas),渲染部分由应用代码和Flutter自己完成,这样的架构就减少了应用代码跟系统平台之间的性能消耗
- React Native是把JS代码编译成JS文件,这个文件会映射到virtual DOM这个虚拟的JS数据结构中,通过bridge传递到native,然后根据数据属性设置各个对应的真实native的View
简单的说了这么多,那我们就开始愉快Flutter之旅吧
5. Flutter环境配置
Flutter官网对于不同操作系统提供了相应的环境配置,而且对于前端开发人员和Android开发人员也提供了对于的开发工具,不管是VS Code还是IDEA,或者是Android Studio,Flutter都提供了对应的插件。 因为Flutter官方也一直在调整,最近才提供了SDK的2种下载方式,一种是通过git,一种是直接下载压缩包
-
SDK安装
1. SDK下载
- git
git clone https://github.com/flutter/flutter.git 复制代码
- Zip
官方链接
2. 环境变量配置
举个栗子:我的Flutter是装在 C:\DevelopProgram\flutter 需要在path下追加:
C:\DevelopProgram\flutter\bin; 复制代码
如下图:
3. 运行 flutter doctor 直接在命令行终端执行 flutter doctor,出现下图,就说明环境没问题
-
IDE配置(IDEA/Android studio)
1. 插件安装
启动IDEA/Android studio,打开Settings,搜索插件"Flutter"
2. 配置
在settings->Languages&Framework->Flutter
自此,我们的Flutter开发环境就配置完了,我们就开始愉快的耍一耍FLutter了,打开IDEA就可以看到,如下图:
装了Flutter的插件之后会出现新建Flutter project,点击
提供了3种模式
- 创建一个Flutter应用程序
- 创建Flutter插件
- 创建一个dart模块
我们就简单创建一个Flutter applicaton
我们可以看下Flutter项目的目录结构
main.dart就是一个简单的入口,我们直接运行