Flutter会成为主流吗?

世界第一喷子S686


谷歌官方正式宣布 Flutter 全面支持多平台,包括移动平台 Android/iOS、Web( 新发布 )、桌面 PC 平台(内测中)、嵌入式平台(内测中)。

Flutter 具有高扩展性和高性能。可以预见,这门颠覆性编程技术将成为未来主流。一套代码逻辑规范实现全平台开发!不过 Flutter 起步于移动端、目前重心也在移动平台,其他平台 Google Flutter 团队正在逐步拓展完善。所以学习 Flutter 我们也先从移动端的开发学起。

跨平台是趋势

现在技术更新非常快,可能几年内就会有一个新的技术出现。移动端、前端、后端开发领域的边界逐渐模糊,要求一个开发者掌掌握多端开发的场景也越来越多,所以跨平台开发技术层出不穷。

为什么会这样呢?我们可以来分析一下。

首先,节约成本的优先选择(用人单位的需求)。

互联网行业捡钱的时代已经过去了,现在的公司纷纷选择精简人员配置,尤其对于规模不大的公司来说,开发一个产品要投放各平台,至少需要一个 Web 端开发,一个 Android 开发,一个 iOS 开发,人力成本相当高。因此,在跨平台实现效果与原生开发效果的差别愈发缩小的时候,很多公司更倾向于采用跨平台开发。

反之,对于开发者个人,去提前了解甚至掌握基本的跨平台开发技术,不但能补足自己的技术栈,还能在趋势早期创造明显的就业优势。

其次,设备的发展造成了需求(使用者的需求)。

我们都有体会,以前计算机语言和技术出现和迭代的频率并没有这么高。我认为,其中一个重要因素是硬件设备的制造门槛越来越低,计算机运算速度越来越快。

现在,计算机运算速度提高到了恐怖的程度,它缩小甚至抹平了很多技术的差距,导致不同技术呈现效果几乎相同。设备形态也五花八门多种多样,人们使用着不同尺寸和特点的设备,自然希望自己惯用的某一款产品,在这些设备上都能流畅地打开和使用。难道每增加一个新设备,就要配备一个专门的开发工程师吗?

还有,技术的发展提供了可能性(开发者的需求)。

原有的技术为了迎合使用者的需求,正在不断地更新迭代,与此同时,大量新的技术和语言也在孕育和产生。它们的目标都是更便捷、更高效的开发。

面对产品提出的各种需求,为了提高开发效率,开发者们是倾向于使用包容性强、适配性好的语言和技术。

整个分析下来,可以看到,跨平台正是大势所趋。

而 Flutter 的出现让跨平台移动端的接近原生的高性能体验成为可能,并不断在扩展 Web 端、PC 端等平台。

Flutter 是趋势

Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop.

(Flutter,一个支持手机、网页、可嵌入设备、和桌面的可移植 UI 框架。)

Flutter 是 Google 力推的跨平台框架,将是未来的 Google Fuchsia OS 下开发应用的主要技术框架。

谷歌对 Flutter 的投入非常大,SDK 的更新频率也很高。2019 年 5 月 8 号,谷歌刚刚发布了 Flutter 1.5 稳定版。

Flutter 的开发将不仅仅局限于移动跨平台,目前已经支持 Web 开发、后端开发、PC 桌面应用开发(内测中)、嵌入式开发(内测中)。

Google 的消息推出后,阮一峰老师也第一时间表达了他对 Flutter 的看好:

“我的看法是,如果现在学习跨平台应用开发,第一个要看的不是 React Native,而是 Flutter。”

其实,撇开个人开发者,许多大公司早就率先尝试了 Flutter。国内的阿里巴巴、腾讯、爱奇艺等大公司已经把 Flutter 应用在实际开发中,例如闲鱼团队已经把 Flutter 技术应用在闲鱼应用上。

那 Flutter 开发体验如何?

Flutter 入门容易

Flutter 基于 Dart 语言编写,有 React 语言风格,又结合 JavaScript、Java 优点,有面向对象开发语言基础的同学,很容易就上手了。

Flutter 真正跨平台

除了原生外,目前跨平台技术一般是混合开发,如采用 H5、React Native、Weex、小程序等技术。不过这些或多或少都能感觉到卡顿和体验不流畅,并且开发和学习成本非常高,而且都有各自的局限性。

