技术栈
仓颉
特立独行的猫a
12 天前
ai
·
agent
·
仓颉
·
cangjie
·
harness
仓颉语言开发踩坑记录--基于仓颉语言实现的 Harness实战
本文基于仓颉语言实现的 Harness实战,总结实现过程的踩坑记录。最终完成了325 个单元测试全绿(4 包 30+ 测试类,./scripts/test.sh 一键运行,自动切动态链接配置)+ 15 个 PTY 集成测试场景(49 断言)(python3 scripts/tui_pty_test.py,伪终端驱动真实 TUI),覆盖全部 14 个内置工具 + Agent 核心 + TUI 渲染/事件 + 基础设施。
特立独行的猫a
20 天前
ai
·
agent
·
harmonyos
·
仓颉
·
cangjie
·
harness
仓颉语言原生 Coding Agent:cjh · 仓颉语言实现的 Harness
AI 编程 agent 领域已有 codex、deepseek dsh、pi 等成熟方案,功能层面已被充分验证。 cjh 的立身之本,是仓颉语言特性带来的差异化: 单二进制分发、强安全 DNA、多后端编译、M:N 原生并发,以及由此支撑的 多 agent 并行编排。
特立独行的猫a
1 个月前
前端
·
华为
·
harmonyos
·
tauri
·
仓颉
仓颉版 Tauri:给鸿蒙铺一条 Web 开发者的路
先交代一下背景。华为仓颉语言 2025 年 7 月发布了 1.0.0 LTS,月底在 GitCode 开源——编译器、运行时、标准库全给了。鸿蒙官方把它和 ArkTS、C/C++ 并列为三大开发语言。语言本身没什么可怀疑的:静态类型、多后端编译、性能和安全的设计取向都很现代。
深海呐
1 个月前
java
·
开发语言
·
kotlin
·
仓颉
仓颉语言是ArkTs的上层语言吗?就像kotlin和Java
完全不是,仓颉并不是 ArkTS 的上层封装;二者是两条互相独立、平级、底层完全分开的编程语言,不能类比成 Kotlin‑Java 的关系Huawei Dev...。 下面拆开讲清楚区别:
希望上岸的大菠萝
6 个月前
华为
·
harmonyos
·
鸿蒙
·
仓颉
HarmonyOS 6.0 ArkUI 声明式 UI 实战 - 基于「今天空白」当前页面实现拆布局、条件渲染、弹层封装
系列文章:HarmonyOS 6.0 实战开发 - 「今天空白」应用 第6篇 / 共30篇 发布时间:2026-03-26 阅读时长:19分钟 难度:(进阶)
We....
7 个月前
函数
·
仓颉
仓颉函数:定义、调用与进阶特性
目录1.函数基础:定义与调用1.1 函数基本定义语法1.2 两种参数类型:非命名 & 命名1.3 函数调用的核心要求
We....
7 个月前
编程语言
·
仓颉
·
仓颉鸿蒙
仓颉语言入门:核心概念与基础数据类型
目录1.仓颉语言核心前置概念1.1 变量与常量声明1.2 程序入口与文件规范1.3 值类型与引用类型2.基础数据类型
_waylau
7 个月前
人工智能
·
华为
·
harmonyos
·
鸿蒙
·
鸿蒙系统
·
仓颉
跟老卫学仓颉编程语言开发:浮点类型
浮点类型包括Float16、Float32和Float64,分别用于表示编码长度为16-bit、32-bit和64-bit的浮点数(带小数部分的数字,如3.14159、8.24和0.1等)的类型。Float16、Float32和Float64分别对应IEEE 754中的半精度格式(即binary16)、单精度格式(即binary32)和双精度格式(即binary64)。
坚果的博客
7 个月前
仓颉
cjman:仓颉生态的轻量化工程管理工具
在国产编程语言仓颉的生态建设中,工具链的完善程度直接决定了开发者的使用体验和产业落地效率。作为AtomGit平台上Cangjie-SIG组织旗下的核心项目,cjman聚焦仓颉开发场景的工程管理需求,为仓颉开发者提供轻量化、高适配、易扩展的项目工程管理能力,成为仓颉生态工具链中不可或缺的一环。本文将从项目背景、核心定位、设计理念及生态价值等方面,带大家全面认识cjman。
_waylau
7 个月前
算法
·
华为
·
harmonyos
·
鸿蒙
·
鸿蒙系统
·
仓颉
跟老卫学仓颉编程语言开发:整数类型
整数类型分为有符号(signed)整数类型和无符号(unsigned)整数类型。有符号整数类型包括Int8、Int16、Int32、Int64和IntNative,分别用于表示编码长度为8-bit、16-bit、32-bit、64-bit和平台相关大小的有符号整数值的类型。
_waylau
8 个月前
华为
·
harmonyos
·
鸿蒙
·
鸿蒙系统
·
仓颉
·
cangjie
首本鸿蒙架构师培养手册《鸿蒙架构师修炼之道》简介
《鸿蒙架构师修炼之道》已于近日上市,该书由北京大学出版社出版。该书主要介绍如何培养鸿蒙架构师,内容涉及HarmonyOS架构设计思维/原理/模式、工具、编程语言、UI设计、线程模型设计、通信设计、持久化设计、安全性、测试、调优调测等多方面。
星空下的月光影子
8 个月前
文件处理
·
仓颉
text_encoding4cj 仓颉三方库实战教程
text_encoding4cj 是一个专为仓颉编程语言设计的文本编码/解码库,提供了 TextEncoder 和 TextDecoder API,用于将字符串编码为字节数组或将字节数组解码为字符串。本库遵循 Web 标准的 TextEncoder/TextDecoder API 规范,支持 30+ 种字符编码格式。
长弓三石
9 个月前
网络
·
harmonyos
·
鸿蒙
·
仓颉
鸿蒙网络编程系列60-仓颉版TLS客户端示例
TLS加密传输需要通讯双方的配合,在上一篇文章《鸿蒙网络编程系列59-仓颉版TLS回声服务器示例》中,我们介绍了基于仓颉语言的TLS服务端实现。本文也将使用仓颉语言在API 17的环境下实现TLS通讯客户端。TLS通讯的认证方式中,分为两种,一种是双向认证,也就是客户端需要验证服务端的身份,服务端也需要验证客户端的身份,这种方式安全性最高,但是需要客户端提供自己的数字证书,操作起来有点复杂,成本也较高,实际中只是在类似金融、政企等行业应用较多;另外一种是单向认证,也就是客户端认证服务端的身份,但是不需要服
superman超哥
9 个月前
开发语言
·
仓颉编程语言
·
仓颉
仓颉并发调试利器:数据竞争检测的原理与实战
你好!作为仓颉技术专家,我很高兴能与你探讨并发编程中最棘手的问题之一——数据竞争检测(Data Race Detection)。数据竞争是并发程序中最隐蔽、最难复现、也最危险的bug类型。它可能在开发环境运行正常,却在生产环境的高并发压力下突然爆发,导致数据损坏、程序崩溃甚至安全漏洞。
superman超哥
9 个月前
开发语言
·
后端
·
仓颉编程语言
·
仓颉
·
仓颉语言
·
仓颉元编程
·
编译器计算能力
仓颉元编程进阶:编译期计算能力的原理与深度实践
你好!作为仓颉技术专家,我很高兴能与你深入探讨现代编程语言中一个强大而优雅的特性——编译期计算(Compile-Time Computation)。在传统编程范式中,计算发生在运行时:程序读取输入、执行逻辑、产生输出。而编译期计算将这个过程前移到编译阶段,让编译器成为"第一个用户",在构建时就完成部分计算,从而实现零运行时开销的优化和类型安全的保证。
superman超哥
9 个月前
开发语言
·
后端
·
仓颉编程语言
·
仓颉
·
仓颉语言
·
仓颉跨语言编程
·
ffi外部函数接口
仓颉跨语言编程:FFI外部函数接口的原理与深度实践
你好!作为仓颉技术专家,我很高兴能与你深入探讨现代编程语言生态构建中的关键技术——FFI外部函数接口(Foreign Function Interface)。在软件工程的现实世界中,没有任何语言是孤岛。我们需要调用C库来访问系统API,需要集成第三方native库来利用现有生态,需要与其他语言编写的模块互操作来实现最佳性能。FFI就是实现这种跨语言互操作的桥梁,它使得仓颉能够无缝调用C/C++代码,同时也允许其他语言调用仓颉代码。
superman超哥
9 个月前
开发语言
·
后端
·
仓颉编程语言
·
仓颉
·
仓颉语言
·
仓颉动态特性
·
反射api
仓颉动态特性探索:反射API的原理、实战与性能权衡
你好!作为仓颉技术专家,我很高兴能与你深入探讨仓颉语言中一个强大而灵活的特性——反射API(Reflection API)。反射指程序可以访问、检测和修改它本身状态或行为的一种机制。在静态类型语言的严格约束下,反射为我们打开了一扇通向动态能力的大门,使得框架开发、序列化、依赖注入等高级功能成为可能。
superman超哥
9 个月前
开发语言
·
后端
·
仓颉编程语言
·
仓颉
·
仓颉语言
·
仓颉语言特性
仓颉元编程之魂:宏系统的设计哲学与深度实践
你好!作为仓颉技术专家,我非常高兴能与你探讨仓颉语言最具表达力的特性之一——宏系统(Macro System)。在现代编程语言的武器库中,宏系统是一把双刃剑:使用得当,它能让代码简洁优雅、消除样板代码、实现领域专用语言(DSL);使用不当,则会造成代码难以理解、调试困难。
superman超哥
9 个月前
开发语言
·
仓颉编程语言
·
仓颉
·
零成本抽象
·
仓颉设计
仓颉设计哲学核心:零成本抽象的实现原理与深度实践
你好!作为仓颉技术专家,我很高兴能与你深入探讨现代编程语言设计中最优雅的理念之一——零成本抽象(Zero-Cost Abstractions)。这个概念最早由C++之父Bjarne Stroustrup提出,其核心思想是:"你不需要为你不使用的东西付出代价,而你使用的东西,无法手工做得更好。"这意味着高级抽象不应该带来运行时开销,编译器应该将抽象代码优化到与手写底层代码相同的性能水平。