简单来说,原生平台提供一个
Surface
作为画板,之后剩下的只需要由 Flutter 来渲染出对应的控件,而这个过程最终是打包成 AOT 的二进制完成。
所以 Flutter 的 UI 控件可以做到所见即所得,这个对我个人来说是很重要的进步。
3、Flutter 的性能
-
1、Flutter 在 debug 和 release 下的性能差距是巨大的,因为它们之间是 JIT 和 AOT 的区别。
-
2、不要在模拟器上测试性能,这个根本没有意义,因为在手机上 Flutter 会更多依赖 GPU 的能力。
-
3、混合开发 Flutter 是有性能有影响的,比如在原有 Android 项目里,把某个模块业务逻辑改用 Flutter 实现,这对性能和内存会有很大的考验,至于为什么?就是前面说过 Flutter 独立的控件渲染和堆栈管理带来的负面效果。
-
4、同一个框架在不同人手下会写出不一样的结果,一般情况下对于普通开发者来说,流行的框架一般不会带来很大的性能瓶颈,反而是开发能力比较多导致项目的瓶颈。
怎么学 Flutter ?
为了让大家快速无痛上手 Flutter,在这里免费分享给大家一份来自阿里大佬Git高星的 Flutter 学习笔记。
2021年还没上手 Flutter 的移动开发们可以看看这份学习笔记了!
-
为什么Flutter是跨平台开发的终极之选
-
在Windows上搭建Flutter开发环境
-
编写您的第一个 Flutter App
-
Flutter开发环境搭建和调试
-
Dart语法篇之基础语法(一)
-
Dart语法篇之集合的使用与源码解析(二)
-
Dart语法篇之集合操作符函数与源码分析(三)
-
Dart语法篇之函数的使用(四)
-
Dart语法篇之面向对象基础(五)
-
Dart语法篇之面向对象继承和Mixins(六)
-
Dart语法篇之类型系统与泛型(七)
-
Flutter中的widget
注:鉴于目前网上没有比较规范、系统的整理,该学习手册中的内容都是根据笔者的一个框架在网上进行的搜集整理。本文开源,仅用于技术交流分享,感谢大佬熊猫先生对Dart语法
部分的博客分享,感谢一同整理资料的小伙伴。大家可以动动小手,点波关注,了解更多flutter内容!
由于篇幅限制,展示了部分内容截图,需要这些文档资料的,可以点赞支持一下我,然后【点击这里】免费获取。
资料详情
为什么Flutter是跨平台开发的终极之选
-
这是为什么?
-
跨平台开发
-
什么是 Flutter
-
Flutter 的特性
-
Flutter 构建应用的工具
-
使用 Flutter 构建的热门应用
-
构建 Flutter 应用的成本
-
……
在Windows上搭建Flutter开发环境
-
使用镜像
-
系统要求
-
获取Flutter SDK
-
编辑器设置
-
Android设置
-
起步: 配置编辑器
-
起步: 体验
-
体验热重载
-
创建新的应用
-
运行应用程序
-
……
第三章 编写您的第一个 Flutter App
-
第1步: 创建 Flutter app
-
第2步: 使用外部包(package)
-
第3步: 添加一个 有状态的部件(Stateful widget)
-
第4步: 创建一个无限滚动ListView
-
第5步: 添加交互
-
第6步: 导航到新页面
-
第7步:使用主题更改UI
-
……
第四章 Flutter开发环境搭建和调试
-
开发环境的搭建
-
模拟器的安装与调试
-
开发环境的搭建
-
模拟器的安装与调试
-
……
第五章 Dart语法篇之基础语法(一)
-
Hello Dart
-
数据类型
-
变量和常量
-
集合(List、Set、Map)
-
流程控制
-
运算符
-
异常
-
函数
-
……
第六章 Dart语法篇之集合的使用与源码解析(二)
-
List
-
Set
-
Map
-
Queue
-
LinkedList
-
HashMap
-
Map、HashMap、LinkedHashMap、SplayTreeMap区别
-
命名构造函数from和of的区别以及使用建议
-
……
第七章 Dart语法篇之集合操作符函数与源码分析(三)
-
Iterable(Iterable类关系图、Iterable类方法图……)
-
forEach(介绍、使用方式、源码解析……)
-
map(介绍、使用方式、源码解析……)
-
any(介绍、使用方式、源码解析……)
-
every(介绍、使用方式、源码解析……)
-
where(介绍、使用方式、源码解析……)
-
firstWhere和singleWhere和lastWhere(介绍、使用方式、源码解析……)
-
join(介绍、使用方式、源码解析……)
-
take(介绍、使用方式、源码解析……)
-
takeWhile(介绍、使用方式、源码解析……)
-
……(内容太多)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
最后我还整理了很多Android中高级的PDF技术文档。以及一些大厂面试真题解析文档。
Android高级架构师之路很漫长,一起共勉吧!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
[外链图片转存中…(img-IbWJOnwW-1711931054550)]
最后我还整理了很多Android中高级的PDF技术文档。以及一些大厂面试真题解析文档。
[外链图片转存中…(img-73IIwLPj-1711931054550)]
Android高级架构师之路很漫长,一起共勉吧!