news 2026/5/14 0:40:40

仓颉编程语言完整入门指南:从零开始快速上手

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
仓颉编程语言完整入门指南:从零开始快速上手

仓颉编程语言完整入门指南:从零开始快速上手

【免费下载链接】CangjieCommunity为仓颉编程语言开发者打造活跃、开放、高质量的社区环境项目地址: https://gitcode.com/Cangjie/CangjieCommunity

仓颉编程语言是华为推出的面向全场景智能的新一代编程语言,具有原生智能化、天生全场景、高性能和强安全等特征,适用于端云各种场景下的应用程序开发。无论你是想要开发PC应用、服务器程序还是鸿蒙原生应用,仓颉都能为你提供出色的开发体验。

🚀 快速开始:环境安装与配置

通用版本安装步骤

仓颉通用版本工具链适配三大系统平台(支持 arm64 与 x86-64 架构),可用于开发 PC 或服务器上的应用程序。

Windows系统安装:

  1. 访问仓颉官网下载页面
  2. 选择长期稳定版本(LTS)或稳定版本(STS)
  3. 下载.exe安装包并运行安装向导
  4. 勾选"添加环境变量"选项完成安装

macOS系统安装:

brew tap cangjie-lang/cangjie brew install cangjie

Linux系统安装:

curl -fsSL https://cangjie-lang.cn/install.sh | bash

鸿蒙版本安装指南

仓颉鸿蒙版本工具链用于开发鸿蒙原生应用,目前处于内测及试点商用阶段。

安装步骤:

  1. 申请开通内测权限
  2. 下载DevEco仓颉插件
  3. 在对应版本的DevEco Studio中安装插件
  4. 重启IDE完成配置

验证安装成功

安装完成后,打开终端验证仓颉是否安装成功:

cj --version cjpm --help

💻 第一个仓颉程序:Hello World

创建新项目

使用仓颉包管理工具(cjpm)创建你的第一个项目:

cjpm init my_first_cangjie_project cd my_first_cangjie_project cjpm build

编写基础代码

打开main.cj文件,输入以下代码:

func main() { print("Hello, 仓颉编程语言!") }

运行程序

在项目目录下执行:

cjpm run

你将看到终端输出:Hello, 仓颉编程语言!

🔧 开发环境配置详解

VSCode开发环境配置

对于通用版本开发,推荐使用VSCode作为代码编辑器:

  1. 安装VSCode仓颉语言扩展插件
  2. 配置代码补全和语法高亮
  3. 设置调试环境

DevEco Studio配置

对于鸿蒙应用开发,使用DevEco Studio:

  1. 确保已安装鸿蒙SDK
  2. 配置鸿蒙设备模拟器或真机调试环境

📚 核心语法快速掌握

基础数据类型

仓颉语言提供了丰富的基础数据类型:

// 整型 age: Int = 25 // 浮点型 price: Float = 99.99 // 字符串 name: String = "仓颉开发者" // 布尔类型 is_available: Bool = true

集合类型操作

// 动态数组 numbers: Array[Int] = [1, 2, 3, 4, 5] // 键值对集合 user_info: Map[String, String] = { "name": "张三", "email": "zhangsan@example.com" } // 无序不重复集合 unique_ids: Set[Int] = {1, 2, 3, 4, 5}

函数定义与调用

// 函数定义 func add(a: Int, b: Int): Int { return a + b } // 函数调用 result: Int = add(10, 20) print(result) // 输出:30

🔄 并发编程入门

轻量级线程使用

仓颉语言内置了强大的并发支持:

