Flutter核心原理(Flutter UI 框架(Framework)+Element、BuildContext和RenderObject )

什么是UI框架?

UI框架是在特定平台上实现快速开发图形用户界面(GUI)的框架。它解决了如何基于基础的图形API(如Canvas)来封装一套高效创建UI的工具集的问题。
每个平台的UI框架实现原理基本相通,无论是Android还是iOS,它们将用户界面展示到屏幕的流程都是类似的。UI框架的作用是简化开发人员在特定平台上创建GUI的过程,提供高效且易于使用的工具和组件,使开发者能够快速构建各种用户界面。

硬件绘图基本原理

屏幕显示图像的基本原理是每一个像素点可以发出多种颜色,并以固定的频率刷新图像。计算机系统中,CPU将计算好的显示内容提交给GPU,GPU渲染后放入帧缓冲区,然后视频控制器按照同步信号从帧缓冲区取帧数据传递给显示器显示。CPU主要用于基本数学和逻辑计算,而GPU主要执行和图形处理相关的复杂的数学,如矩阵变化和几何计算,GPU的主要作用就是确定最终输送给显示器的各个像素点的色值。

操作系统绘制API的封装

操作系统屏蔽了底层硬件操作,并提供封装后的API供应用调用。为了简化开发,GUI编程语言会在操作系统之上再封装一层UI框架,将操作系统原生API封装成一个编程框架和模型。这些UI框架定义了开发规则来描述UI,如UI树结构和操作原则。常见的UI框架有Android SDK和iOS的UIKit。

Flutter UI框架

可以实现一个UI框架,使用同一种编程语言开发,然后在底层通过中间层来适配不同操作系统的API。这样就可以使用同一套代码编写跨平台的应用。Flutter正是采用了这种原理,它提供了一套Dart API,在底层使用Ope

你可能感兴趣的:(flutter)