鸿蒙编程江湖:HarmonyOS 和 ArkTS 基本概念

鸿蒙开发基础,ArkTs语言-运行你的第一个Hello World ArkTs是目前鸿蒙开发的主要语言,目前鸿蒙的主推模型Stage的新版本(3.1.0(API 9))开发不支持Java和JavaScript了,所以开发鸿蒙应用学习ArkTs是很有必要的。ArkTs是Ts(TypeScript)的扩展,后面的介绍就是介绍ArkTs的特性,Ts部分可以参考:5分钟上手TypeScript · TypeScript中文网 · TypeScript——JavaScript的超集。 阅读详情

本文旨在深入探讨华为鸿蒙HarmonyOS Next系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。

华为鸿蒙 (HarmonyOS) 是华为自主研发的操作系统,旨在构建全场景智慧生态。它支持多种设备形态,包括手机、平板、穿戴设备、汽车等,并通过微内核架构实现模块化设计,保证系统的安全性和可靠性。
鸿蒙系统的架构采用微内核设计,核心功能运行在微内核中,而其他功能模块运行在轻量级守护进程中。这种设计保证了系统的安全性和可靠性,并允许不同模块之间的独立升级。
鸿蒙系统的核心理念是“分布式OS”,它支持多种设备之间的无缝协作,并能够根据不同的设备形态进行适配。此外,鸿蒙系统还采用了“分布式能力”的概念,将计算、存储、网络等能力分布式到各个设备上,实现真正的全场景智慧生态。
ArkTS 是华为为鸿蒙系统开发的声明式编程语言,它基于 TypeScript 构建,并扩展了特定于鸿蒙平台的特性。ArkTS 提供了简洁的语法和丰富的功能,使得开发者可以以更高效的方式开发鸿蒙应用。

HarmonyOS 的架构与核心理念

鸿蒙系统的架构采用微内核设计,核心功能运行在微内核中,而其他功能模块运行在轻量级守护进程中。这种设计保证了系统的安全性和可靠性,并允许不同模块之间的独立升级。
鸿蒙系统的核心理念是“分布式OS”,它支持多种设备之间的无缝协作,并能够根据不同的设备形态进行适配。此外,鸿蒙系统还采用了“分布式能力”的概念,将计算、存储、网络等能力分布式到各个设备上,实现真正的全场景智慧生态。

ArkTS 的基础语法与类型系统

ArkTS 是 TypeScript 的一个扩展版本,它继承了 TypeScript 的语法和类型系统,并添加了一些特定的语法糖和功能。
基础语法

  • ArkTS 支持常见的编程语言特性,例如变量声明、函数定义、控制流语句等。
  • ArkTS 支持模块化开发,可以使用 import 和 export 关键字来导入和导出模块。
  • ArkTS 支持类和接口的定义,可以使用 class 和 interface 关键字来定义类和接口。
    类型系统
  • ArkTS 支持类型注解,可以使用类型注解来指定变量的类型。
  • ArkTS 支持接口和类型守卫,可以使用接口和类型守卫来确保类型安全。
  • ArkTS 支持枚举类型和联合类型,可以使用枚举类型和联合类型来定义更复杂的类型。

鸿蒙开发环境搭建

要开始鸿蒙开发,您需要安装 DevEco Studio 开发工具和鸿蒙 SDK。

  1. 下载并安装 DevEco Studio:您可以从华为官网下载 DevEco Studio 开发工具。
  2. 创建鸿蒙项目:在 DevEco Studio 中创建一个新的鸿蒙项目,选择合适的设备类型和平台版本。
  3. 编写代码:使用 ArkTS 编写鸿蒙应用的代码,并使用 DevEco Studio 的调试工具进行调试。

一个简单的 “Hello World” 应用

以下是一个简单的 “Hello World” 应用的示例代码:

// Index.ets
import { Entry, Component } from '@ohos.arkui.arkui';
import { Text } from '@ohos.arkui.arkui';
@Entry
@Component
struct Index {
  @State message: string = 'Hello World';
  build() {
    Column() {
      Text(this.message)
        .fontSize(24)
        .margin(10)
        .width('100%')
        .height('100%');
    }
  }
}

这段代码定义了一个名为 Index 的组件,并在组件中显示了一条文本消息 “Hello World”。您可以将这段代码保存到一个名为 Index.ets 的文件中,并在 DevEco Studio 中运行该应用,就可以看到 “Hello World” 文本显示在屏幕上。

鸿蒙开发环境搭建

要开始鸿蒙开发,您需要安装 DevEco Studio 开发工具和鸿蒙 SDK。

  1. 下载并安装 DevEco Studio:您可以从华为官网下载 DevEco Studio 开发工具。
  2. 创建鸿蒙项目:在 DevEco Studio 中创建一个新的鸿蒙项目,选择合适的设备类型和平台版本。
  3. 编写代码:使用 ArkTS 编写鸿蒙应用的代码,并使用 DevEco Studio 的调试工具进行调试。

