一:ACE_Engine框架概述:
ACE_Engine框架是OpenHarmony 的UI开发框架,提供开发者在进行应用UI开发时所必需的各种组件,以及定义这些组件的属性,样式,事件及方法。通过这些组件可以很方便的进行OpenHarmony上UI应用的开发。 ACE_Engine提供的组件分为两种类型,即:类Web开发范式类型和声明式开发范式类型。其中类Web开发范式中定义一个页面需要三个文件,html,css和js文件。html文件负责页面布局,css文件负责定义组件的样式,js文件负责业务逻辑实现。而声明式范式仅需要1个ets文件,页面布局和组件的样式以及业务逻辑实现都在此文件中。如图: 二:ACE_Engine框架模块划分对于类Web开发范式组件,根据组件从前端到后端的过程,可以将整个框架划分为JsFrameWork,DomNode, ComPonent, RenderNode四个模块。其作用分别如下:- JsFrameWork:
- EtsLoader
- 组件的属性和样式是保存在前端页面的,通过JsframeWork解析页面,并调用JsEngine的CreateDomNode接口创建Dom节点的同时传递新节点属性和样式。 如果页面中属性样式发生变化,则单独调用SetAttr或SetStyle来更新属性和样式。
- DomNode收到属性和样式之后,会将通用属性保存在Declation类中,将组件特有的属性通过SetSpecialAttr和SetSpectialStyle函数保存在自身。
- DomNode调用对应Component类的Set***函数,将所有属性和样式设置到Component中。
- RenderNode创建后,会调用其Update函数。 该函数内调用对应Component的Get***函数,来接收组件的所有属性和样式。
- 在PipeLine中会遍历每个RenderNode进行布局和绘制,此时,就依据RenderNode中接收的属性和样式,进行布局并绘制。
- 玩转OpenHarmony PID:教你打造两轮平衡车
- 基于 OpenHarmony 的智联北斗海防系统
- 玩转OpenHarmony智能家居:如何实现树莓派“碰一碰”设备控制
- 带你玩转OpenHarmony AI:基于Seetaface2的人脸识别
-
带你玩转OpenHarmony AI:打造智能语音子系统
提示:本文由电子发烧友社区发布,转载请注明以上来源。如需社区合作及入群交流,请添加微信EEFans0806,或者发邮箱liuyong@huaqiu.com。
原文标题:OpenHarmony ACE 代码框架总结
文章出处:【微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
电子发烧友
+关注
关注
33文章
546浏览量
32356 -
开源社区
+关注
关注
0文章
92浏览量
342
原文标题:OpenHarmony ACE 代码框架总结
文章出处:【微信号:HarmonyOS_Community,微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
【鸿蒙】OpenHarmony 4.0蓝牙代码结构简析
OpenHarmony 4.0蓝牙代码结构简析前言 OpenHarmony 4.0上蓝牙仓和目录结构进行一次较大整改,本文基于4.0以上版本对蓝牙代码进行分析,便于读者快速了解和学习
OpenHarmony 之 NAPI 框架介绍
环境中的 JS 变量与方法。 OpenHarmony 中的 NAPI OpenAtom OpenHarmony(以下简称 “OpenHarmony”)应用层基于 javascript 语言开发,而系统
OpenHarmony开源GPU库Mesa3D适配说明
本文档主要讲解在OpenHarmony中,Mesa3D的适配方法及原理说明。
环境说明:
OHOS版本: 适用3.2-Beta3及以上
内核版本: linux-5.10
硬件环境
发表于 12-25 11:38
教程分享!OpenHarmony之NAPI框架介绍
是 C++语言实现的,这些接口可以帮助 C++代码创建 JS 变量,或访问 JavaScript 运行环境中的 JS 变量与方法。 OpenHarmony 中的 NAPI OpenAtom OpenHarmony(以下简称“
OpenHarmony之NAPI框架介绍
的 NAPI
OpenAtom OpenHarmony(以下简称“OpenHarmony”)应用层基于 javascript 语言开发,而系统框架层则基于 C++语言。它们之间需要一个桥梁来实现两种语言
发表于 11-23 15:36
OpenHarmony技术大会 | 编程语言及开发框架分论坛嘉宾金句
点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:OpenHarmony技术大会 | 编程语言及开发框架分论坛嘉宾金句 文章出处:
【开源三方库】Easyui:基于OpenAtom OpenHarmony ArkUI深度定制的组件框架
的轻量、可靠的移动端组件库,它是对OpenAtom OpenHarmony(以下简称“OpenHarmony”) ArkUI进行深度定制的组件框架。Easyui可扩展性较强,可以基于源码进行二次开发,修改
议程直击 | 第二届OpenHarmony技术大会——编程语言及开发框架分论坛
点击蓝字 ╳ 关注我们 开源项目 OpenHarmony 是每个人的 OpenHarmony 原文标题:议程直击 | 第二届OpenHarmony技术大会——编程语言及开发框架分论坛
OpenHarmony AI框架开发指导
2AI引擎代码依赖关系
建议:插件与OpenHarmony SDK在AI引擎指定的路径下进行代码开发
在AI引擎框架的整体规划中,OpenHarmo
发表于 09-19 18:54
Qt For OpenHarmony
专家角色,负责图形框架研究院的技术管理工作。
内容来源
第一届开放原子开源基金会OpenHarmony技术峰会——生态与互联分论坛
正 文 内 容
在全球超过70个行业,8000家公司,100万
发表于 09-15 15:39
开源图形驱动在OpenHarmony上的使用和落地
,OpenHarmony富设备的内核是基于Linux的,故首先介绍下Linux开源驱动的整体架构。整个驱动的架构可以分为2D和3D两个部分,2D部分的比较老的框架是基于X11,而比较新的框架
发表于 08-31 18:07
AMBA 4 ACE和ACE Lite协议校验器用户指南
本书是为系统设计者、系统集成商和验证工程师编写的,他们希望确认设计符合相关AMBA4协议。这可以是ACE或ACE Lite
发表于 08-10 07:01
labview视觉通用平台框架源代码
本帖最后由 1281788316 于 2024-4-19 13:52 编辑
labview通用视觉软件框架,机器视觉通用框架 通用视觉框架源代码。可以参考用于开发常规案例。里面有
发表于 08-03 16:57
九联科技将继续基于OpenHarmony 共建代码
会展中心圆满落幕。 此次论坛群英荟萃,人才集聚,来自产、学、研的各界翘楚1000余人共话开源产业的落地成果和前景展望,助推开源产业全面升级。 九联科技作为“OpenHarmony百人代码贡献单位”“核心
OpenHarmony自动化测试框架开发指南
OpenHarmony 自动化测试框架是 OpenHarmony 提供的支持 JS/TS 语言的单元及 UI 测试框架,支持开发者针对应用接口或系统接口进行单元测试,并且可基于 UI
评论