Flutter调研报告

Flutter是Google推出的高性能跨平台UI框架,旨在提供一套代码解决多平台问题。报告对比了Flutter与H5、RN的差异,指出Flutter在性能、适配和代码复用方面的优势。Flutter采用Dart语言,构建基于Widgets的UI,与原生Android和iOS的深度融合避免了性能瓶颈。然而,Flutter应用包体积较大,Dart学习曲线较陡峭,第三方库不足,且存在键盘遮挡输入框等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Flutter调研报告

一、 Flutter简介

Flutter是google公司开发的一款基于Dart语言的全新一代跨平台,开源的UI框架。它最早是在2015年Dart开发者峰会上与大家见面,在此之后2017年5月发布了第一个Aplpha 版本,并于2018年12月初发布了1.0稳定版。
Google发布这个框架的初衷,就是结合自身多年来在各个方向,包含但不止于前端,移动端的经验,以及友商或失败或成功的经验,结合最新的一些框架理念,为下一代大前端统一UI框架发出的又一次冲击。为此铺路,Google也已经宣布将在Fuchsia 操作系统中扶正Flutter成为其官方开发框架。而Fuchsia 操作系统本身相比android,可以做到更轻量,对硬件和内存要求更低,本身定位是Google面对下一代物联网的主打操作系统。因此可见Google对其Flutter框架性能的信心。

二、 前车之鉴

在此之前,市面上已经出现了以ReactNative,weex为代表的跨平台方案。但是就目前来说,这两套方案都远没有达到人们的预期,甚至weex已经走向了生命周期的尽头。那么Flutter和他的前者比到底有哪些不同呢?
从大了讲,RN和weex以及其他的几乎所有flutter之前出现的跨平台方案,都无外乎两种设计思路。

1. H5时代,

这种类型的跨平台方案,其实就是将一个web网页尽可能的模仿移动端原生的页面效果,依托android和iOS各自平台的WebView网页容器控件,来打开网页,从而实现跨平台的效果。这种方案的缺点就很明显,它在性能上是远远不能和原生UI框架相提并论,而且观感效果差强人意,交互上也受很大限制。

2. 以RN为代表的时代,

为了解决H5时代性能上的巨大差距,Facebook于15年开源了这套UI框架,包括weex在内,他们解决性能问题的法宝,按通俗了讲就是代码映射。以RN为例。
在这里插入图片描述
RN本身使用起来,其实和普通的前端框架并无二致,前端开发者的入门成本很低,开发者可以大部分使用JS代码就构建起一个跨平台APP。RN 会把应用的JS代码(包括依赖的framework)编译成一个js文件(一般命名为index.android.bundle), RN的整体框架目标就是为了解释运行这个js 脚本文件,如果是js 扩展的API, 则直接通过bridge调用native方法; 如果是UI界面, 则映射到virtual DOM这个虚拟的JS数据结构中,通过bridge 传递到native , 然后根据数据属性设置各个对应的真实native的View。 bridge是一种JS 和 JAVA代码通信的机制, 用bridge函数传入对方module 和 method即可得到异步回

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值