Flutter凉了吗?

最近用Flutter开发了一个学习日语的App。

说说使用感受。

移动互联网目前确实饱和了,开发App的需求慢慢在下降,大资本入场移动互联网越来越少啦。这才是觉得Flutter会凉的关键点,还有一个原因就是小程序,现在入场移动互联网基本首选的都会是小程序,甚至原来有App的商家都把重心放在小程序上了。

关于这点,可能性有两点,开发App成本太高了,小程序推广确实方便很多。

以上是目前移动互联网的情况。


下面开始说说Flutter的事情。

先吐槽缺点吧。

一、Dart的语法真的是无言以对,看过很多种说法,觉得最贴切的说法是,看似是一个很时髦的语言,其实内部很古老。不太能够理解为什么Google非得推广Dart,用TypeScript不香吗,虽然我也不太喜欢TypeScript,但是目前前端的德行,选TypeScript也是最好的选择了吧。

二、生态真的不太理想,很多库都好几个月没更新了,我都不太敢用。到社区里讨论,得到的说法是应该已经很成熟了,所以没有必要频繁更新。 。所以找了一个读取html的库,结果里面的<ruby>语法有问题,好,那我fork过去,改好了。合并足足话了2个月时间。原来我一直使用Rails,对比一下,真的相差太远了。

三、很多朋友说到嵌套的问题,确实嵌套地狱啊。

 确实存在这个问题,然而说到这个问题,很多人会认为是可以通过拆分解决的。可是如果新手的话,不拆分那么代码会非常可怕,这空格达到100个都不是奇怪的事情。为什么会出现这种问题呢?因为Flutter的绝大部分组件是不支持写样式的,就算支持,也只能写非常的少。这个怎么理解呢!就是html里不能把css拆分出来,更可怕的是如果你使用了Padding组件,你希望组件background color是红色的是不能设置的!必须外面套一层Container组件,当然Container组件也可以写padding样式啦,这里我们不使用Padding组件也可以。但是万一你遇见了一个Container不能满足的事情,那么你就开始要嵌套咯。

吐槽了那么多,那我会继续用Flutter吗?我的回答是会的。为什么?

  • 跨平台一致性目前使用来看,效果很好。性能比套壳做法好太多了。
  • 不要说原生各种好,就成本,不是非常复杂的功能的情况下,Flutter成本可以直接腰砍原生成本。
  • 把App开发成本拉下来,才可以和小程序竞争。绝大部分To B项目,我会更倾向于使用App,而非小程序。
  • 文档成熟,许多单独组件都有视频介绍,非常棒。

为什么大家对跨端开发情有独钟呢?

我觉得客户端开发最大的问题就是多端一致性难以保证。

相同的功能由两端的开发人员分别开发,随着时间的推移,两端从架构到实现再到用户体验就会渐行渐远。

于是,从Hybird到Weex再到RN,还有微软的Xamarin,出现了很多的解决方案。就是希望能通过一套代码多端复用的方式,解决开发效率和端一致性的问题。

但是这些方案从性能和一致性上来讲。距离我们理想的场景还有一定的差距。

为什么Flutter会火?

Flutter和RN最大的差别就是自绘制引擎。

自绘制引擎的方案。一方面,从根本上解决了各端的渲染差异性。另一方面也解决了基于js的跨端开发,不得不面对的性能问题。

Flutter的动态化方案

Flutter的动态化方案目前有两个主流的思路:

1、基于Web技术栈的Web On Flutter容器

也就是基于Flutter实现一个Web容器,以解决WebView的性能和兼容性问题。因为使用的是H5的技术栈,自然也就有了动态化能力。

这方面主要有阿里飞猪的Flugy、美团的MTFLutterWeb容器等。

2、Flutter原生实现动态化

这个的底层思路和RN很像,代码在JS上运行,渲染在Flutter上完成。

目前主要是腾讯的MXFlutter。他们做的比较好的一点是可以直接写Dart的Flutter页面,然后通过他们的编译工具编译成JS代码进行动态发布。这样就比较完美的解决了开发效率问题。

Flutter相关的学习资料

我的结论是Flutter不是要凉了,而是逐渐变成客户端开发中必不可少的核心技术。如果你是客户端开发从业者,建议一定要学习一下Flutter。无论从个人成长还是职业发展来说都会有很大的收获。

 从基础入门到高级进阶我都已经备齐,大前端趋势已经越来越明显,需要入门以及进阶Flutter资料的读者可以找我拿资料

点击链接即可【Android开发交流】

Flutter进阶

1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门

 

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>