首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

聊聊 Flutter

聊聊新技术系列 >>

Flutter 是什么

英文原意:

(使)飘动,挥动,颤动;(鸟或昆虫)拍(翅),振(翅),鼓(翼);飞来飞去;翩翩飞舞。

对于开发者来说,Flutter 是谷歌推出的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。Flutter可 以与现有的代码一起工作。

Flutter 的竞品是谁?主要就是 React Native,其次是 Swift && Kotlin。

Flutter 和 Dart

Flutter 较 React Native 最大的优势我感觉是即提升了 开发体验又提升了运行时的体验。即兼顾了效率和性能,这主要是由于 Dart的贡献,这是 JavaScript 提供不了的。所以也不要希望那一天 Flutter 能支持 Dart了。

关于 Dart,可以聊一聊,这是一门本来打算消灭 JavaScript 的语言,但是由于互联网上存量网页太多,以及开发者不愿意开发出来的网站只有Chrome能用,最终造成的结果, Dart 不温不火。还没有后来谷歌推出的 Go 语言流行。

Flutter 和 Dart 是相互成就的,同时核心开发团队都是一个公司的,沟通也比较高效,Dart 也为了 Flutter “定制”了很多特性和语法糖等。这是别的语言无法提供的。

Flutter 发展的够快吗

其实不够快,也不够好。甚至我认为有些路也走偏了。比如近期对 Web端和 PC端的支持。其实很费精力的。我其实希望 Flutter 在 跨 Android 和 iOS 端开发上再继续前进点。比如 尽快完善 WebView 插件。

不过我说了也没用,跨4端开发确实很美好,但是这样会降低 Android 和 iOS端相关开发工作的速度。

任何项目,研发资源总是不够的。Flutter 同样如此。我认为有如下几个原因:

Dart 相对小众

学习 Dart 的意愿不足

移动端开发整体下行

有好的解决方式吗?好像没有。笔记 有了 JavaScript 这个锤子,有锤不完的钉子。而会了 Dart 只有 Flutter 这一个钉子可以锤。虽然 Dart 也在服务端努力着,但是依然不看好。

Flutter 的真实客户在哪里

为啥说客户,不说用户,或者开发者。客户就要保证客户体验。

对于 Flutter 这样一个产品,客户的目标特征有哪些?

希望Android 和 iOS App 共用一套业务代码

研发投入有限,不想养两个移动端开发团队

同时App的开发体验和使用体验都要超过 React Native

技术开发的团队,不介意引入新的技术栈

其实满足这样条件的客户并不多。

Flutter 的标杆客户分析

Flutter 的标杆客户应该就是闲鱼App的开发团队了,但是那也不是说闲鱼整个App都是基于Flutter开发的,而且不说所有技术团队闲鱼这样的团队体量的。不同的技术团队对同一个技术都会有自己的考量。

不要人云亦云,比如 Facebook 的移动端 也完全不是用 React Native 开发的,或者说就没用用到,是它公司下别的App用到了。

现在可以把 App 整体切换到 Flutter 了吗

几个点需要考虑,用户规模,研发资源,研发速度、研发体验。

2C 的App就不建议切换了,市场变化速度太多。商机稍纵即逝,追求体验就原生开发,追求效率就 React Native。当用户量在10万级别,并且会持续增长的情况下,可以考虑纯原生开发了,如果之前就是纯原生开发的话,那就加人就可以了。

2B的App的技术团队还是很有必要研究下 Flutter,但是在生产环境下,我感觉还是再需要半年左右。

个人观点

等着打脸

Flutter 应该是最后一个能流行起来的 跨移动端开发框架了。但是应该不能火过 React Native,除非 Facebook 放弃 React Native。但是明显不会。

也就是说 Flutter 也是你学的最后一个 跨移动端开发框架了。

如果工作上用不到,不建议投入很多精力学,因为可能以后也用不到,不如做点更有意义的事情。

图书推荐

Flutter in Action https://www.manning.com/books/flutter-in-action

中文图书一本也不推荐,看看官方文档就可以了。几乎所有的 Flutter 中文图书都是官方文档及部分官方 Package 的解读而已。

最后

任何技术都用坑,只有你跳的够深,才能很好的避开坑。真要入 Flutter 的坑话,只是会用 Dart 写一些业务,引用一下第三方包是不够的, Flutter 的 engine ,Dart 的 vm 是必要要入的坑。

没有银弹。没有最好,只有一个阶段最合适。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200524A0K9IE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券