怎样评价谷歌推出的 Flutter 框架和 Dart 语言
本文主要介绍Flutter相关的东西,包括Fuchsia、Dart、Flutter特性、安装以及整体架构等内容。
简介Flutter 作为谷歌最近推出的跨平台开发框架,一经推出便吸引了不少注意。关于 Flutter,目前我们知道它是一个跨平台开发框架。但是它本身并不止于此,例如 Fuchsia、Dart 等,我们也都需要去了解。
Fuchsia说到 Flutter,绝对绕不开 Fuchsia,这个是谷歌开发的一款全新的操作系统,GitHub 地址以及 Google source 主页。Fuchsia 内核是 Magenta Kernel,一个基于 LittleKernel 的项目。该系统与 Android 相比,无论是存储器还是内存之类的硬件要求都大幅降低,外界推论是一款面向物联网的系统。笔者倒是没有查到谷歌开发这款操作系统的目的,如果有知晓的,也烦请告知。就像很多博客主说的那样,如果只是取代 Android,那无疑是一种很不好的做法。任何技术的推动,都得靠背后的商业驱动,尤其是这种涉及到手机厂商利益的技术。
FlutterFlutter 是 Fuchsia 的开发框架,是一套移动 UI 框架,可以快速在 iOS、Android 以及Fuchsia 上构建高质量的原生用户界面。 目前 Flutter 是完全免费、开源的,GitHub 地址。其官方编程语言为 Dart,也是一门全新的语言。所以说,上手成本比较高,对于移动端开发人员,语言以及框架都是全新的,整个技术栈的积累也都得从头开始。可以看下其官方介绍的特性:
快速开发:Flutter 的热重载可以快速地进行测试、构建 UI、添加功能并更快地修复错误。富有表现力,漂亮的用户界面:自带的 Material Design 和 Cupertino(iOS 风格)widget、丰富的 motion API 、平滑而自然的滑动效果。响应式框架:使用 Flutter 的现代、响应式框架,和一系列基础 widget,轻松构建您的用户界面。访问本地功能和 SDK:Flutter 可以复用现有的 Java、Swift 或 ObjC 代码,访问 iOS 和Android 上的原生系统功能和系统 SDK。统一的应用开发体验:Flutter 拥有丰富的工具和库,可以帮助开发者轻松地同时在 iOS 和 Android 系统中实现想法和创意。原生性能:Flutter 包含了许多核心的 widget,如滚动、导航、图标和字体等,这些都可以在 iOS 和 Android 上达到原生应用一样的性能。其实从官方特性来看,唯一有点吸引力的就是统一的应用开发体验。一套代码运行在多个平台,做到真正的跨平台。像热加载,目前 Android 开发本身就支持了,响应式框架以及访问本地功能和 SDK,对于 Native 来说,本身并没有多大的吸引。至于漂亮的用户界面,国内的商业项目,哪一个会去按照 Material Design 去设计。跨平台本身,往往意味着性能受损,通用性解决不了的问题,又得回到 Native 去实现。所以这些因素也是跨平台从移动端诞生之初就开始提,到现在也没有被很好解决的一个原因。至于谷歌能够做到什么程度,或者说开发者该保持什么期许,我觉得都不好说,或许谷歌解决了一个多年的难题,或者又像被谷歌放弃掉的其他项目一样。抛开商业层面,对于技术人员,我们更多的是应该去关注它的思想,谷歌是如何去解决这些实际存在很久的问题的,至于技术本身的发展,这个是个人开发者无法去左右的,技术的更迭,保持一种学习的状态,然后努力锻炼身体,就能够保证不被淘汰掉。
DartDart 是谷歌开发的计算机编程语言,于2011年10月份发布,可以被用于 web、服务器、移动端和物联网等领域的开发。Flutter 采用 Dart,原因很多,抛开商业层面的 Java 版权问题,单纯从技术层面:
Dart 是 AOT(Ahead Of Time)编译的,编译成快速、可预测的本地代码,使 Flutter 几乎都可以使用 Dart 编写;Dart 也可以 JIT(Just In Time)编译,开发周期快;Dart 可以更轻松地创建以 60fps 运行的流畅动画和转场;Dart 使 Flutter 不需要单独的声明式布局语言;Dart 容易学习,具有静态和动态语言用户都熟悉的特性。Dart 最初设计是为了取代 JavaScript 成为 web 开发的首选语言,最后的结果可想而知,到Dart 2 的发布,专注于改善构建客户端应用程序的体验,可以看出定位的转变。用过 Java、Kotlin 的人,可以很快的上手 Dart。一门语言的成败,抛开背后的商业推动,我想很重要的一点在于其生态,生态的好坏,主要包括开发者以及第三方库的数目,目前看,Dart 的生态还是比较差。对于个人开发者,可以根据心情来选择,但是对于商业应用,有更复杂的考量标准。Dart 背后有谷歌的推动,能发展到什么程度,还得看其商业运作能力了。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义