Flutter入门学习心得

668 阅读4分钟

Flutter入门学习心得

why flutter

夏天的时候有三个选择:1、web端;2、深入音视频;3、研究跨平台。当时在犹豫,犹豫就会败北,一犹豫就什么都不会去学的。最后之所以选择了flutter是因为:1、公司想尝试跨平台;2、闲鱼在用。

着手

说干就干,很快就开始了文档学习,按照官方的中文文档很快装好了环境,跑出了第一个demo,demo的代码很简单(现在看很简单),但是对于我这种菜鸡的程序员来说很乱,是的,我看到demo的第一个反应是:“这都tm什么东西?”,但是花了2天学习了下dart基础并且跟着flutter的文档学习之后感觉并不困难,但是依然有不习惯。我对这种声明式写法的评价很一般,并不觉得这种写法比命令式的写法有什么特别进步的地方。
另外,由于还有需求要写,整个学习过程断断续续,效率也不是特别高

Dart阶段

这个阶段是有往复的,一开始看网上说半天看完文档就能上手,我是自信的直接看flutter文档的,然后效率贼低,各种问题。之后我就明白了了,网上的这些半天上手的说法有几个问题,他们说的半天可能不是你理解的半天,上手可能更不是你理解的上手(不要相信网上的只言片语,大部分时候不靠谱,或者说不适合你)。
框架学习受阻之后我去学了dart,过程很顺利,里边有很多和OC不一样的思路以及写法,让我受益匪浅。
dart阶段完全不困难,我之所以把这个阶段单独写出来是因为他对我跟重要,对于语言学习的比较少的人来说,学习一门跟原来常用语言非常不一样的语言对思路是一种拓展。同时让我明白一门语言不管他有什么黑魔法,如果你想快速学习的话,首先要学的就那么几个常用功能。

Flutter阶段

框架阶段,我首先去直接照着文档的顺序学习,但是很容易中断,之后我跟着视频学习,但是很容易睡着,最后根据这些教训,我决定换一种学习方法,这个方法步骤总结一下很简单就是:
1、大概印象。这一阶段不用落在具体的代码上,主要是对这个框架的写法有一个概念;
2、常用功能点。个人认为这一步应该是前期学习的重点。这个时间的学习会涉及最常用的一些api用法,比如布局写法、常用UI控件、比如网络请求、多线程之类的用法。基本上这几个点学会了常用功能就可以胜任,所以我在这个阶段的学习方法是把常用工具封装成工具类,把常用UI控件写demo练习; 3、重写一遍当前项目。未完成,但是会发现很多细节上的问题。

现在对flutter的看法

首先声明,我只是简单的学习了下写法,并没有完成实际的项目,同时受个人能力的影响观点可能会偏激。
关于flutter的优劣,网上的分析汗牛充栋,无非就是一个观点,性能好,一次编写,两端运行,是Fuchsia的原生语言,一堆溢美之词(我真怀疑谷歌才是这种软文的始祖)。但是我这种普通程序员使用过后的体会就是这个东西就是把大概的东西搭出来了,里边的很多功能需要时间去填充。虽然flutter跨端,但是你至少要懂一个方向的原生,要不然,遇到问题了也不容易解决,换句话说,你需要原生的能力来给你兜底。那么你觉得两端都会的程序员会不会用flutter?我的答案是,这是个很好的方向,但是我会把他当做技术储备,等更成熟一点再去用在项目中。
对于那些想把flutter应用在项目上的普通程序员来说要慎重。如果只是学着玩,那随便你了,无所谓。