1.Flutter 有很多优点
(1)国际化方案非常友好
Flutter官方提供的国际化方案对布局的国际化做得非常友好,文案的国际化在Flutter Intl插件的加持下也非常简单。(或许微不足道,但是真的超级方便)
(2)执行效率高
就目前市场的大环境来讲,主流的跨端方案有两种:
将 JavaScriptCore 引擎当作虚拟机的方案,代表框架是 React Native;
使用非 JavaScriptCore 虚拟机的方案,代表框架就是我们今天的主角 Flutter。
JavaScriptCore, 主要是为了兼容 Web 标准留下的历史包袱,无法专门针对移动端进行性能优化。而 Flutter 一开始就是使用全新的 Dart 语言编写,同时支持 AOT 和 JIT 两种编译方式,而没有采用 HTML/CSS/JavaScript 组合方式开发,在执行效率上明显高于 JavaScriptCore 。
2.Flutter 是市场的选择
如下图,这是手机上用 libChecker 统计出来的部分使用 Flutter 的应用:
我们可以看到,现在 Flutter 正在被很多大公司采用:
-
京东的京东读书
-
阿里的闲鱼
-
腾讯的微信和 Now 直播
-
字节跳动的西瓜视频
-
……
一个新技术的普及,企业级应用一定会先在头部互联网企业产生,然后逐步优化降低门槛。现在用 Flutter 的大厂是越来越多,相信那个爆发的临界点应该不远了。
Flutter 现在已经不是曾经的小众框架,这两年里它已经逐步成长为主流的跨平台开发框架之一。
3.找工作的加分项
Flutter目前也是Android开发岗位的加分项,下面是Boss上面搜到的一部分招聘信息。
通过上图可以看出,很多大厂在高薪招聘这方面的人才,Flutter 确确实实可以成为我们找工作的一个帮助。
Flutter 也确确实实可以帮助到我们的职业发展。技术是相通的,当我们在学习Flutter时,也能把原有的技术联通、打通,我们可以通过 Flutter 放大自身业务开发能力,参与到更多的平台开发中。
有一个说法是:对于 Android 原生开发来说,学会 Flutter 等于学会了 70% 以上的 Jetpack Compose 。
当你快速搭建好环境,简单了解 Flutter 的 API 之后,学习 Flutter 主要有两个核心点:一个
是响应式开发,另一个是弄懂 Widget 的背后是什么?
这两点对于Android开发来说都有一定的难度。
为了帮助大家快速无痛上手 Flutter,我这里给大家分享一份资料
第一章 为什么 Flutter 是跨平台开发 的终极之选
1这是为什么?
2什么是跨平台开发?
3什么是Flutter、
4 Flutter的特性
5 Flutter构建应用的工具
6 使用Flutter构建的热门应用
7构建Flutter应用的成本
第二章在Windows上搭建Flutter开发环境
1使用镜像
2系统要求
3获取Flutter SDK
4编辑器设置
5Android设置
-
起步:配置编辑器
-
起步:体验
-
体验热重裁
-
创建新的应用
-
运行应用程序
-
体验热重裁
第三章编写您的第一个Flutter App
第1步:创建Flutter app
第2步:使用外部包(package)
第3步:添加一个有状态的部件(Stateful widget)
第4步:创建一个无限滚动ListView
第5步:添加交互
第6步:导航到新页面
第7步:使用主题更改UI
第四章Flutter开发环境搭建和调试
1.开发环境的搭建
2.模拟器的安装与调试
3.开发环境的搭建
-
1).下载Flutter SDK
-
2).配置环境变量
-
3).安装Visual Studio Code所需插件
-
4).创建Flutter项目
4.模拟器的安装与调试
第五章Dart语法篇之基础语法(一)
1.Hello Dart
2.数据类型
3.变量和常量
4.集合(List、Set、Map)
5.流程控制
6.运算符
7.异常
8.函数
第六章Dart语法篇之集合的使用与源码解析(二)
1.List
2.Set
3.Map
4.Queue
5.LinkedList
6.HashMap
7.Map、HashMap、LinkedHashMap.splayTreeMap区别
8.命名构造函数from和of的区别以及使用建议
第七章Darti语法篇之集合操作符函数与源码分析(三)
1.lterable
2.forEach
3.map
4.any
5.LinkedList
6.HashMap
7.Map、HashMap、LinkedHashMap.splayTreeMap区别
8.命名构造函数from和of的区别以及使用建议
第七章Darti语法篇之集合操作符函数与源码分析(三)
1.lterable
2.forEach
3.map
4.any