HDC2021技术分论坛:HarmonyOS低代码开发介绍
作者:sunyuhui,wangxiaoyan,华为2012实验室软件IDE专家
什么是低代码开发?低代码开发主要特点有哪些?如何利用低代码开发原子化服务?本文带你一探究竟~
一、什么是HarmonyOS低代码开发?
低代码开发,顾名思义,就是用更少的代码量,完成更高效的应用交付。低代码开发让更多的人可以参与到应用程序开发当中,不仅是具有专业编程能力的程序员,非技术背景的业务人员同样可以构建应用;对于大型企业来讲,低代码开发还可以降低IT团队培训、技术部署的初始成本。
二、HarmonyOS低代码开发界面介绍
如图1所示,低代码开发界面由UI控件栏、组件树、功能面板、画布、属性样式栏组成。

图1 低代码开发界面
① UI控件栏:可以将相应的组件选中并拖动到画布(Canvas)中,实现控件的添加。
② 组件树:在低代码开发界面中,可以方便开发者直观地看到组件的层级结构、摘要信息以及错误提示。开发者可以通过选中组件树中的组件(画布中对应的组件被同步选中),实现画布内组件的快速定位;点击组件后的图标,可以隐藏/显示相应的组件。
③ 功能面板:包括常用的画布缩小放大、撤销、显示/隐藏组件虚拟边框、设备切换、模式切换、可视化布局界面一键转换为hml和css文件等。
④ 画布:开发者可在此区域对组件进行拖拽、拉伸等可视化操作,构建UI界面布局效果。
⑤ 属性样式栏:选中画布中的相应组件后,在右侧属性样式栏可以对该组件的属性样式进行配置。
更多低代码开发详情请参考官网:
https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide-low-code-0000001158284713
三、HarmonyOS低代码开发的主要特点
HarmonyOS低代码开发利用可视化“拖拉拽”的开发方式替代传统的编码开发,免去了开发人员手动编写平台相关代码,减轻了非技术开发人员的压力,通过编写少量代码即可完成UI界面的开发,可有效降低开发者的上手成本并提升开发者构建UI界面的效率。
接下来我们一起看看HarmonyOS低代码开发平台有哪些特点:
1. 丰富的组件和模板
如图2所示,低代码开发是基于一个个组件的,目前已支持20个组件,同时IDE还提供了一系列常用场景下的模板,帮助开发者快速上手。

图2 丰富的组件和模板
2. 高效的可视化设计
HarmonyOS低代码开发针对UI界面开发提供了一整套的可视化设计工具。
(1)拖拽组件时显示辅助条
如图3所示,当开发者拖拽ListItem组件时,只有移动到配套的List组件中,才会出现可以放置组件的辅助条,避免组件错配问题。开发者在对组件“拖拉拽”时会自动生成代码,减少了开发者在代码编写中常见的问题,比如拼写错误、标签闭环等。

图3 组件拖拽
(2)缩放和参数调整。
如图4所示,可以直接拖拽组件实现组件缩放,也可以如图5通过属性栏来给每个组件做详细的参数配置。

图4 组件缩放

图5 参数调整
(3)其他功能
HarmonyOS低代码开发支持复制、剪切、粘贴、撤销、重做等常用的功能。
针对前端开发常用的颜色调整,HarmonyOS低代码开发提供了一个颜色选择器,方便开发者对组件或字体的颜色等作出调整,还会记录历史选用过的颜色。
针对image组件,或者其他组件的背景图片,HarmonyOS低代码开发提供了图片资源选择器,方便开发者选择图片,避免手动输入图片文件路径的麻烦。
3. 所见即所得
HarmonyOS低代码开发提供所见即所得的能力,如图6所示,当开发者在低代码编辑器上修改时,所看到的效果和预览器上的效果相同,这样开发者就无需频繁地在代码与预览之间切换,只需专注于前端页面的开发,更加高效便捷。

图6 所见即所得
4. 多设备开发
针对HarmonyOS面向多设备的特性,低代码编辑器还支持多屏流转、多端部署。如图7所示,开发者在低代码开发平台可以非常方便地进行多设备开发及横竖屏切换。同时,开发者也可以选择针对某一个设备的显示效果以可视化的形式进行调整,而不影响到其他设备,极大提高了多设备页面开发的效率。

图7 多设备开发
5. 逻辑解析和关联
在视觉页面调整完成后,如果想让UI界面具有动态化能力,就必须对其中的数据、事件进行绑定。如图8所示,低代码开发平台复用了HarmonyOS应用开发框架的接口,自动分析开发者在代码中编写的数据与事件,以便让开发者对组件进行数据和事件绑定,让页面真正能动态化起来。