深入学习

  • ArkTS 官方文档:https://developer.huawei.com/consumer/cn/doc/development/arkts/arkts-index-V5
  • 鸿蒙开发文档:https://developer.huawei.com/consumer/cn/doc/development/harmonyos-v5
  • DevEco Studio 官方文档:https://developer.huawei.com/consumer/cn/doc/development/devide/DevEco-Studio

总结

通过以上介绍,您可以了解到华为鸿蒙系统和 ArkTS 编程语言的基本概念和使用方法。鸿蒙系统是一个强大的操作系统,而 ArkTS 是一个功能丰富的编程语言,可以帮助您轻松地开发鸿蒙应用。希望本文能够帮助您入门鸿蒙开发,并开启您的鸿蒙应用开发之旅。

鸿蒙开发TS基础:ArkTS语言之模块、导出、导入、顶层语句、程序入口、ArkUI支持 阅读详情

相关推荐

鸿蒙内核源码分析(挂载目录篇) | 为何文件系统需要挂载

关于文件系统的介绍已经写了三篇,但才刚刚开始,其中的 [文件系统篇] 一定要阅读,用生活中的场景去解释计算机各模块设计的原理和运行机制是整个系列篇最大的特点,计算机文件系统相关概念是非常的多的,若不还原其本质,不跳出这些概念去看问题是很难理解它为什么要弄这么些东东出来让你头大. 反之,如果搞明白了这些概念背后的真相你想忘记它们都很难,问题是经不起追问的, 多追问几个为什么就会离本源越来越近.

maniuT的博客 865

HarmonyOS/OpenHarmony应用开发-ArkTS语言声明式UI描述

HarmonyOS/OpenHarmony应用开发-ArkTS语言声明式UI描述

weixin_69135651的博客 1488

阿里开源最强数字人工具 EchoMimicV2,本地部署(一)

EchoMimicV2是阿里推出的半身人体AI数字人项目,基于参考图片、音频剪辑和手部姿势序列生成高质量动画视频,确保音频内容与半身动作的一致性。现在本地部署,安装体验一下。

缘分天空的专栏 4614

【HarmonyOS开发】ArkTS基础语法及使用(鸿蒙开发基础教程)

ArkTS是HarmonyOS生态的应用开发语言。 ArkTS提供了声明式UI范式、状态管理支持等相应的能力,让开发者可以以更简洁、更自然的方式开发应用。 同时,它在保持TypeScript(简称TS,是一种给 JavaScript 添加特性的语言扩展)基本语法风格的基础上,进一步通过规范强化静态检查和分析,使得在程序运行之前的开发期能检测更多错误,提升代码健壮性,并实现更好的运行性能。

meno的博客 4112

保姆级教程:用Fiddler+夜神模拟器搞定抖音App抓包(附SSL Pinning绕过实战)

本文提供了一套完整的移动端抓包解决方案,详细介绍了如何使用Fiddler和夜神模拟器进行抖音App抓包,并重点讲解了SSL Pinning绕过技术。通过Xposed框架和JustTrustMe模块的组合,实现高效抓包,适用于产品分析、竞品研究和安全测试等场景。

weixin_30855099的博客 421

STM32 HardFault调试:寄存器分析与堆栈回溯实战

HardFault是Cortex-M内核中最关键的不可屏蔽异常,本质是处理器对非法指令执行、内存访问越界、堆栈溢出等底层硬件错误的强制响应。其原理根植于ARMv7-M异常模型,通过自动压栈保存xPSR/PC/LR等核心寄存器实现上下文捕获。技术价值在于为嵌入式系统提供确定性故障归因能力,支撑高可靠工业设备开发。典型应用场景涵盖FreeRTOS任务崩溃定位、DMA中断越界诊断及MPU保护机制验证。本文聚焦STM32平台,深入解析LR寄存器低4位判别堆栈模式、基于MSP/PSP的PC地址提取方法,并结合Keil

weixin_30951515的博客 143

鸿蒙开发 一 (二)、熟悉鸿蒙之剑 ArkTS

鸿蒙开发之,ArkTS 开发语言了解

wangzp的博客 1445

KEGG数据库与KAAS工具:基因功能注释的实用指南

本文提供了使用KEGG数据库与KAAS工具进行基因功能注释的完整实用指南。详细阐述了如何从准备基因或蛋白序列开始,通过KAAS服务器获取KEGG Orthology(KO)编号,并解读注释结果。文章进一步介绍了如何利用KOBAS工具进行通路富集分析,将定性观察转化为定量洞察,并分享了提高注释准确率、处理大数据集及使用API等避坑技巧与高阶方法,为基因组学、转录组学研究者奠定坚实的数据分析基础。

