Android Flutter框架结构+知识点梳理

很多移动端开发工程师,刚接触 Flutter 的时候,一定会有这样的疑问:
Flutter 的生命周期是怎么样的?是如何处理生命周期的?我的 onCreate()[Android] 在哪里?viewDidLoad()[iOS] 呢? 我的业务逻辑应该放在哪里处理?初始化数据呢?

那么这篇文章就给大家大概讲解一下 Flutter的框架结构和重要的技术点

注:知识点总结部分是联合谷歌技术团队整理的适合Android中高级开发人员的进阶资料,包含Flutter技术解析与实战、Flutter进阶学习笔记、Flutter入门与实战和Flutter完整开发实战详解。大家可以通过这篇文章学习到 Flutter这个全新的跨平台技术、掌握其背后的框架原理和底层设计思想,建立起属于自己的知识体系。



Flutter 框架自下而上分为 Embedder、Engine 和 Framework 三层。
其中,Embedder 是操作系统适配层,实现了渲染 Surface 设置,线程设置,以及平台插件等平台相关特性的适配;Engine 层负责图形绘制、文字排版和提供 Dart 运行时,Engine层具有独立虚拟机,正是由于它的存在,Flutter程序才能运行在不同的平台上,实现跨平台运行;Framework层则是使用Dart编写的一套基础视图库,包含了动画、图形绘制和手势识别等功能,是使用频率最高的一层。

《Flutter技术解析与实战》

第一章 混合工程

  • Flutter工程体系

  • 混合工程改造实战

  • 混合工程与持续集成

  • 快速完成混合工程搭建

  • 使用混合栈框架开发

第二章 能力增强

  • 基于原生能力的插件扩展

  • 基于外接纹理的同层渲染

  • 多媒体能力扩展实践

  • 富文本能力应用实践

第三章 业务架构设计

  • 应用框架设计实践

  • 轻量级动态化渲染引擎的设计

  • 面向切面编程的设计实践

  • 高性能的动态模板渲染实践

第四章 数据统计与性能

  • 数据统计框架的设计

  • 性能稳定性监控方案的设计

  • 高可用框架的设计与实践

  • 跨端方案性能对比实践

第五章 企业级应用实战

  • 基于Flutter的端结构演进与创新

  • Flutter与FaaS云端一体化架构

img

《Flutter进阶学习笔记》

第一章 为什么 Flutter 是跨平台开发的终极之选

  • 这是为什么?

  • 跨平台开发

  • 什么是Flutter

  • Flutter特性

  • Flutter 构建应用的工具

  • 使用 Flutter 构建的热门应用

  • 构建 Flutter 应用的成本

第二章 在Windows上搭建Flutter开发环境

  • 使用镜像

  • 系统要求

  • 获取Flutter SDK

  • 编辑器设置

  • Android设置

  • 起步: 配置编辑器

  • 起步: 体验

  • 体验热重载

第三章 编写您的第一个 Flutter App

  • 创建 Flutter app

  • 使用外部包(package)

  • 添加一个 有状态的部件(Stateful widget)

  • 创建一个无限滚动ListView

  • 添加交互

  • 导航到新页面

  • 使用主题更改UI

第四章 Flutter开发环境搭建和调试

  • 开发环境的搭建

  • 模拟器的安装与调试

  • 开发环境的搭建

  • 模拟器的安装与调试

第五章 Dart语法篇之基础语法(一)

  • 简述

  • Hello Dart

  • 数据类型

  • 变量和常量

  • 集合(List、Set、Map)

  • 流程控制

  • 运算符

  • 异常

  • 函数

  • 总结

第六章 Dart语法篇之集合的使用与源码解析(二)

  • List

  • Set

  • Map

  • Queue

  • LinkedList

  • HashMap

  • Map、HashMap、LinkedHashMap、SplayTreeMap区别

  • 命名构造函数from和of的区别以及使用建议

第七章 Dart语法篇之集合操作符函数与源码分析(三)

  • 简述

  • Iterable<E>

  • forEach

  • map

  • any

  • every

  • where

  • firstWhere和singleWhere和lastWhere

  • join

  • take

  • takeWhile

  • skip

  • skipWhile

  • follwedBy

  • expand

  • reduce

  • elementAt

第八章 Dart语法篇之函数的使用(四)

  • 简述

  • 函数参数

  • 匿名函数(闭包,lambda)

  • 箭头函数

  • 局部函数

  • 顶层函数和静态函数

  • main函数

  • Function函数对象

第九章 Dart语法篇之面向对象基础(五)

  • 简述

  • 属性访问器(accessor)函数setter和getter

  • 面向对象中的变量

  • 构造函数

  • 抽象方法、抽象类和接口

  • 类函数

  • 总结

