首页 > 其他分享 >[引]初识ArkTS语言

[引]初识ArkTS语言

时间:2023-11-30 20:33:59浏览次数:47  
标签:ArkTS 语言 预览 HarmonyOS 开发 初识 应用 组件

ArkTS是HarmonyOS优选的主力应用开发语言。

ArkTS围绕应用开发在TypeScript(简称TS)生态基础上做了进一步扩展,继承了TS的所有特性,是TS的超集。

因此,在学习ArkTS语言之前,建议开发者具备TS语言开发能力

 

初识ArkTS语言-学习ArkTS语言-入门-HarmonyOS应用开发

 

在初步了解了ArkTS语言之后,我们以一个具体的示例来说明ArkTS的基本组成。如下图所示,当开发者点击按钮时,文本内容从“Hello World”变为“Hello ArkUI”。

图1 示例效果图

本示例中,ArkTS的基本组成如下所示。

图2 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的声明式开发范式

除此之外,ArkTS扩展了多种语法范式来使开发更加便捷:

  • @Builder/@BuilderParam:特殊的封装UI描述的方法,细粒度的封装和复用UI描述。
  • @Extend/@Style:扩展内置组件和封装属性样式,更灵活地组合内置组件。
  • stateStyles:多态样式,可以依据组件的内部状态的不同,设置不同样式。

 

 

HUAWEI DevEco Studio(获取工具请单击链接下载,以下简称DevEco Studio)是基于IntelliJ IDEA Community开源版本打造,为运行在HarmonyOS和OpenHarmony系统上的应用和服务(以下简称应用/服务)提供一站式的开发平台。

作为一款开发工具,除了具有基本的代码开发、编译构建及调测等功能外,DevEco Studio还具有如下特点:

  • 高效智能代码编辑:支持ArkTS、JS、C/C++等语言的代码高亮、代码智能补齐、代码错误检查、代码自动跳转、代码格式化、代码查找等功能,提升代码编写效率。更多详细信息,请参考编辑器使用技巧
  • 低代码可视化开发:丰富的UI界面编辑能力,支持自由拖拽组件和可视化数据绑定,可快速预览效果,所见即所得;同时支持卡片的零代码开发,降低开发门槛和提升界面开发效率。更多详细信息,请参考使用低代码开发应用/服务
  • 多端双向实时预览:支持UI界面代码的双向预览、实时预览、动态预览、组件预览以及多端设备预览,便于快速查看代码运行效果。更多详细信息,请参考使用预览器预览应用/服务界面效果
  • 多端设备模拟仿真:提供HarmonyOS本地模拟器,支持手机等设备的模拟仿真,便捷获取调试环境。更多详细信息,请参考使用模拟器运行应用/服务

应用/服务开发流程

使用DevEco Studio,只需要按照如下几步,即可轻松开发并上架一个应用/服务到华为应用市场。

 

 

 

一、开发准备

下载HUAWEI DevEco Studio,完成开发工具的安装。开发工具安装完成后,还需要设置开发环境,对于绝大多数开发者来说,直接下载SDK即可启动开发;只有少部分开发者,如在企业内部访问Internet受限,需要设置对应的代理服务器才能下载SDK。具体操作请参考配置开发环境

二、开发应用/服务

DevEco Studio集成了手机、智慧屏、智能穿戴等设备的典型场景模板,可以通过工程向导轻松的创建一个新的工程

接下来还需要定义应用/服务的UI、开发业务功能等编码工作,可以根据HarmonyOS应用开发概述来查看具体的开发过程,通过查看API接口文档查阅需要调用的API接口。

在开发代码的过程中,可以使用预览器查看应用/服务效果,支持实时预览、动态预览、双向预览等功能,使编码的过程更高效。

三、运行、调试和测试应用/服务

应用/服务开发完成后,可以使用真机进行调试(需要申请调测证书进行签名)或者使用模拟器进行调试,支持单步调试、跨设备调试、跨语言调试、变量可视化等调试手段,使得应用/服务调试更加高效。

HarmonyOS应用/服务开发完成后,在发布到应用/服务市场前,还需要对应用进行测试,主要包括漏洞、隐私、兼容性、稳定性、性能等进行测试,确保HarmonyOS应用/服务纯净、安全,给用户带来更好的使用体验。

四、发布应用/服务

HarmonyOS应用/服务开发、测试完成后,需要将应用/服务发布至应用市场,以便应用市场对应用/服务进行分发,普通消费者可以通过应用市场或服务中心获取到对应的HarmonyOS应用/服务。需要注意的是,发布到华为应用市场或服务中心的HarmonyOS应用/服务,必须使用应用市场颁发的发布证书进行签名。

