欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > 第五天 初步了解ArkTS和ArkUI

第五天 初步了解ArkTS和ArkUI

2025/2/8 1:45:55 来源:https://blog.csdn.net/dulgao/article/details/145455374  浏览:    关键词:第五天 初步了解ArkTS和ArkUI

初步了解ArkTS和ArkUI,可以从以下几个方面进行概述:

一、ArkTS简介

  1. 定义与关系

    • ArkTS是HarmonyOS(鸿蒙系统)优选的主力应用开发语言。
    • 它基于TypeScript(TS)进行扩展,兼容TS的所有特性,并增加了声明式UI、状态管理等能力,是TS的超集。
  2. 核心特性

    • 声明式UI:ArkTS通过声明式的方式描述UI结构,使开发者能够更简洁、更自然地开发跨端应用。
    • 状态管理:提供了多维度的状态管理机制,支持在组件内、组件间以及全局范围内传递和更新状态。
    • 渲染控制:包括条件渲染、循环渲染和数据懒加载等能力,根据应用状态或数据源动态地渲染UI内容。
  3. 开发范式

    • ArkTS主要采用声明式开发范式,这种范式更接近自然语义的编程方式,有助于提高开发效率和应用性能。

二、ArkUI简介

  1. 定义与功能

    • ArkUI是HarmonyOS应用的UI开发框架,提供了完整的UI开发基础设施。
    • 它包括简洁的UI语法、丰富的UI功能(如组件、布局、动画以及交互事件)以及实时界面预览工具等。
  2. 组件与布局

    • 组件:UI构建与显示的最小单位,ArkUI内置了丰富的多态组件,如Image、Text、Button等,并支持用户自定义组件。
    • 布局:ArkUI提供了多种布局方式,包括弹性布局、列表布局、宫格布局、栅格布局和原子布局等,以满足不同分辨率和设备的适配需求。
  3. 动画与交互

    • 动画:ArkUI支持属性动画、转场动画和自定义动画能力,为UI界面增添动态效果。
    • 交互事件:提供了多种交互能力,默认适配触摸手势、遥控器按键输入、键鼠输入等,并提供了相应的事件回调以便开发者添加交互逻辑。
  4. 开发范式

    • ArkUI针对不同的应用场景和技术背景的开发者提供了两种开发范式:
      • 声明式开发范式:基于ArkTS语言,更适合构建复杂和动态的UI界面。
      • 类Web开发范式:采用经典的HML、CSS、JavaScript三段式开发方式,更符合Web前端开发者的使用习惯。

综上所述,ArkTS和ArkUI共同构成了HarmonyOS应用开发的强大工具链。ArkTS作为应用开发语言,提供了声明式UI描述、状态管理和渲染控制等核心特性;而ArkUI作为UI开发框架,则提供了丰富的组件、布局、动画和交互事件等功能。两者相辅相成,共同助力开发者高效、简洁地开发跨端应用。

示例:简单的Hello World应用

1. 使用ArkTS进行声明式开发

首先,我们创建一个ArkTS文件(例如App.arkts),这个文件将包含我们的应用逻辑和UI描述。

// App.arkts
import { Component, defineComponent } from '@arkui/core';@Component
struct HelloWorld {@State message: string = 'Hello, World!';build() {Column() {Text(this.message).fontSize(24).fontWeight('bold').textAlign('center').margin({ top: '20vp' });}.backgroundColor('#FFFFFF').justifyContent('center').alignItems('center').height('100vh');}
}export default defineComponent(HelloWorld);

在这个示例中,我们定义了一个名为HelloWorld的组件。它包含一个状态message,初始值为'Hello, World!'。在build方法中,我们使用Column布局容器和Text组件来显示这个消息。Column容器设置了背景颜色、居中对齐和占满视口高度的样式。

2. 配置入口文件(可选)

在某些情况下,你可能需要配置一个入口文件来指定你的应用从哪个组件开始渲染。在HarmonyOS中,这通常是通过一个配置文件来完成的(例如index.jsonconfig.json),但在这里我们假设DevEco Studio已经为你处理了这些配置,并且App.arkts是我们的入口组件。

3. 运行应用

在DevEco Studio中,你可以直接运行这个应用。它将启动一个模拟器或连接到真实设备,并在屏幕上显示“Hello, World!”消息。

注意事项
  • 这个示例代码是基于概念性的,实际的ArkTS和ArkUI API可能会有所不同。
  • 在真实的开发环境中,你需要确保已经正确安装了DevEco Studio和HarmonyOS SDK。
  • 你可能还需要配置一些额外的项目设置,如依赖项、签名证书等。
  • 由于ArkTS是TypeScript的超集,它兼容TypeScript的所有语法和特性,因此你可以使用TypeScript的所有高级功能来编写你的应用。

类Web开发范式示例(可选)

如果你更喜欢使用类Web的开发范式,你可以使用HML(Harmony Markup Language)、CSS和JavaScript来构建你的应用。以下是一个简单的示例:

<!-- index.hml -->
<div class="container"><text class="message">{{message}}</text>
</div>
/* index.css */
.container {display: flex;justify-content: center;align-items: center;height: 100vh;background-color: #FFFFFF;
}.message {font-size: 24px;font-weight: bold;text-align: center;margin-top: 20vp;
}
// index.js
export default {data: {message: 'Hello, World!'}
}

在这个类Web开发范式的示例中,我们使用了HML来描述UI结构,CSS来设置样式,JavaScript来管理数据。然而,请注意,在HarmonyOS的实际开发中,你可能需要使用特定的框架或库(如ArkUI的类Web部分)来支持这种开发方式,并且API可能会有所不同。此外,随着HarmonyOS的发展,推荐的开发范式可能会发生变化,因此建议查阅最新的官方文档来获取最准确的信息。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com