HarmonyOS 的应用开发语言:ArkTS

本心、输入输出、结果

文章目录

  • HarmonyOS 的应用开发语言:ArkTS
    • 前言
      • ArkTS 产生背景
      • ArkTS 语言特点
        • ArkTS 基本语法
        • ArkTS 声明式 UI
        • ArkTS 状态管理
        • ArkTS 渲染控制
      • ArkTS 轻量化并发机制
      • ArkTS 相关文档
      • 花有重开日,人无再少年
      • 实践是检验真理的唯一标准

HarmonyOS 的应用开发语言:ArkTS


编辑:简简单单 Online zuozuo
地址:https://blog.csdn.net/qq_15071263

个人简介 : 简简单单Online zuozuo,目前主要从事 Java 相关工作,商业方向为 B、G 端,主要使用Java、Python 进行日常开发,喜欢探索各个方面的内容,对很多的方向、内容感兴趣 :目前对 AIGC、云计算、物联网方向感兴趣

未闻万里蓬莱,而窥先圣遗智。故,以此生筑梦,奔而逐之;以泰山之伟,攀而登之;以静雅素心,处世为人。

欢迎有兴趣的朋友相互交流,共同成长。微信: tja6288 商务合作/资料获取/技术交流


如果觉得本文对你有帮助,欢迎点赞、收藏、评论

前言

ArkTS是HarmonyOS应用开发语言。它在保持TypeScript(简称TS)基本语法风格的基础上,对TS的动态类型特性施加更严格的约束,引入静态类型

同时,提供了声明式UI、状态管理等相应的能力,让开发者可以以更简洁、更自然的方式开发高性能应用

在这里插入图片描述

在这里插入图片描述

ArkTS 产生背景

面向万物互联时代,华为提出一次开发多端部署、可分可合自由流转、统一生态原生智能三大应用与服务开发理念,针对多设备、多入口、服务可分可合等特性,提供多种能力协助开发者降低开发门槛,同时HarmonyOS与OpenHarmony统一生态。

HarmonyOS基于JS/TS语言体系,构建了全新的声明式开发语言ArkTS。除了兼容JS/TS语言生态,ArkTS扩展了声明式UI语法和轻量化并发机制

在这里插入图片描述

ArkTS 语言特点

ArkTS 基本语法
  • 装饰器: 用于装饰类、结构、方法以及变量,并赋予其特殊的含义。如上述示例中@Entry、@Component和@State都是装饰器,@Component表示自定义组件,@Entry表示该自定义组件为入口组件,@State表示组件中的状态变量,状态变量变化会触发UI刷新。
  • UI描述:以声明式的方式来描述UI的结构,例如build方法中的代码块。
  • 自定义组件:可复用的UI单元,可组合其他组件,如上述被@Component装饰的struct Hello。
  • 系统组件:ArkUI框架中默认内置的基础和容器组件,可直接被开发者调用,比如示例中的Column、Text、Divider、Button。
  • 属性方法:组件可以通过链式调用配置多项属性,如fontSize、width、height、backgroundColor等。
  • 事件方法:组件可以通过链式调用设置多个事件的响应逻辑,如跟随在Button后面的onClick。
ArkTS 声明式 UI
  1. 创建组件
  2. 配置属性
  3. 配置事件
  4. 配置子组件
ArkTS 状态管理
  • 状态变量:被状态装饰器装饰的变量,改变会引起UI的渲染更新。
  • 常规变量:没有状态的变量,通常应用于辅助计算。它的改变永远不会引起UI的刷新。
  • 数据源/同步源:状态变量的原始来源,可以同步给不同的状态数据。通常意义为父组件传给子组件的数据。
  • 命名参数机制:父组件通过指定参数传递给子组件的状态变量,为父子传递同步参数的主要手段。示例:CompA: ({ aProp: this.aProp })。
  • 从父组件初始化:父组件使用命名参数机制,将指定参数传递给子组件。本地初始化的默认值在有父组件传值的情况下,会被覆盖。
  • 初始化子节点:组件中状态变量可以传递给子组件,初始化子组件对应的状态变量。示例同上。
  • 本地初始化:变量声明的时候赋值,作为初始化的默认值。示例:@State count: number = 0。
ArkTS 渲染控制

ArkUI 通过自定义组件的build函数和@builder装饰器中的声明式UI描述语句构建相应的UI。