文档声明

HUAWEI DevEco Studio使用指南配套DevEco Studio 3.1.1 Release最新版本。如使用DevEco Studio其它版本,可能存在文档与产品功能界面、操作不一致的情况,请以实际功能界面为准。

标签:ArkTS,语言,预览,HarmonyOS,开发,初识,应用,组件
From: https://www.cnblogs.com/freeliver54/p/17868252.html

相关文章

  • 北京大学 | Video-LLaVA视觉语言大模型:统一输入,同时处理图片和视频数据
    前言 北京大学和其他机构的研究人员近期提出了一种名为Video-LLaVA的视觉语言大模型。该模型的创新之处在于能够同时处理图片和视频作为输入。在处理图片的任务中,该模型展现出了出色的性能,在多个评估榜单中名列前茅,尤其在视频方面取得了令人瞩目的成绩。这项研究的关键点在于关注......
  • 掌握HarmonyOS框架的ArkTs如何管理和共享状态数据
    本文分享自华为云社区《深入理解ArkTs中的AppStorage和LocalStorage》,作者:柠檬味拥抱。ARKTS(ArkTypeScript)是HarmonyOS应用框架的一部分,提供了一种灵活而强大的状态管理机制。在ARKTS中,AppStorage和LocalStorage是两个关键的概念,它们分别用于应用级和页面级的状态共享。通过深......
  • 《初学C语言第11天》
    ////求定积分-----------已给函数接口//#include<stdio.h>//#include<stdlib.h>//#include<math.h>//doublesquare(doublex)//平方//{//  returnx*x;//x^2//}//doublecube(doublex)//立方//{//  returnx*x*x;//x^3//}///*你编写的积分函数嵌入在这里开始*//......
  • R语言贝叶斯模型预测电影评分数据可视化分析
    全文链接:https://tecdat.cn/?p=34421原文出处:拓端数据部落公众号本文使用R语言帮助客户进行了贝叶斯模型预测电影评分,并对数据进行了可视化和分析。文章创建了五个新的特征变量,包括电影类型、导演获奖情况、电影票房、评论数量和影评人数量等,并分析了这些变量对电影评分的影响。......
  • 如何理解C语言中“数组名就是指针”
    定义一个数组:inta[5]={1,2,3,4,5};访问元素5可以通过以下形式的代码:a[4];/*下标运算符,可理解为数组的访问形式*/*(a+4);/*指针的加法运算和解引用,可理解为指针的引用形式*/实际上这两种访问形式是等价的,即X[m]=*(X+m)这里不妨再拓展一下,根据加法交换律,交换两个加数的......
  • R语言拟合改进的稀疏广义加性模型(RGAM)预测、交叉验证、可视化
    全文链接:https://tecdat.cn/?p=34409原文出处:拓端数据部落公众号简介这是一种拟合稀疏广义加性模型(GAM)的新方法。RGAM具有计算可扩展性,并且适用于连续、二进制、计数和生存数据。让我们生成一些数据: Rset.seed(1)n<-100;p<-12mu=rowSums(x[,1:3])+f4+f......
  • bert4vec:自然语言处理的强大工具
    引言在自然语言处理(NLP)领域,句向量的生成和处理是实现文本理解和分析的关键。bert4vec是一个基于预训练模型的句向量生成工具,它提供了一种高效且灵活的方式来处理句子的向量表示。本文将深入探讨bert4vec的功能、特点及其在NLP领域的应用场景。bert4vec简介bert4vec是一个开源项目,旨......
  • 实验5—C语言指针应用编程
    1、实验任务1task1_1源代码1#include<stdio.h>2#defineN534voidinput(intx[],intn);5voidoutput(intx[],intn);6voidfind_min_max(intx[],intn,int*pmin,int*pmax);78intmain(){9inta[N];10intmin,max;1112......
  • 《初学C语言第10天》
    ////------------------------------------------------------------例题1,2//1////给出一百分制成绩,要求输出成绩等级'A'、B、C、D'、E。////90分以上为'A',80~89分为B.70~79分为C,60~69分为D60分以下为E。//#define_CRT_SECURE_NO_WARNINGS1//#include<stdio.h>//int......
  • C语言 主机字节序和网络字节序互换
    #include<stdio.h>#include<arpa/inet.h>intmain(){//10.11.12.13uint32_thost_ip=168496141;uint32_tnetwork_ip=htonl(168496141);//13.12.11.10printf("network_ipis%u\n",network_ip);//10.11.1......