移动端的未来为什么是Flutter?( 六 )


2017年的Google发布会上,Google简单介绍了正在研发中的操作系统Fuchsia,另有消息称,该系统的UI用户界面层使用的是Dart语言开发的Flutter框架,笔者相信该消息是真实的,因为在开发Flutter项目的过程中,使用获取当前平台类型方法时,可选项目中除了iOS和Android,还包含Fuchsia,如下图所示 。

移动端的未来为什么是Flutter?

文章插图
 
框架结构
下面的图片是Flutter框架结构图,对大部分开发者而言,最常用的是Widgets层,屏幕上可见与不可见的元素都由Widgets层实现,这些元素被称为Widget 。在Widgets层在上层,有两个现成的Widget库,Material库即Material Design的Widget库,Material Design是Google I/O 2014发布的设计语言,目前成为统一Android Mobile、Android Table、Desktop Chrome等平台的设计语言规范 。Cupertino库则是一个模仿iOS设计风格的Widget库 。
移动端的未来为什么是Flutter?

文章插图
 
Flutter框架结构图的底层是Flutter Engine虚拟机,在这一层次中需要了解一下的是Skia,Skia是Google研发的包括图形、文本、图像、动画等多方面的图形引擎,不仅用于Google Chrome浏览器,Android系统也采用Skia作为绘图处理引擎 。
移动端的未来为什么是Flutter?

文章插图
 
上面的图片展示了Flutter的绘图原理,Flutter框架直接使用Skia引擎来渲染,因此能够控制渲染帧数,从而实现高帧速率 。
 




推荐阅读