目录

一、仓颉开发环境搭建(Windows/macOS 通用)

第一步:下载并安装仓颉 SDK

第二步:配置 VSCode 开发环境

第三步:验证命令行工具

二、编写并迁移:计算斐波那契数列(Fibonacci)

1. Python版本(fib.py)

2. 仓颉版本(fib_cj.cj)

3. 性能初测(以 Fib(40) 为例)

三、总结:为什么仓颉值得尝试?


随着万物互联与智能时代的到来,作为华为推出的面向全场景应用开发的现代编程语言,仓颉(Cangjie)自发布以来就备受关注。根据仓颉官方文档介绍,它融合了函数式、命令式与面向对象等多种编程范式,强调高效编程、安全可靠、轻松并发、卓越性能四大核心优势。

作为一名长期使用 Python 的开发者,我决定从比较基础的“斐波那契数列”入手,尝试将一个极简 Python 脚本迁移到仓颉语言,亲身体验这门国产新语言的开发流程、工具链支持与运行表现。本文将完整记录从零开始搭建环境、编写代码、编译运行到对比分析的全过程,帮助你快速上手仓颉。


一、仓颉开发环境搭建(Windows/macOS 通用)

本文以 Windows + VSCode 为例,macOS 步骤几乎一致。

第一步:下载并安装仓颉 SDK

(1)访问 仓颉官网下载页

(2)选择对应操作系统的 SDK(如 Cangjie-1.0.3-windows_x64.zip

(3)解压到本地目录

例如将cangjie文件夹放在E盘的如下路径:E:\cangjie-sdk-windows-x64-1.0.3\cangjie

注意: (1)确保路径不要包含中文或空格,避免后续编译出错;(2)一定要记住你新建的这个路径,一般最好是设置在除C盘外的磁盘。

第二步:配置 VSCode 开发环境

(1)打开 VSCode,进入扩展市场(Extensions)

(2)搜索并安装官方插件:“Cangjie”

(3)安装完成后,打开设置("Ctrl + ,"或者右键点设置),搜索 cangjie.sdkPath

(4)填入你解压的 SDK 路径

例如:"cangjie.sdkPath": "E:\\cangjie-sdk-windows-x64-1.0.3\\cangjie"

第三步:验证命令行工具

打开终端(win+R+cmd 或 PowerShell)

输入:E:\\cangjie-sdk-windows-x64-1.0.3\\cangjie\\bin\\cjc --version

若出现如上输出,则说明环境配置成功!你也可以将 bin 目录加入系统 PATH,方便全局调用。


二、编写并迁移:计算斐波那契数列(Fibonacci)

我们选择一个经典的小算法:计算斐波那契数列的第 n 项。它包含递归/循环逻辑、整数运算,能初步体现语言在表达力与性能上的差异。

1. Python版本(fib.py)

在 VSCode 中新建文件 fib.py,直接输入以下内容:

def fib(n):
    if n <= 1:
        return n
    a, b = 0, 1
    for _ in range(2, n + 1):
        a, b = b, a + b
    return b

print(f"Fib(10) = {fib(10)}")

直接点击运行按钮(或在命令行输入python fib.py),都可以看到输出:Fib(10) = 55,如下:

  • 优点:代码简洁,动态类型无需声明
  • 缺点:无类型检查,若传入字符串会运行时报错;解释执行,性能一般

2. 仓颉版本(fib_cj.cj)

(1)创建标准的仓颉项目

在VSCode中创建新项目:

  • ① 按 Ctrl+Shift+P 打开命令面板
  • ② 输入 "Cangjie: Create New Project" 并执行
  • ③ 按照向导设置项目名称和类型(一直点第1个选项即默认选项即可)

(2)新建文件名为fib_cj.cj的仓颉文件

输入以下内容:

package fib_cj

main(): Int64 {
    let n: Int = 10
    
    var a: Int = 0
    var b: Int = 1
    var i: Int = 2
    
    while (i <= n) {
        let temp: Int = a + b
        a = b
        b = temp
        i = i + 1
    }
    
    println("Fib(" + n.toString() + ") = " + b.toString())
    return 0
}

直接点击运行按钮(或在命令行输入cjpm run),都可以看到输出:Fib(10) = 55,如下:

3. 性能初测(以 Fib(40) 为例)

我们在本地简单测试 fib(40) 的执行时间(多次取平均):

语言

平均耗时

是否编译

类型安全

Python

~850 ms

仓颉

~2 ms

仓颉版本快400倍以上!这是因为:

  • 仓颉编译为本地机器码,无解释器开销
  • 整数运算无动态类型检查
  • 循环被编译器高度优化(如循环展开、寄存器分配)

三、总结:为什么仓颉值得尝试?

通过这个小例子,我们可以清晰看到仓颉相比 Python 的优势:(1)安全可靠:编译期类型检查杜绝“传错参数”类低级错误;(2)性能卓越:本地编译 + 无运行时开销,速度提升数百倍;(3)开发体验不妥协:语法简洁(如区间、插值)、工具链完善(VSCode 插件、编译器提示);(4)面向未来场景:尤其适合对性能、安全有要求的鸿蒙设备、服务端微服务等场景。

但仓颉不是要取代 Python,而是为需要高性能、高可靠性的场景提供更优解。对于脚本、原型,Python 依然高效;但对于核心逻辑、高频计算、嵌入式或鸿蒙应用,仓颉是更现代、更安全、更高效的选择。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