Flutter 既能用原生代码直接调用的方式来加速图形渲染和 UI 绘制,又能同时运行在两大主流移动操作系统上。看下几种方案的对比情况:

从上面的对比可以看出,Flutter 的优势明显:高体验度、高开发效率、低学习成本、高可扩展性,未来 Google Flutter 团队还将使 Flutter 支持 PC 和 Web 的跨平台开发,真正全平台。

Flutter 用户体验媲美原生

可以说 Flutter 是一个革命性、创新性的技术框架,它实现了一套语言实现 Android 和 iOS 终端平台的高效开发,并且非 Web 跨平台模式,而是采用全新渲染引擎 Skia。它实现的应用体验和原生基本一致,流畅度远远高于目前的小程序、React 等技术方案,官方公布可以达到 60 FPS,甚至要高于原生的流畅度体验。

Flutter 开发过程轻松

太多开发者的切身实践证明,Flutter 的开发体验也相当不错!

I wrote nicer, more maintainable code that runs on both iOS and Android. It also took considerably less time and fewer lines of code to do so.

(我编写了更漂亮、更易于维护的代码,可以同时运行在 iOS 和 Android 上。它只花费了我相当少的时间和比原生开发更少的代码行。)

——Why Flutter Will Change Mobile Development for the Best

基于原生开发的 SDK,能轻松写出同时运行在 Android/iOS 的代码。

Flutter 成为未来主流跨平台开发框架技术已经势在必行,它开发高效、性能优秀、更新频率快、插件三方库支持多、Google 团队的技术支持给力、一套代码多终端运行,这些都非常的吸引人。

最后总结下,Flutter 全面网罗 Web、Android、iOS、Windows、linux、桌面、浏览器甚至物联网设备,未来趋势是属于 Flutter 的!


AI智慧


首先,我想回答的是当前有哪些移动客户端技术开发方案:

  • 原生(Navive)
  • H5 套壳(Web)
  • Hybrid (混合)
  • React Native(跨平台,js 映射为原生)
  • Flutter (跨平台媲美原生级别开发)
  • Weex(阿里出品,基于vue 写法,jsbridge 的 KPI 项目,谁用谁知道)

那么为什么需要跨平台开发:

  • 现在移动互联网行业都流行跨平台开发 App,这是开发趋势,企业需要降低成本,日益增长的移动领域带来的技术更新换代。
  • 桌面时代给了我们很大的启发,桌面很多应用都搬到了浏览器,原生应用少之又少,但是如果你现在看看,就算有桌面客户端,这些客户端也是利用了跨平台技术方案写的,比如 微信,钉钉等这些后起之秀。

那么,我来说说 Flutter ,Flutter 是谷歌开发的用于跨平台开发应用的技术,15年左右就出了,现在也支持开发 Web 了,真正实现了三个平台一套代码三端部署的能力,只需对特定的平台做稍微的适配就行,最重要的是性能能媲美原生级别的能力,渲染引擎用的是和安卓系统一样的,关键是谷歌这个大佬做背书,这点放心。


Android开发者


画界面挺方便的。只要原生功能封装齐全,确实挺方便的,比如语音sdk,视屏sdk等,但是它也只是用来画界面,界面以外的依赖原生



纳凉


很遗憾不会,2020年Flutter将不会有重大更新

主要是小版本更新和修复bug

国外公司也对Flutter不是很看好,愿意尝试得公司不多。

原因主要是

1.除了ui跨平台并没有解决实质问题,往往很多业务还是要写两套

2.Dart语言回调,写法等,造成代码碎片化,可读性差

3.增加开发成本,学习成本,如果框架本身得问题,解决框架的成本都很高

国内公司研发忽悠公司,公司忽悠投资人,最后落地,实际选择的的公司并不多,特别是大公司,重构的风险还是很大的


小邓说IT


Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界,Flutter正在被越来越多的开发者和组织使用,并且Flutter是完全免费、开源的。

它也是构建未来的Google Fuchsia应用的主要方式。


Z背后科技


会,时间问题


南哥出发2020


不会,我甚至怀疑google自己也觉得不会。


oaosj


两年内必定不会,没有比混合式开发和原生开发强。


此花开后


android生态的未来,其他目前不一定


萌宝爸B


2年之内不会,2年之后估计也够呛


分享到:


相關文章: