Android系统做为全球第一大系统,基于 Java 开发的移动端有着诸多的性能优点。 2018年前 H5 的性能瓶颈和 RN 的停更 致使业界对跨平台开发失去信心。 直到2018年10月Google推出首个 Flutter 跨平台解决方案,打破整个移动开发的方向。前端
在 Flutter 界面渲染过程分为三个阶段:布局、绘制、合成,布局和绘制在 Flutter 框架中完成合成则交由引擎负责。android
以前,Google发布了Flutter前端框架的1.0版本。有同窗要问,Flutter是什么东东?Flutter是Google基于Dart语言的一款前端框架,目前能够在Android和iOS平台进行编译运行,其运行效率能够媲美原生应用,这也是区别于JS类跨平台框架,如weex、Taro、React Native等的最大优点,同时,Dart语言最先也是Google发布出来想要改进JS的语言,因此Dart to JS是不成问题的。据悉,Flutter接下来也是要经过编译为JS打通Web端开发的。至此,Flutter不但能够跨主流移动操做系统iOS和Android,还能够经过浏览器和相似PWA的应用,打通主流桌面操做系统Windows、MacOS和Linux。程序员
Google已经研发两年多的,最新打算用来取代Android的移动操做系统Fuchsia OS,根本前端就是用Flutter框架写的,若是Fuchsia系统发布,那Flutter和Dart必定是一跃成为首选前端编程语言和框架,只是苦了广大程序员,又有新东西要学了……面试
还有就是Google的Go语言增加势头迅猛,伴随其媲美C++的效率、极简的服务器并发编程、高效的服务器运行效率和现代化的编程特性和方式,国内外大部分公司都对其进行了应用,用来取代以前的一些接口和服务器应用。其中Docker就是最著名的例子。而Go语言早已突破1.x阶段,正稳步迈向2.0阶段。编程
咱们能够清晰地看到Google的布局和野望,Dart主攻前端和移动端,Go主攻服务器端。先后端通吃,不一样于微软的C#和苹果的OC和Swift,Google的布局彷佛更加全面,应用和影响也更加普遍。Google统一先后端开发江湖的野望也会在必定程度上实现,至少,开源的语言和有实力的靠山公司,会比别家实现的好。后端
一、若是咱们之后想在Google的新系统上跑程序的话, 用Flutter来编写是必定没错的. 固然最近的报导显示, Fuschia原生支持ART, 所以Android程序应该也能够. 不过直接上Flutter我认为更好.浏览器
二、Flutter用Dart, 学习Flutter的同时会使咱们掌握一门新的语言. 买一送一.前端框架
三、Flutter天生支持iOS风格的控件, 称为Cupertino, 这样咱们能够一套设计, 一套code跑在两个系统上.服务器
四、学习Flutter的过程会改变手机端app开发的思惟. 毕竟这个亲只有一个activity. 全程跟个游戏引擎同样. 60帧每秒绘图.weex
五、Hot reload. 极大地加速了咱们的开发效率. 试过了, 绝对会爱上它.
六、Flutter提供method channel给Android和iOS. 其实咱们能够只用Flutter来开发UI. 其余底层逻辑能够封装Android和iOS分别的lib package. 而后直接Rx封装写回method channel. 也是一种新的开发模式.
七、性能更好, 兼容性更好, 开发起来更有乐趣, 这才是程序员的人生. 而Flutter都能知足.
如何学习Flutter: http://www.javashuo.com/article/p-anrgiulg-br.html
从目前的状况和节奏来看,此次 Google 是认真的,承前启后的为它的下一代操做系统 Fuchsia 提早铺了路! 因此,我仍是建议,日常你没事的时候能够开始学习了,等到真正成熟的时候,你就会一马平川的。不知道,你看好 Flutter 吗?欢迎你在文章底下留言交流见解。
一份完整的Android Studio搭建Flutter教程
若是对技术开发比较感兴趣,能够关注个人公众号:终端研发部,id:codeGoogler