func main() { thread := Thread.new { for i in 1..5 { print("线程执行: ${i}") sleep(1000) // 休眠1秒 } } thread.start() // 主线程继续执行其他任务 print("主线程继续执行") }

🎯 项目实战:构建完整应用

创建控制台应用

让我们创建一个简单的计算器应用:

func calculate(operation: String, a: Float, b: Float): Float? { match operation { case "+" => return a + b case "-" => return a - b case "*" => return a * b case "/" => if b != 0 { return a / b } else { return null } case _ => return null } } func main() { result := calculate("+", 10.5, 20.3) if result != null { print("计算结果: ${result}") } else { print("计算错误") } }

鸿蒙UI应用开发

对于鸿蒙应用开发,仓颉提供了丰富的UI组件:

@Component struct MainPage { @State count: Int = 0 build() { Column({ space: 20 }) { Text("仓颉鸿蒙应用") .fontSize(50) .fontWeight(FontWeight.Bold) Button("点击计数") { this.count += 1 } Text("计数: ${this.count}") .fontSize(30) } .width('100%') .height('100%') } }

🤝 参与社区贡献

如何提交代码贡献

仓颉社区欢迎所有开发者参与贡献,以下是标准的贡献流程:

  1. Fork仓库到你的账户
  2. 创建功能分支
  3. 编写代码和测试
  4. 提交Pull Request

贡献规范要点

  • 必须关联Issue:通过#I+五位Issue ID格式
  • 门禁触发规则:分单仓/多仓、构建类型
  • 合入条件:需要指定评审人数、禁止自合入、流水线任务成功

📖 学习资源推荐

官方文档与教程

  • 仓颉编程语言官网:通用工具链,学习资源,在线体验
  • 鸿蒙开发者网站仓颉主页:鸿蒙应用开发工具链
  • 仓颉开源三方库:社区认证的高质量开源三方库

社区活动参与

  • Workshop:每月举办的开发者线上交流会
  • 技术分享:不定期举办的技术大会分享
  • 开源毕设:高校开源项目课题

🎉 进阶学习路径

掌握核心概念

  1. 数据类型与变量:理解仓颉的类型系统
  2. 函数与模块:学会代码组织和复用
  3. 并发编程:掌握多线程和异步处理
  4. 错误处理:学习异常处理和错误恢复

项目实战建议

  • 从简单的控制台应用开始
  • 逐步尝试Web应用开发
  • 挑战鸿蒙原生应用开发
  • 参与开源项目贡献

仓颉编程语言作为新一代智能编程语言,为开发者提供了强大的工具链和丰富的生态系统。通过本指南的学习,相信你已经掌握了仓颉语言的基础知识,可以开始你的仓颉编程之旅了!

【免费下载链接】CangjieCommunity为仓颉编程语言开发者打造活跃、开放、高质量的社区环境项目地址: https://gitcode.com/Cangjie/CangjieCommunity

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 11:23:23

Windows命令行安装器Scoop终极指南:告别繁琐软件管理

Windows命令行安装器Scoop终极指南:告别繁琐软件管理 【免费下载链接】Scoop A command-line installer for Windows. 项目地址: https://gitcode.com/gh_mirrors/scoop4/Scoop 还在为Windows软件安装的种种烦恼而头疼吗?😩 那些没完没…

作者头像 李华
网站建设 2026/5/1 2:13:57

11个专业级Project模板助你项目管理事半功倍

11个专业级Project模板助你项目管理事半功倍 【免费下载链接】Project软件实用模板MPP文件11个场景模板 本仓库提供了一个名为“Project软件实用模板(MPP文件) 11个场景模板.zip”的资源文件下载。该文件包含了11个不同场景下的Project软件模板,适用于各种项目管理需…

作者头像 李华
网站建设 2026/5/11 2:19:15

Flink SQL Deduplication用 ROW_NUMBER 做流式去重

1. Deduplication 是什么,为什么流式场景尤其需要 Deduplication(去重)是在一组列(去重键)上移除重复行,只保留第一条或最后一条记录。典型原因是:上游 ETL 不是端到端 exactly-once&#xff0…

作者头像 李华
网站建设 2026/5/14 0:38:24

为什么前些年太多人挤破脑袋进网安?

在过去的十年间,网络安全行业几乎成了炙手可热的“黄金赛道”。不论是高校毕业生、转行的程序员,还是来自各行各业的青年人,都对“网络安全工程师”“白帽黑客”“安全研究员”这样的头衔趋之若鹜。有人说,这是政策推动的结果&…

作者头像 李华