在声明式描述语句中开发者除了使用系统组件外,还可以使用渲染控制语句来辅助UI的构建,这些渲染控制语句包括控制组件是否显示的条件渲染语句,
基于数组数据快速生成组件的循环渲染语句以及针对大数据量场景的数据懒加载语句。 [

在这里插入图片描述

在这里插入图片描述

ArkTS 轻量化并发机制

在这里插入图片描述

在这里插入图片描述

ArkTS 相关文档

ArkTS 语言指南

ArkTS 开发工具 HUAWEI DevEco Studio

ArkUI

ArkTS

在这里插入图片描述

花有重开日,人无再少年

在这个充满困难和挑战的时期内,我们依然应该保持积极向上,放下遥不可及的欲望,平凡的普通人也可以成就自己的小梦想

在这个充满变化和无限可能的世界里,每一天都是新的开始。让我们拥抱今天,以积极乐观的心态去面对生活的挑战和机遇。

无论我们遇到什么困难,都要相信自己的力量和智慧,勇敢地迎接挑战。因为每一次的克服和超越,都将使我们的生命更加丰富多彩。

我们要学会欣赏生活中的美好事物,用感恩的心去珍惜所拥有的一切。这样,我们就会发现,快乐其实就在我们的身边,时时刻刻陪伴着我们。

让我们保持对未来的信心和热情,勇敢地追求自己的梦想。无论路途多么艰辛,只要我们坚持不懈,终将实现自己的目标。

让我们一起相信,只要我们心中充满阳光,就没有什么能够阻挡我们前进的步伐。让我们用积极乐观的心态,书写属于我们的精彩人生!

实践是检验真理的唯一标准

✅ 🥶 😎 😟 😲 😰 😭 😓
🔔️ 😂 😅 😍 😘 😚 😜 🤢
👿 💀 👽 👾 😻 💕 💔 💯
💦 💤 🤝 🙍‍♂️ 🙍 🍊 🍉 🍏

感谢亲的点赞、收藏、评论,一键三连支持,谢谢

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/269510.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高通平台开发系列讲解(USB篇)MBIM协议详解

文章目录 一、MBIM协议二、MBIM 消息类型三、基本控制消息构成3.1、MBIM OPEN MSG FORMAT3.2、MBIM CLOSE MSG FORMAT3.3、MBIM_COMMAND_MSG3.4、MBIM_COMMAND_DONE3.5、MBIM_INDICATE_STATUS_MSG四、MBIM Message(UUID+CID)4.1、UUID_BASIC_CONNECT

网络服务IP属地发生变化的原因有哪些?

近期,许多用户发现自己的网络服务IP属地发生了变化。原本固定的IP地址不再是静态的,而是发生了变动。这一现象引起了广大用户的关注和疑惑,对网络服务的使用和信息安全产生了影响。为了解决用户的疑虑,我们对此现象进行了深入探究…

循环神经网络-1

目录 1 数据集构建 1.1 数据集的构建函数 1.2 加载数据并进行数据划分 1.3 构造Dataset类 2 模型构建 2.1 嵌入层 2.2 SRN层 2.3 线性层 2.4 模型汇总 3 模型训练 3.1 训练指定长度的数字预测模型 3.2 多组训练 3.3 损失曲线展示 4 模型评价 总结 参考文献 循环神经网络&…

【FPGA/verilog -入门学习11】verilogTestbench中的文本文件写入,读出,打印等操作

本文参考:Verilog中的系统任务(显示/打印类)--$display, $write,$strobe,$monitor-CSDN博客 Verilog:parameter、localparam的区别和用法-CSDN博客 Verilog的系统任务----$fopen、$fclose和$fd…

IDEA 出现问题:git提交commit时Perform code analysis卡住解决方案

问题 git提交commit时Perform code analysis卡住很久 解决方案一 1、打开 IntelliJ IDEA,进入 File -> Settings(或者使用快捷键 CtrlAltS)。 2、在弹出的 Settings 窗口中,找到 Version Control -> Commit Dialog 选项…

Chrome谷歌浏览器安装VUE调试插件

访问gitee的vue-devtools 并下载 gitee地址:https://gitee.com/zhang_banglong/vue-devtools 也可以访问git的地址:https://github.com/vuejs/devtools 解压,放到自己的目录下 打开控制面板(管理员),进入…

C语言之函数

目录 main函数和库函数 什么是函数 函数定义 函数头(function header) 1.返回类型(return type) 2.函数名(function name) 3.形参声明(parameter type list) 函数体&#xff…

使用Nacos作为配置中心

Nacos配置中心简介 首先我们来看一下,微服务架构下关于配置文件的一些问题: 配置文件相对分散。在一个微服务架构下,配置文件会随着微服务的增多变的越来越多,而且分散 在各个微服务中,不好统一配置和管理。配置文件无法区分环境…

Day18JAVA

异常 异常:异常就是代表程序出现的问题 误区:不是让我们以后不出现异常,而是程序出现了异常之后,该如何处理 import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;public class Test {public static void main(String[] args) throw…

go-libp2p-example-chat学习

1.案例下载 https://github.com/libp2p/go-libp2p/tree/master/examples 2.chat案例 这段代码是一个简单的基于libp2p的P2P聊天应用程序的示例。它允许两个节点通过P2P连接进行聊天。前提是: 两者都有私有IP地址(同一网络)。至少其中一个…

基于ssm校园美食交流系统论文

目 录 摘 要 1 前 言 3 第1章 概述 4 1.1 研究背景 4 1.2 研究目的 4 1.3 研究内容 4 第二章 开发技术介绍 5 2.1Java技术 6 2.2 Mysql数据库 6 2.3 B/S结构 7 2.4 SSM框架 8 第三章 系统分析 9 3.1 可行性分析 9 3.1.1 技术可行性 9 3.1.2 经济可行性 10 3.1.3 操作可行性 10…

python:五种算法(GA、OOA、DBO、SSA、PSO)求解23个测试函数(python代码)

一、五种算法简介 1、遗传算法GA 2、鱼鹰优化算法OOA 3、蜣螂优化算法DBO 4、麻雀搜索算法SSA 5、粒子群优化算法PSO 二、5种算法求解23个函数 (1)23个函数简介 参考文献: [1] Yao X, Liu Y, Lin G M. Evolutionary programming made…