【Flutter】入门思想,上岸必备

时隔一年,这回上岸了。
兜兜转转,从去年无意识的以单纯学习为目的了解了Flutter的设计思维到今年再一次上手多了一些体会。
每学习新知识都会经历一个过程,即

从陌生到熟悉,从熟悉到熟练。

个人的思考结果是这样的

  • 首先明白setState,相当于触发刷新,全局的,我们也可以局部刷新,类似用到订阅者观察者思想的provider。如果是写mvvm的应该会很明白,写mvc,mvp的可能会很别扭,状态已经预先根据模型判断好了,这个在我没写mvvm之前刚接触flutter那会很抵触。
  • 其次明白,一切皆Widget,此Widget不能单纯当作安卓的Widget或者View,你可以理解为这个东西可以是名词当作控件,也可以是形容词,具备装饰性。比如说,安卓我要给一个TextView加内边距,以前我们是在textview的属性内添加,但是flutter它并不统一,因为它不统一,可以说不规范也可以说灵活。
    例如
 Padding(padding: EdgeInsets.all(10),child: Text('哈哈哈哈哈'))

像Visiblity也是,你想要装饰一个东西,就把这个装饰放在外层,来装饰child,所以用中文思维就很好理解,以前我们用的英文思维,写代码的顺序是 文本,内边距18,现在是,内边距18的文本,后面你想加参数,有的会在Widget内部提供,没有的话就只能在外层包裹起来了。

  • 明白Flutter debug条件下会比较卡,掉帧,release版本实际是比较流畅的。
  • 你至少需要2个星期的时间,每天学习下,从复制粘贴改代码开始,然后慢慢地跟随自己的思想,查看方法参数去实现出来。这种陌生感褪去之后就只需要练就可以了。

学习路线备份如下。

  • 老孟的组件概览,这个我是通读了一遍,不过码代码的时候还是得查,主要得先知道自己想要的功能是什么组件,才能根据组件查代码。不建议通读。
  • pub插件库,跟github差不多。在pubspec.yaml里填写,目前用到的插件有
    • 数据库 floor
    • 极光推送 jpush_flutter
    • 网络框架 dio
    • 图片选择 image_picker,拍照或者选择图库照片
    • 下拉刷新 pull_to_refresh
    • 吐司 fluttertoast
    • 数据共享 provider
    • websocket web_socket_channel
    • 翻转屏幕 auto_orientation
    • 瀑布流 flutter_staggered_grid_view
    • webview flutter_webview_plugin
    • Banner carousel_slider (自己用PageView实现的话看这里)
    • soketio socket_io_client
  • 关于provider是什么原理可以看这个
    https://book.flutterchina.club/chapter7/provider.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值