图8 逻辑解析和关联
四、HarmonyOS低代码开发示例
接下来给大家演示用低代码开发一个运动健康页面的原子化服务:
(由于视频无法上传,附上视频下载地址,请大家点击链接、下载后观看:
看完视频,是不是觉得超简单?只需通过“拖拉拽”就可以轻松完成UI界面开发,就算是没有代码基础的小白也可以轻松上手,还在等什么,赶紧打开IDE快速开发你的UI界面吧。
HarmonyOS低代码开发未来还将支持自定义组件,更多功能特性,敬请期待!

HDC2021技术分论坛:HarmonyOS低代码开发介绍的更多相关文章
- HDC2021技术分论坛:如何高效完成HarmonyOS分布式应用测试?
作者:liuxun,HarmonyOS测试架构师 HarmonyOS是新一代的智能终端操作系统,给开发者提供了设备发现.设备连接.跨设备调用等丰富的分布式API.随着越来越多的开发者投入到Harmon ...
- HDC2021技术分论坛:“积木拼装”,HarmonyOS弹性部署大揭秘!
作者:peitaiyi,华为终端OS产品交付专家 HarmonyOS是一款面向万物互联时代的.全新的分布式操作系统.在传统的单设备系统能力基础上,HarmonyOS提出了基于同一套系统能力.适配多种终 ...
- HDC2021技术分论坛:组件通信、硬件池化,这些创新技术你get了吗?
作者:ligang 华为分布式硬件技术专家,sunbinxin 华为应用框架技术专家 HarmonyOS是一款全新的分布式操作系统,为开发者提供了元能力框架.事件通知.分布式硬件等分布式技术,使能开发 ...
- HDC2021技术分论坛:异构组网如何解决共享资源冲突?
作者:lijie,HarmonyOS软总线领域专家 相信大家对HarmonyOS的"超级终端"比较熟悉了.那么,您知道超级终端场景下的多种设备在不同环境下是如何组成一个网络的吗?这 ...
- HDC2021技术分论坛:进程崩溃/应用卡死,故障频频怎么办?
作者:jiwenqiang,DFX技术专家 提到开发一个产品,我们通常首先想到的是要实现什么样的功能,但是除了功能之外,非功能属性也会很大程度上影响一个产品的体验效果,比如不定时出现的应用卡死.崩溃 ...
- 从表单驱动到模型驱动,解读低代码开发平台的发展趋势 ZT
原文地址:https://www.grapecity.com.cn/blogs/read-the-trends-of-low-code-development-platforms 随着社会数字化进程的 ...
- 为企业应用开发提速,写给企业IT部门的低代码开发基础知识
简介:应用程序开发长期以来一直是IT部门和业务部门面临的问题. IT部门总是被新的应用程序需求弄得不堪重负.他们不可能完成业务部门想要完成的每一个项目. 同时,业务部门的用户厌倦了等待,并开始完全绕过 ...
- APICloud发布低代码开发平台
云原生的出现,致使传统IT模式正在集中向云架构.云开发转型,其中在企业业务的互联网化.数字化进程中尤为突出,并衍生出“敏捷开发”.“快速迭代”的刚性需求.面对双模IT,如何打造全新的IT团队与模式?并 ...
- 低代码开发LCDP,Power Apps系列 - 新建泰勒创新中心门户案例
低代码简介 上世纪八十年代,美国就有一些公司和实验室开始了可视化编程的研究,做出了4GL"第四代编程语言",到后来衍生成VPL"Visual Programming La ...
- 低代码开发LCDP,Power Apps系列 - 搭建入职选购电脑设备案例
低代码简介 上世纪八十年代,美国就有一些公司和实验室开始了可视化编程的研究,做出了4GL"第四代编程语言",到后来衍生成VPL"Visual Programming La ...
随机推荐
- 【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
问题描述 根据以下DockerFile文件,创建了一个ASP.NET Core的 helloworld 镜像,通过监听3721端口来接受请求. # 1. 指定编译和发布应用的镜像 FROM mcr.m ...
- Android drawable与mipmap的区别(android资源文件放置位置)
1.Drawable Android 把可绘制的对象抽象为Drawable,不同的图形图像代表着不同的darwable类型, 通常我们在代码中不会直接接触drawable实现类的,是由android ...
- Android---Android 开发四大组件
Android 应用程序组件 应用程序组件是一个Android应用程序的基本构建块.这些组件由应用清单文件松耦合的组织.AndroidManifest.xml描述了应用程序的每个组件,以及他们如何交互 ...
- Java 内部类 注意点
1 package com.bytezreo.innerclass2; 2 3 /** 4 * 5 * @Description 内部类 注意点 6 * @author Bytezero·zhengl ...
- MySQL基础篇快速记忆和查询
查询 语法: SELECT 标识选择哪些列 FROM 标识从哪个表中选择 去重(Distinct) 在SELECT语句中使用关键字DISTINCT去除重复行 SELECT DISTINCT depar ...
- iptables五表五链及对应实例
iptables是Linux系统上用于配置网络包过滤规则的工具,它使用表(tables)和链(chains)来组织规则.以下是iptables中的五表五链及其对应的实例说明: 五表 filter表:默 ...
- 实时云渲染:流式传输 VR 和 AR 内容
想象一下无需专用的物理计算机,甚至无需实物连接,就能获得高质量的 AR/VR 体验是种什么样的体验? 过去,与 VR 交互需要专用的高端工作站,并且根据头显.壁挂式传感器和专用的物理空间.VR 中的复 ...
- 【UE虚幻引擎】手把手教学,UE新手打包全攻略!
UE虚幻引擎是一款强大的3D实时开发工具,可用于游戏开发.建筑及汽车可视化.影视内容创作.广播及现场活动制作.培训及仿真模拟以及其他实时应用.在UE实际开发过程中,新手工程师可能会遇到总是打包失败的情 ...
- 计算机网络-DNS以及FastGitHub
前言 你是否观察到过这种现象,在访问Github时,有的时候能正常访问,有的时候再次刷新就访问不了,那么能不能有什么办法能一直访问.答案是有,就是在DNS层面能保证一直稳定获取可用并且快速的IP,这就 ...
- 忘记Mysql密码怎么办
1.打开常用的Mysql管理工具 2.这里只是用Navicat举个例子 3.打开mysql数据库 修改密码为123456 update user set authentication_string=p ...