当前位置: 首页 > news >正文

鸿蒙Flutter三方库适配指南-02.Flutter相关知识基础

鸿蒙Flutter三方库适配指南:Flutter相关知识基础

Flutter 三层结构

在这里插入图片描述

  1. Dart 层(Framework 层)

使用 Dart 语言 编写

提供了 UI 框架(widgets、material、cupertino) 和 渲染、手势、动画 等上层 API

面向开发者,负责 业务逻辑 与 界面搭建

  1. C/C++ 层(Engine 层)

Flutter 的 引擎核心,主要用 C/C++ 编写

包含 Skia/Impeller 图形渲染引擎、文本排版(libtxt)、Dart VM

负责 图形渲染、文本排版、GPU 加速 等底层性能相关工作

  1. Platform-dependent 层(Embedder 层)

负责与 宿主操作系统(Android、iOS、HarmonyOS、Windows、macOS、Linux) 的交互

提供 事件处理(输入、手势)、系统 API 调用、插件通信(Platform Channels)

不同平台有各自的 embedder 实现,使 Flutter 可以运行在不同系统上

Dart 语言基础知识

Dart 是一种面向对象的编程语言,Flutter 使用 Dart 作为其主要开发语言。

// 变量声明
String hi = 'hello';// 常量声明
const String hello = 'hello';// 类定义
class Person {String name = '';int age = 0;Person(String n, int a) {name = n;age = a;}String getName() {return name;}
}Person p1 = Person('Alice', 25);

注组

在 Flutter 中,通常使用注解来标识组件和入口点:

// 主程序入口
void main() => runApp(MyApp());// 组件装饰器
class MyApp extends StatelessWidget {Widget build(BuildContext context) {return MaterialApp(title: 'Flutter Demo',home: Scaffold(appBar: AppBar(title: Text('Hello')),body: Center(child: Text('Hello World')),),);}
}

Flutter 与 ArkUI 对比

对比维度FlutterArkUI
开发语言DartArkTS
架构层次Dart Framework → C++ Engine → Platform EmbedderArkUI Framework(ArkTS) → ArkUI Engine → HarmonyOS 系统服务
渲染引擎Skia 渲染自研 ArkUI 渲染引擎
平台支持Android / iOS / Windows / macOS / Linux / WebHarmonyOS / OpenHarmony
开发体验热重载、Widget 声明式 UIArkTS 声明式 UI、实时预览(Previewer)
插件机制Platform Channels + FFI 调用,插件生态丰富模块化开发 + 系统 API 调用,生态成长中
生态现状全球活跃开发者 280 万+,pub.dev 插件库庞大-
优势跨平台统一 UI、生态成熟原生性能高、系统集成度深、分布式支持
适用场景跨平台应用、多端兼容鸿蒙原生应用、分布式设备协同

语法对比

FlutterArkUI

参考资料

  • Flutter架构概览
  • ArkUI
http://www.dtcms.com/a/536807.html

相关文章:

  • 随机SVD:大规模矩阵分解的高效算法
  • mysql 数据库做异机定时器自动全库备份
  • ctf常用古典密码
  • 手机网站程序如何自己设计图片
  • 怎么看一个网站什么程序做的国外网站建设素材库
  • MongoDB的$sample是啥?
  • __金仓数据库平替MongoDB实战:从多模兼容到高可用落地__
  • 缓存相关,redis
  • 零基础如何准备蓝桥杯
  • 佛山 网站设计公司中山高端网站建设
  • 2.2.1.10 大数据方法论与实践指南-Kafka 使用规范
  • 培训班在哪个网站找网站建设注意事情
  • 企业的网站建设公司南阳做网站 汉狮公司
  • 数据驱动下的金融AI实践:技术落地路径、方法论沉淀与场景价值挖掘
  • 百日挑战-单词篇(第五天)
  • 做网站的开发软件seo优化的优点
  • 1空间做2个网站2017网站设计趋势
  • <项目代码>yolo螺丝螺母识别<目标检测>
  • 企业级SQL审核工具PawSQL介绍(2)- 审核规则体系
  • FastGestures v2.2.51 鼠标、触控板、屏手势软件
  • Maven(项目管理工具)
  • 湛江市建设规划局网站dede静态网站
  • 在SCNet超算DCU异构AI手工安装Ollama 0.6.7版本
  • CSP-S模拟赛八总结
  • 电子商务网站设计流程vuejs做视频网站
  • 新手做网站需要哪些软件thinkphp旅游网站源码
  • 漳州市城乡建设局网站6wordpress自定义排版
  • Falco:云原生世界中的安全守护者
  • 塘沽做网站的公司电子商城市场
  • 一篇文章详解Kafka Broker