如果你还在犹豫为什么要学Flutter,下面2个图的应该足够吸引你加入了吧,一套代码多平台使用



image



image

Flutter 是 Google 用以帮助开发者在 iOS 和 Android 两个平台开发高质量原生应用的全新移动 UI 框架。
Flutter又是谷歌钦定的下一代移动操作系统Fuchsia的UI框架。
作为一名Android Developer,看到是Google出的,且还能开发iOS,还是有必要学习下的!

最近通过学习Flutter,认识很多人,特别是后端的各种大佬也在疯狂学习,作为移动端的我们亚历山大!!!

尝试一下项目



zhrb.gif

使用几天的感想

* 需要学习一门新的语言Dart,对于有移动端和前端开发基础的人来说,不算很困难。
* 开发过程中Hot Reload大大的提高开发效率。
*
树型布局,需要转变自己的布局思维,一切都是widget,这个概念在在Flutter特别重要,因为在使用的过程中你需要展现给用户的UI都是依靠各种类型的组件,通过组合的方式生成。
*
对于大家认为树型布局的嵌套层次较深,看起来极为不直观的问题,只需要将一个复杂的布局进行拆解,做成独立的widget,然后再进行组装,这样不仅解决了阅读代码不直观的问题,而且也大大提高了widget的复用性。
* 对于网络请求的数据这一块,如果服务器返回的数据嵌套层次较多,会让开发者会较多的时间去整理,封装,写解析体。
*
自己本身是做开发Android的,所以习惯的使用了MVP的模式,实践项目写完以后感觉有点笨重,可能需要摒弃一些移动端老的编码观念,在后续接触到国外的一些开源项目,使用了的BLoC或者Redux,作为响应式框架,个人感觉这两种架构比MVP更适合Flutter的开发。
*
开发的时候我们在debug模式下会稍显卡顿,后续做了个release包,分别在iOS和Android的真机上运行,从用户体验的角度去看,性能上几乎和原生没差别,是可以接受的。
* 实践的项目分别打release包,iOS版有16.16M,Android版有8.02M,相对原生较大。
*
成熟轮子较少,官方或者大厂维护的插件不多,例如第三方平台登陆,支付,分享,国内地图等,我们需要自己做插件,这个就迫使我们目前需要掌握2种平台的开发iOS和Android,这个学习成本就相对高一点。
最大的吸引力还是统一的应用开发体验,一套代码多平台使用。

学习传送门

* Flutter官网 <https://flutter.io>
* Flutter中文 <https://flutterchina.club>
* 在线Dart学习 <https://www.dartlang.org/tools/dartpad>
* Tensor Programming
<https://www.youtube.com/channel/UCYqCZOwHbnPwyjawKfE21wg>
* DartConf 2018系列 <https://www.youtube.com/watch?v=jF0kD7lxTTw>
* 闲鱼技术 <https://juejin.im/user/5ac2db47f265da2393774122/posts>
基础知识点

1. Flutter知识点: Route & Navigator <https://www.jianshu.com/p/46fbca731434>
2. Flutter知识点:数据存储之SharedPreferences <https://www.jianshu.com/p/7795958d052d>
3. Flutter知识点:数据存储之sqflite <https://www.jianshu.com/p/7ac3ce2bc0c6>
4. Flutter知识点:数据存储之File <https://www.jianshu.com/p/0a7a74b07c12>
5. Flutter知识点:数据存储之SharedPreferences <https://www.jianshu.com/p/9cbd4465e3cb>
6. Flutter知识点: 常用手势 <https://www.jianshu.com/p/9cbd4465e3cb>
7. Flutter知识点: 图片加载 <https://www.jianshu.com/p/5f0653551efe>
8. Flutter知识点: 生命周期 <https://www.jianshu.com/p/05af657c13b0>
9. Flutter知识点:数据存储之SharedPreferences
<https://blog.csdn.net/sinat_17775997/article/details/Flutter%E7%9F%A5%E8%AF%86%E7%82%B9%3A%E6%95%B0%E6%8D%AE%E5%AD%98%E5%82%A8%E4%B9%8BSharedPreferences>
10. Flutter知识点: 网络请求 <https://www.jianshu.com/p/675523d688ed>
11. Flutter知识点: InheritedWidget <https://www.jianshu.com/p/387e2454d590>
12. Flutter知识点: Notification <https://www.jianshu.com/p/d9e7e7ad4daa>
13. Flutter知识点: Widget隐藏与显示 <https://www.jianshu.com/p/3caddaeb0f1b>
14. Flutter知识点: Drag <https://www.jianshu.com/p/410fb2c9da4b>
15. Flutter知识点: Flutter与原生(Android)的交互 <https://www.jianshu.com/p/c5263a3d7aac>
16. Flutter知识点: Animation <https://www.jianshu.com/p/32fee75d9e70>
17. Flutter学习中的问题记录: ListView.builder <https://www.jianshu.com/p/e06a256e6109>
18. Flutter学习中的问题记录: Drawer <https://www.jianshu.com/p/90cd38aeee65>
19. Flutter学习中的问题记录: TabBarView & TabBar
<https://www.jianshu.com/p/edb741ab5997>
20. Flutter学习中的问题记录: 如何监听实体返回键和AppBar返回键
<https://www.jianshu.com/p/f9f496652807>
21. Flutter在项目中的架构学习,例如MVP,BLoC,Redux等
<https://github.com/zhujian1989/flutter_study>
22. Flutter基础UI组件的使用,建议直接看官方的Gallery
<https://github.com/flutter/flutter/tree/82ddabd32a454ba30d5596e62d40da5a8598ae53/examples/flutter_gallery>

所有源码都在我的GITHUB <https://github.com/zhujian1989>



作者:老实巴交的读书人
链接:https://www.jianshu.com/p/2c783b20925f
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信