weixin_29292535的博客 390

鸿蒙编程江湖:ArkTS 容器与原生容器在行为上的差异

通过以上介绍,您可以了解到鸿蒙系统中 ArkTS 容器与原生容器的差异,以及 ArkTS 容器在并发中的应用。希望本文能够帮助您掌握鸿蒙系统中的并发编程技术,并开发出更优秀的鸿蒙应用。

same4869的博客 862

NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()

Please use torch.nn.Module.to_empty() instead of torch.nn.Module.to()输出(llama) (base) [root@localhost home]# nvidia-smi Unable to determine the device handle for GPU0000:09:00.0: Unknown Error。这是典型的“孤儿进程”,但它还是。(僵尸进程),占用 GPU 资源。如果进程仍然不消失,并且。,这意味着它的父进程是。

m0_61636632的博客 2096

Titans:谷歌新型神经记忆架构,突破 Transformer 长序列处理的瓶颈

Titans 是谷歌推出的新型神经网络架构,通过神经长期记忆模块突破 Transformer 在处理长序列数据时的瓶颈,支持并行计算,显著提升训练效率。

士多啤梨先生の博客 990

鸿蒙编程江湖:ArkTS中Sendable数据在并发实例间的传递

Sendable 协议定义了 ArkTS 的可共享对象体系及其规格约束。符合 Sendable 协议的数据(以下简称 Sendable 数据)可以在 ArkTS 并发实例间传递。Sendable 数据的特点可序列化:Sendable 数据可以被序列化,以便在并发实例间传递。线程安全:Sendable 数据在并发实例间传递时,保证了数据的线程安全。共享或拷贝:Sendable 数据在并发实例间传递时,可以选择引用传递或拷贝传递。通过以上介绍,您可以了解到鸿蒙系统中 Sendable 数据的传递机制。

same4869的博客 610

打通ZYNQ的任督二脉:AXI_FIFO数据交互全解析

FIFO(First In First Out,先进先出)是一种经典的数据缓冲结构,就像排队买票一样,先来的人先得到服务。时钟域交叉(CDC):连接不同时钟频率的模块数据缓冲:平衡生产者和消费者的速度差异流量控制:防止数据丢失或溢出input clk,// 输入AXI4-Stream接口(从PS到PL)// 输出AXI4-Stream接口(从PL到PS)// 状态指示信号// 定义状态机状态// 数据缓存// 8个深度的缓存// 流水线处理寄存器。

QQ_778132974的博客 304

鸿蒙编程江湖:ArkTS 的多线程与序列化支持

通过本文的探讨,您现在可能对 ArkTS 的多线程和序列化支持有了更为全面的认识。这些高级特性为鸿蒙应用开发提供了强大的性能优化工具,但同时也要求咱们开发者具备更高的技术素养和经验。

same4869的博客 780

解析AI人工智能领域AI芯片的散热技术

当你用ChatGPT写代码、用AI生成高清图片时,背后的AI芯片可能正在“发高烧”——全球TOP500超算的平均功耗已突破10兆瓦,单颗GPU的峰值功耗超过700W(相当于3台家用空调同时运行)。本文将聚焦AI芯片的散热技术,覆盖从基础原理到前沿方案的全链条解析,帮助读者理解“散热为什么比算力更重要”。

AIGC应用创新大全的博客 934

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

鸿蒙编程江湖:I/O 密集型任务处理及 ArkTS 的异步锁机制

通过以上介绍,您可以了解到鸿蒙系统中 I/O 密集型任务的处理方法,以及 ArkTS 的异步锁机制。使用异步编程技术和异步锁机制可以提高 I/O 操作的效率,并避免死锁问题。希望本文能够帮助您掌握鸿蒙系统中的并发编程技术,并开发出更优秀的鸿蒙应用。

same4869的博客 788

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

鸿蒙编程江湖:ArkTS开发综合案例与最佳实践

在掌握了ArkTS的基础知识和高级特性之后,是时候将所学应用于实际项目中,构建一个复杂且高效的鸿蒙应用了。本文将综合前几篇的所有知识点,带领您走过一个完整的应用开发流程,从设计理念到代码实现,再到性能调优,每一步都是最佳实践的体现。通过本篇的综合案例与最佳实践,您应该能够掌握如何将ArkTS的高级特性应用于实际的鸿蒙应用开发中。从设计到实现,再到性能调优,每一步都需要精心规划和不断的实践。希望本文能够为您提供清晰的指导和帮助,让您在鸿蒙应用开发的道路上更进一步。

same4869的博客 807

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

鸿蒙编程江湖:异步编程的优势及 Promise的应用