第十章 Dart语法篇之面向对象继承和Mixins(六)

  • 简述

  • 类的单继承

  • 基于Mixins的多继承

  • 总结

第十一章 Dart语法篇之类型系统与泛型(七)

  • 简述

  • 可选类型

  • 接口类型

  • 泛型

  • 类型具体化

  • 总结

第十二章 Flutter中的widget

  • Flutter页面-基础Widget

  • Widget

  • StatelessWidget

  • State生命周期

  • 基础widget

  • DefaultTextStyle

  • FlutterLogo

  • Icon

  • Iamge.asset

  • CircleAvatar

  • FadeInImage

  • 按钮

  • FlatButton

  • OutlineButton

  • TextFormField

《Flutter入门与实战》

第一章、Flutter基本功能

  • 我的第一个 Flutter 应用之旅

  • 容器的盒子模型

  • 构建一个常用的页面框架

  • 设置 App 的主色调与字体

  • 来一个图文并茂的列表

  • 给列表增加下拉刷新和上滑加载更多功能

  • 使用cached_network_image 优化图片加载体验

  • 仿一个微信价值几个亿的页面

  • 开发一个常用的登录页面

  • 封装一个通用的文本输入框

  • 底部弹窗ModelBottomSheet详解

  • 利用CustomScrollView实现更有趣的滑动效果

  • 底部弹窗如何实现多项选择?

第二章、Flutter路由管理

  • App页面路由及路由拦截实现

  • 路由参数处理

  • 初识 fluro 路由管理

  • 使用 fluro 的转场动画提高页面切换体验

  • 使用自定义转场动画实现个性化页面切换

  • 此路是我开,此树是我栽。若是没权限,403到来

  • Flutter 2.0的路由把我搞蒙了

  • 山路十八弯的2.0路由

第三章、Flutter网络请求插件Dio

  • 初次见面,网络请求王者之dio

  • 利用 Dio请求删除数据

  • 使用 Dio的 Patch请求完成详情编辑

  • 使用 Post 请求增加动态

  • 一文搞定图片选择及图片上传

  • 使用 GetIt 同步不同页面间数据

  • Dio 封装之金屋藏娇

  • Dio 之拦截器

  • Dio之戛然而止

  • 从源码深入了解Dio 的

  • 小伙子,你买票了吗?

  • 手写一个持久化的

  • Dio之文件下载

  • Dio 篇章总结

第四章、Flutter状态管理

  • 基础原理篇

  • Provider篇

  • Redux篇

  • Mobx篇

  • Getx篇

  • BLOC篇

  • 状态管理系列大汇总

第五章、Flutter 动画

  • 使用 Animation 构建爱心三连动画

  • 让你的组件拥有三维动效

  • 小姐姐渐现效果 ——AnimatedOpacity 使用

  • 使用 AnimatedBuilder分离组件和动画,实现动效复用

  • 看这一颗跳动的热心—— AnimatedPadding 应用

  • 使用AnimatedSwitcher 做场景切换

  • 给小姐姐的照片调个颜色滤镜

《Flutter完整开发实战详解》

  • 第一章 Dart语言和Flutter基础
  • 第二章 快速开发实战篇
  • 第三章 打包与填坑篇
  • 第四章 Redux、主题、国际化
  • 第五章 深入探索
  • 第六章 深入Widget原理
  • 第七章 深入布局原理
  • 第八章 实用技巧与填坑
  • 第九章 深入绘制原理
  • 第十章 深入图片加载流程
  • 第十一章 全面深入理解Stream
  • 第十二章 全面深入理解状态管理设计
  • 第十三章 全面深入触摸和滑动原理
  • 第十四章 混合开发打包 Android 篇


更多参考资料 :

Flutter 官网 : https://flutter.dev/
Flutter 开发文档 : https://flutter.cn/docs ( 强烈推荐 ) 官方 GitHub 地址 : https://github.com/flutter
Flutter 中文社区 : https://flutter.cn/
Flutter 实用教程 : https://flutter.cn/docs/cookbook
Dart 中文文档 : https://dart.cn/
Dart 开发者官网 : https://api.dart.dev/
Flutter 中文网 ( 非官方 , 翻译的很好 ) : https://flutterchina.club/ , http://flutter.axuer.com/docs/
Flutter 相关问题 : https://flutterchina.club/faq/ ( 入门阶段推荐看一遍 )


#Android##安卓工程师##安卓工程师面经##android#
Android技术 文章被收录于专栏

热门Android技术学习

全部评论
好多都被我忽略掉的知识,感谢
点赞 回复 分享
发布于 2022-08-29 15:01 陕西

相关推荐

点赞 评论 收藏
分享
评论
8
23
分享

创作者周榜

更多
牛客网
牛客企业服务