当前位置: 首页 > news >正文

【HarmonyOS】鸿蒙使用仓颉编程入门

【HarmonyOS】鸿蒙使用仓颉编程入门

一、前言

仓颉,是华为自研的一款面向全场景智能的新一代编程语言,是为鸿蒙量身打造的全场景智能应用编程语言,作为鸿蒙生态中的重要组成部分,旨在支持鸿蒙系统下的全场景应用开发 ,主打“原生智能化、天生全场景、高性能,强安全。

2019年,华为启动仓颉编程语言项目 。2025年6月20华为开发者大会,正式宣布将在7月开源。今天2025年7月1日,仓颉编程语言1.0.0版本正式公布对外下载

在这里插入图片描述

仓颉是一门多范式编程语言,支持函数式、命令式和面向对象等多种范式,包括值类型、类和接口、泛型、代数数据类型、模式匹配、以及高阶函数等特性。

支持类型推断,能够降低开发者类型标注的负担;通过一系列简明高效的语法,能够减少冗余书写、提升开发效率;

语言内置的各种语法糖和宏(macro)的能力,支持开发者基于仓颉快速开发领域专用语言(DSL),构建领域抽象。

二、仓颉编程环境安装

1、首先安装仓颉编程环境:
我们以window环境为例,在官网下载对应的zip压缩包后。在要安装的位置进行解压,就会得到如下内容:
在这里插入图片描述
2、此时我们肯定想,运行bat脚本进行安装:
但是你先别急,我知道你很急。首先我们需要配置环境变量,否则点击运行也没有效果。

新增CANGJIE_HOME环境变量,值为解压包根目录:
在这里插入图片描述
在Path环境变量中新增如下:
在这里插入图片描述
3、之后运行bat安装脚本后,我们cmd输入版本命令进行环境检查:

cjc -v 输出了仓颉编译器版本信息,表示已经成功安装了仓颉工具链。

在这里插入图片描述

cjpm run命令包含了编译和运行两个步骤。

4、创建仓颉项目,运行HelloWorld:
只需要使用仓颉提供的两句命令即可轻松实现,首先我们创建项目文件件cangjie_demo,在当前文件夹路径执行cmd命令如下:


// 初始化示例项目
cjpm init

在这里插入图片描述


// 运行
cjpm run

在这里插入图片描述

5、项目文件介绍:

编译时,会在应用根目录下生成一个cjpm.lock文件及target目录,其中target目录内含构建好的可执行文件。
在这里插入图片描述
其中src就是仓颉入口代码执行文件:
mian.cj

package cangjie_demomain(): Int64 {println("hello world")return 0
}

三、鸿蒙中如何使用仓颉?

1、申请公测
仓颉在公开测试阶段,体验 HarmonyOS 应用开发的仓颉插件,需要申请公测权限。

进入仓颉开发者预览版招募报名页面,单击 ”立刻报名“ 进入报名页面,并填写报名信息。

2、下载仓颉插件
审核通过后,去下载中心,即可查看到相关插件,将插件下载到本地:
需要注意插件和IDE的配套关系(DevEco Studio-Cangjie Plugin 5.0.13.210 Canary 版本配套 DevEco Studio 5.0.5 Release 发布)
在这里插入图片描述
3、在IDE中安装下载到本地的插件
在File-setting-选择Plugin-本地离线安装(install Plugin from Disk)

在这里插入图片描述
在这里插入图片描述
安装完成后,点击重启IDE即可使用仓颉。

4、创建仓颉示例项目:
File-New-Create Project,创建仓颉示例空项目:
在这里插入图片描述
5、仓颉项目运行效果和代码示例:
在这里插入图片描述
我们可以看到,仓颉编码比ArkTS写鸿蒙的代码更少并且更加简洁:

(不过一堆导包,我真是有点绷不住。OvO)

package ohos_app_cangjie_entryinternal import ohos.base.LengthProp
internal import ohos.component.Column
internal import ohos.component.Row
internal import ohos.component.Button
internal import ohos.component.Text
internal import ohos.component.CustomView
internal import ohos.component.CJEntry
internal import ohos.component.loadNativeView
internal import ohos.state_manage.SubscriberManager
internal import ohos.state_manage.ObservedProperty
internal import ohos.state_manage.LocalStorage
import ohos.state_macro_manage.Entry
import ohos.state_macro_manage.Component
import ohos.state_macro_manage.State
import ohos.state_macro_manage.r@Entry
@Component
class EntryView {@Statevar message: String = "Hello Cangjie"func build() {Row {Column {Button(message).onClick {evt => AppLog.info("Hello Cangjie")}.fontSize(40).height(80)}.width(100.percent)}.height(100.percent)}
}

需要注意的是目前,仅支持HUAWEI Mate60 Pro ALN-AL00机型。

http://www.dtcms.com/a/264144.html

相关文章:

  • 基于Halcon平台的常规OCR与深度OCR性能对比分析
  • 设计模式(行为型)-访问者模式
  • python训练day46 通道注意力
  • 【kernel8】spi协议,验证,模型,设备树处理,spidev,衍生协议
  • AI人工客服实战指南:基于大模型构建生产级智能对话系统
  • Hadoop、Spark、Flink 三大大数据处理框架的能力与应用场景
  • ESP32-S3开发板深度评测:AI语音识别与图像处理全面解析
  • C++ 第四阶段 STL 容器 - 第九讲:详解 std::map 与 std::unordered_map —— 关联容器的深度解析
  • Springboot整合高德地图
  • NeurIPS-2023《A Definition of Continual Reinforcement Learning》
  • 基于GD32 MCU的IAP差分升级方案
  • 迎战 AI Overviews:SEO 不被淘汰的实战策略
  • SpringBoot全局异常详解
  • Electron 应用打包与分发:从开发到交付的完整指南
  • 多容器应用与编排——AI教你学Docker
  • Java-String类静态成员方法深度解析
  • AR 地产互动沙盘:为地产沙盘带来变革​
  • OpenCV-Python Tutorial : A Candy from Official Main Page(二)
  • 设备管理的重要性:企业数字化浪潮下的核心命题
  • 企业上网行为管理:零信任安全产品的对比分析
  • Linux基本命令篇 —— grep命令
  • 防 XSS和CSRF 过滤器(Filter)
  • go语言安装达梦数据完整教程
  • JVM 中的垃圾回收算法及垃圾回收器详解
  • 【仿muduo库实现并发服务器】Connection模块
  • CentOS 8中 更新或下载时报错:为仓库 ‘appstream‘ 下载元数据失败 : Cannot prepare internal
  • 02.SpringBoot常用Utils工具类详解
  • 从马赛克到色彩错乱:一次前景图像处理异常的全流程踩坑记录
  • Python实例题:基于 Python 的简单爬虫与数据可视化
  • 【IP 潮玩行业深度研究与学习】