美文网首页
浅谈一下Flutter框架

浅谈一下Flutter框架

作者: android不是安卓 | 来源:发表于2022-04-24 20:25 被阅读0次

在Flutter框架出现之前,主要有以下几个移动App跨平台开发框架:Cordova、Ionic、AppCan、Dcloud、APICloud、React Native。

虽然有那么多框架,但是它们的原理都是使用HTML、CSS和JavaScript进行移动App开发,多平台共用一套代码,提供了丰富的主流UI库、用来调用原生API的JavaScript API包装器,同时还提供App打包、发布的工具或服务。

由于这些跨平台开发框架是使用标准Web技术开发,所以它们打包出来的App在性能上,多少都会比原生App差上不少,这也是移动App跨平台开发技术一直不温不火的原因。

在决定学习一门新技术之前,我们总会拿它与同类技术进行对比,确保不会把宝贵的学习时间浪费在无用的技术上。所以,接下来我们将在对比中认识我们将要学习的Flutter框架。

首先是Flutter实现跨平台开发的原理,Flutter与现有的移动App跨平台开发框架都不一样,Flutter不是使用标准Web技术,而是借助可移植的图形加速渲染引擎、高性能的本地ARM代码,并以此实现跨设备、跨平台的高质量用户体验。

由上我们可以得知,使用Flutter开发的跨平台移动App,性能是可以与原生App一模一样的。你以为这样就完了吗?不不不,Flutter框架的能力不止于此!Flutter应用的性能甚至可以比原生App更加优秀,因为Flutter框架针对性能方面进行了优化。

传统的Web应用中会有成千上万数量个DOM节点,所以更新的时候会非常琐碎、频繁,使页面加载缓慢,所以现代的Web应用开始使用虚拟DOM技术来提高页面更新的速度,用一个虚拟DOM,而不是直接调用类似.getElementById的方法,只操作JavaScript对象,然后再把更改的部分更新到真实DOM,这样是相当方便的。但是添加了虚拟DOM意味着更多的代码,而且在一个DOM节点相对较少的页面中用虚拟DOM,实际上有可能会更慢。

不仅是现代的Web应用,其实目前主流的Android于iOS应用也是大量使用类似虚拟DOM的技术,即虚拟控件,而且得益于移动设备的性能优势,使虚拟DOM这种形式的响应式框架的优点发挥到极致,使得开发者忽略了该模式的缺点。

就在平台与开发者满足于这种以硬件性能优势来解决软件框架的性能缺陷时,Flutter横空出世!在Flutter的响应式框架中,控件树中的控件直接通过可移植的图形加速渲染引擎、高性能的本地ARM代码进行绘制,不再需要通过虚拟DOM或虚拟控件、真实DOM或平台控件这些中间对象来绘制。

Flutter响应式框架通过“无中间商赚差价”的方式直接利用硬件的所有性能,所以正如前面所说的,Flutter应用的性能比原生App更加优秀。

Flutter的优秀还不止如此,使用Flutter开发的应用能以60 FPS运行,这是现有的移动端游戏都难以实现的一个性能指标,例如王者荣耀也只能以40左右的FPS运行,所以使用Flutter创建的用户界面,性能远远优于其他跨平台框架。

相关文章

  • 浅谈一下Flutter框架

    在Flutter框架出现之前,主要有以下几个移动App跨平台开发框架:Cordova、Ionic、AppCan、D...

  • Flutter学习资源整理

    Flutter快速上车之Widget 【开发经验】浅谈flutter的优点 Flutter Widgets Ele...

  • 哥哥带你一步步搭建Flutter框架

    先来整体了解一下Flutter整体框架结构: 1,Flutter网络框架加持:详细哥哥已经在之前的两篇文章中做过介...

  • 如何进行Flutter混合开发

    Why Flutter ? Flutter框架与应用 框架与Source Code 整体框架 Source Cod...

  • Flutter学习笔记(2)

    继上一篇 Flutter学习笔记(1)介绍了一下Flutter框架构造,本篇主讲Flutter的视图体系,下一篇开...

  • Flutter 渲染原理

    1、Flutter 渲染原理 Flutter框架包含Flutter Framework(Dart)、Flutter...

  • Flutter学习---环境搭建

    之前就听说Flutter这个跨平台框架,一直想学习一下,现阶段手头事情不是很多,特意来学习一下! Flutter是...

  • 初识Flutter(基础入门)

    Content: Flutter框架概况发展概述发展历史框架特性框架结构 快速入门安装Flutter在Mac OS...

  • Flutter(5)-网络请求

    本篇文章主要给大家介绍一下Flutter中的网络请求,就说一下比较火的两个Flutter中开源的网络请求框架,这些...

  • (一)一统江湖Flutter-环境搭建

    一、认识一下Flutter Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生...

网友评论

      本文标题:浅谈一下Flutter框架

      本文链接:https://www.haomeiwen.com/subject/gbfxyrtx.html