Promise 定义Promise 是一个对象,它代表了异步操作的结果。Promise 有三种状态:pending(进行中)、fulfilled(已完成)和 rejected(已拒绝)。Promise 使用创建 Promise// 异步操作的代码});使用 then 方法// 处理成功的回调// 处理失败的回调});使用 async/await// 处理结果通过以上介绍,您可以了解到鸿蒙系统中异步编程的两种方式:Promise 和 async/await。

same4869的博客 510

鸿蒙编程江湖:ArkUI 的声明式 UI 编程与状态管理

通过以上介绍,您可能对ArkUI的声明式UI编程和状态管理有了更深入的了解。声明式UI编程不仅简化了代码,还提高了开发效率和应用的性能。希望本文能够帮助您更好地掌握ArkUI,并在鸿蒙应用开发中发挥其强大的功能。

same4869的博客 654

HarmonyOS ArkTS API 24 Record<string, CuisineMeta>明确告诉编译器:每个值都必须是CuisineMeta类型

技术引言HarmonyOS 6.1.1作为华为鸿蒙生态的最新里程碑版本,带来了更为完善的ArkTS语言体系和ArkUI声明式UI框架。在HarmonyOS ArkTS API 24中,开发者可以充分利用、、、、等核心装饰器构建高性能的跨设备应用。本文以"QQ吃货·美食雷达"美食发现App为实战案例,深入剖析一个完整的鸿蒙原生应用从配色系统设计、数据模型构建、纯函数工具层、组件生命周期管理、Builder复用模式到四种弹框交互的完整实现过程。该应用涵盖美食雷达、排行榜、食记、个人中心四大核心场景,包含底部4T

2501_92985290的博客 143

湖光墨蓝下的垂钓江湖:HarmonyOS 三套件融合构建户外渔获全链路应用深度剖析

本文以鸿蒙系统6.1.1为技术底座,基于ArkUI声明式框架,实现“鱼获码头”户外垂钓平台的“一页三套件”复合架构:通过Map Kit实现钓点搜索与双长按交互,Camera Kit集成影随人动与手动对焦控制,Canvas绘制环形鱼种分布与渔获趋势图。三大能力在单一页面深度叠加,结合@State、@Observed等状态管理机制,完成从数据建模到视图渲染的全链路工程实践,展现HarmonyOS在复杂场景下的分布式协同与高效开发能力。

LYQ2583的博客 169

鸿蒙内核源码分析(中断管理篇) | 江湖从此不再怕中断

关于中断部分系列篇将用三篇详细说明整个过程.

maniuT的博客 1143

写鸿蒙 App 很难?你连工具都没装就想放弃了?

DevEco Studio 是鸿蒙的“官方IDE”,和 Android Studio 相似但更友好模拟器和真机都能调试,只需配置一次用 ArkTS 写鸿蒙 App,语法直观,比 Java/Kotlin 轻量第一个 App Hello Harmony 演示了组件结构、状态绑定、事件响应的核心理念。

小白酷爱学编程,欢迎大家一块儿学习~~ 1120

鸿蒙生态凭什么越做越香?[特殊字符]——不是“装个商店”那么简单,你真准备好入场了吗?

本文分享了一位移动开发者转型鸿蒙原生开发的经验总结。作者从应用开发、生态运营和市场拓展三个维度,系统性地梳理了鸿蒙OS开发的关键要点: 应用分发方面强调素材分层、多形态包和小步快跑版本策略,建议善用灰度发布和分布式功能作为卖点。 开发工具推荐模块化架构,提供CI/CD配置示例,列举了账号登录、分布式数据等核心SDK,强调统一接口层设计的重要性。 市场拓展提出聚焦家庭娱乐等具体场景,建议通过预装合作和线下体验等方式展示跨端优势。 社区支持部分倡导开发者主动参与生态建设,通过分享案例和贡献代码影响技术路线。 文

欢迎来到菜鸟不学编程的博客 1222

HarmonyOS5云服务技术分享--账号登录文章整理

​​证书指纹三连击​​:新设备调试/换电脑/证书更新后,必须重新配置指纹​​Token过期处理​​:建议在拦截器里加自动刷新逻辑,用户无感知续期​​华为审核小秘密​​:测试账号要放在"项目设置-测试用户"里,过审率飙升ArkTS作为鸿蒙生态的嫡系语言,在API 12里展现出了惊人的生产力。现在动手集成华为账号登录,不仅能提升用户体验,还能无缝对接AGC的20+扩展服务。如果遇到任何妖魔鬼怪,欢迎在评论区召唤我~期待看到你们用ArkTS创造出惊艳的应用!下期咱们继续,不见不散!🚀。

weixin_42299977的博客 666
上一篇: HarmonyOS Next自定义数据类型的跨应用协作:实现企业级文档管理
下一篇: 鸿蒙编程江湖:并发编程基础与鸿蒙中的任务并发
SameX-4869
博客等级 码龄17年 3354粉丝 657原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值