Flutter中高级培训
一.简介
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。Flutter可以与现有的代码一起工作。本课程全面介绍Flutter的原理和架构设计,以及与Android和iOS的交互。
本课程系列适合于:
- 从事Android或iOS开发的技术人员、技术经理。
- 从事Flutter开发的技术人员。
- 对Flutter技术有兴趣学习和研究的开发人员
本课程系列将帮助初中级学员快速成长,掌握Flutter开发所需要的各种相关技术,帮助高级学员在公司快速搭建Flutter技术框架。
二. 课程大纲(2天)
第一天
第1讲 Dart语言快速入门
- var和dynamic
- 函数闭包
- 数组即列表
- 没有接口?
- 类的私有变量
- 构造函数的语法糖
- 类的属性
- part关键字与部分类
- is与as
- mixin语法
- 工厂构造函数与factory
- 函数的可选参数
- Future
- Stream
第2讲 Flutter技术快速入门
- MaterialApp与Scaffold
- Widget
- 页面及各种控件
- 路由
- 使用资源
- 使用第三方库
- 基本网络请求
- 打包大小
第3讲 开源库
- 网络请求
- 图像加载
- 图像处理
- UI相关
- 音频视频
- 路由
- 消息
- 存储
- 编解码
- 序列化
- 系统平台相关
- 地图
- 其它库
第4讲 插件、包、模块
- 四种Flutter工程类型
- 使用Module,在App中添加Flutter项目
- 使用Package,创建自定义Widget
- 使用Plugin,获取电池电量
第5讲 Platform Channels
- Flutter与App通信流程
- 三种Channel的区别
- Channel的组成
- 消息类型的对应关系
- 使用Method Channel
- 使用Event Channel
第6讲 Flutter网络封装
- 原生App的网络框架
- 使用配置文件管理网络请求
- 数据缓存
- 重试
- 转菊花
- 方案1:使用Flutter原生代码编写网络库
- 方案2:复用原有的Android/iOS网络框架
第7讲 热更新
- 仅限于Android和国内市场的尴尬
- flutter build bundle命令
- 暴力替换的热更新方案
- MXFlutter
第8讲 状态管理
- ScopeModel
- redux
- BLoC
- rxDart
- Provider
第9讲 Flutter编译原理
- Flutter架构
- Flutter编译模式
第10讲Flutter打包流程
- Flutter项目的目录结构
- 解读local.properties
- 解读根目录的build.gradle
- 解读工程目录的build.gradle
- Flutter的打包步骤
- Android和iOS项目的隐藏文件
第11讲Flutter的渲染原理
- 通用渲染的基本原理
- Flutter渲染的基本原理
- Skia概述
- Flutter App启动后的执行顺序
第12讲Flutter混合开发与工厂化架构
- pubsec管理
- pubsec依赖冲突解决
- Flutter组件化架构设计