软件工具办公生活

仓颉编程语言

仓颉编程语言是一种由华为自主研发的面向全场景智能应用开发的现代编程语言,其设计目标是为开发者提供高效、安全、并发性强的编程体验。 仓颉编程语言官网入口网址:https://cang...

标签:

仓颉编程语言是一种由华为自主研发的面向全场景智能应用开发的现代编程语言,其设计目标是为开发者提供高效、安全、并发性强的编程体验。

  • 仓颉编程语言官网入口网址:https://cangjie-lang.cn/
  • 仓颉编程语言官网下载地址:https://cangjie-lang.cn/download

以下是关于仓颉编程语言的详细分析:

1. 仓颉编程语言的起源与背景

仓颉编程语言的名称来源于“仓颉输入法”,这是一种基于汉字的输入法,由中国台湾省的朱邦复先生在1983年发明。仓颉输入法通过分解汉字的形、音、义来实现输入,使得用户能够通过输入汉字的组成部分来输入汉字。然而,仓颉编程语言并非直接继承自仓颉输入法,而是华为在2019年启动研发项目,历经五年沉淀,于2024年6月21日在华为开发者大会(HDC2024)正式亮相。

2. 仓颉编程语言的核心特点

仓颉编程语言具有以下核心特点:

  1. 面向全场景智能:仓颉编程语言是华为为鸿蒙系统量身打造的全场景智能应用编程语言,旨在支持鸿蒙系统下的全场景应用开发。它支持多种开发范式,包括函数式、命令式和面向对象编程,使得开发者能够根据业务需求选择最合适的表达方式。
  2. 语法简明高效:仓颉编程语言提供了一系列简明高效的语法,例如插值字符串、主构造函数、Flow表达式、match、if-let、while-let和重导出等语法,旨在减少冗余书写、提升开发效率。此外,它支持类型推断,即编译器根据变量或表达式的上下文信息自动推测出类型,而不需要开发者在开发阶段标注类型。
  3. 强类型与静态类型:仓颉编程语言是一种静态且强类型的编程语言,要求所有数据都有确定的类型且类型不能改变。Nothing类型是仓颉语言定义的一种特殊类型,表示空类型,是所有类型的子类型。break、continue、return和throw表达式的类型都是Nothing。目前仓颉编译器不允许显式使用Nothing类型。此外,仓颉编程语言支持数值类型、Rune类型、Bool类型等不可变类型,以及Array类型、VArray类型等可变类型。
  4. 高效并发:仓颉编程语言采用抢占式的并发模型,其中仓颉线程是基本的执行单元。每个线程都具有可被抢占、并发执行、阻塞挂起和共享内存等性质。通过spawn关键字和ThreadContext类型默认参数创建并启动一个线程,返回Future<T>实例。Future<T>对象代表一个未完成的计算或任务,可用于获取线程的计算结果。每个Future<T>对象都有一个关联的线程对象,可通过thread属性获取。仓颉语言还提供了sleep函数让线程睡眠指定时长,以及cancel()方法向对应的线程发送终止请求。
  5. 跨语言互操作:仓颉编程语言支持与C语言和ArkTS的互操作。在C语言互操作中,仓颉提供声明式接口描述和低互操作开销,允许在仓颉代码中声明被调用的C函数接口,并减少跨语言拷贝和运行时开销。在ArkTS互操作中,仓颉提供ohos.ark_interop互操作库,包括JSValue、JSContext和JSCallInfo等关键数据结构,实现与ArkTS的互操作。
  6. 内存安全:仓颉编程语言内置了丰富的运算符,包括算术运算符、关系运算符、逻辑运算符等。算术运算符用于执行数学运算,如加法、减法、乘法等。关系运算符用于比较量的大小或相等性。逻辑运算符用于真或假逻辑运算,如逻辑非、逻辑与、逻辑或等。此外,仓颉语言还支持自增自减运算符、位运算符、赋值运算符、类型判断运算符等。运算符可以重载,以扩展现有运算符的功能。仓颉编程语言还支持引用和值传递的方式来传递参数和返回值,引用传递可以提高性能和避免数据复制。
  7. 领域易扩展:仓颉编程语言基于词法宏的元编程能力,支持尾随lambda、属性、操作符重载等,有利于构建领域专用语言(DSL)。它还支持创建DSL语言,类似Groovy和Kotlin,便于开发者快速构建领域专用语言。
  8. 安全与性能:仓颉编程语言追求“编码即安全”的愿景,通过静态类型系统和自动内存管理确保程序安全。同时,仓颉编译器和运行时进行全栈优化,包括高层编译优化、后端协同优化、向量化、Intrinsic优化等,以及运行时的轻量化设计和按需加载技术,以提升程序性能。

3. 仓颉编程语言的应用领域

仓颉编程语言主要应用于以下领域:

  • 中文字符编码和文本数据处理:仓颉编程语言充分利用汉字的结构特点来设计编码,为开发者提供了一种高效的方式来编码、存储和处理中文字和词组。
  • 多领域应用:除了基本的汉字输入和处理功能,仓颉编程语言还广泛应用于教育、出版、历史文献数字化以及人工智能等领域。在这些领域中,仓颉编程语言提供的汉字处理能力能够大大提高效率和准确性,促进相关技术和应用。
  • 鸿蒙生态:仓颉编程语言是鸿蒙生态基础设施建设的重要一环,旨在支持鸿蒙系统下的全场景应用开发。它支持与C语言和ArkTS的互操作,实现高效复用和生态兼容。

仓颉编程语言是一种由华为自主研发的面向全场景智能应用开发的现代编程语言,具有语法简明高效、强类型、高效并发、跨语言互操作、内存安全、领域易扩展等核心特点。它旨在为开发者提供高效、安全、并发性强的编程体验,并广泛应用于鸿蒙生态、中文字符编码和文本数据处理等领域。

数据统计

相关导航

voidImageViewer
voidImageViewer

VoidImageViewer是一款由著名Windows文件搜索工具Everything的开发团队voidtools推出的、专为Windows系统设计的轻量级开源图像查看器。自2016年发布以来,它一直秉承着与其“兄长”Everything相同的核心理念:追求极致的速度与简洁高效的用户体验。 voidImageViewer官网入口网址:https://www.voidtools.com/forum/viewtopic.php?t=5623voidImageViewer开源项目地址:https://github.com/voidtools/voidImageViewervoidImageViewer官网下载地址1:https://www.voidtools.com/forum/viewtopic.php?t=5623voidImageViewer官网下载地址2:https://github.com/voidtools/voidImageViewer/releases 该软件最大的特点就是“小而快”。其体积极其小巧,64位版本的可执行文件大小仅约368KB,启动和加载图片的速度几乎达到“秒开”的程度,对系统资源的占用极低。在功能上,它支持浏览BMP、GIF、ICO、JPG、PNG、TIF以及现代图像格式WEBP等多种常见图片格式。特别值得一提的是,它不仅支持静态WebP图像,在2025年5月发布的1.0.0.9版本中还增强了对动画WebP格式的完整支持,并优化了动画播放的流畅性。 除了基础的图片查看,VoidImageViewer还提供了一些实用的增强功能。用户可以使用幻灯片模式浏览图片,通过快捷键(Ctrl+T)将窗口置顶,或对GIF动画进行逐帧、倍速播放控制(Ctrl+方向键)。最新的版本更新还引入了多项提升体验的功能,如图像预加载以减少切换等待、一键复制图像或文件名到剪贴板、以及应用Mipmap技术来优化高分辨率图片的缩放性能。 VoidImageViewer是一款摒弃了复杂界面和冗余功能、专注于快速、流畅看图核心体验的工具。它虽然没有中文界面,但操作直观,直接将图片拖入软件即可使用,非常适合作为系统默认的轻量级看图工具。

BilldDesk
BilldDesk

BilldDesk 是一款基于现代 Web 技术栈开发的开源远程桌面控制软件,旨在提供免费、跨平台、高安全性的远程控制解决方案。它支持多种设备之间的远程控制,包括电脑端、安卓端和网页端,适用于个人和企业用户。 BilldDesk官网入口网址:https://desk.hsslive.cn/BilldDesk开源项目地址:https://github.com/galaxy-s10/billd-deskBilldDesk官方下载入口:链接功能特点BilldDesk 提供了丰富的功能,包括:多屏操作:支持多屏显示和屏幕墙功能连接鉴权:确保只有授权用户才能进行远程控制文件传输:支持文件传输功能开机自启/锁屏保活:支持开机自启和锁屏保活功能私有化部署:支持私有化部署和二次开发无连接限制:免费且无连接次数和画质限制跨平台支持 BilldDesk 支持多种操作系统,包括 Windows、macOS、Linux 和 Android,以及网页端。用户可以通过任意设备控制其他终端,例如用网页直接控制电脑或安卓设备,甚至实现多屏协同操作。 安全性 BilldDesk 采用连接鉴权机制,确保远程桌面连接的安全性。用户可以自行部署服务器,避免数据经过第三方,从而保护个人隐私和数据安全。 应用场景 BilldDesk 适用于多种场景,包括: 远程办公:用户可以通过 Web 网页或电脑端远程控制办公室电脑,实现远程办公远程教育:老师可以通过 Web 网页或电脑端远程控制学生电脑,进行远程教学远程维护:IT 人员可以通过 Web 网页或电脑端远程控制用户电脑,进行远程维护远程协助:用户可以通过 Web 网页或电脑端远程控制朋友或家人的电脑,提供远程协助优势 与主流商业远程桌面软件相比,BilldDesk 具有以下优势: 免费开源:BilldDesk 完全开源,用户可以免费使用,并进行二次开发功能全面:BilldDesk 功能全面,支持多种远程控制方式,满足不同用户的需求画质清晰:BilldDesk 使用 WebRTC 技术,提供高清画质,确保远程桌面体验流畅安全可靠:BilldDesk 采用连接鉴权机制,确保远程桌面连接的安全性部署方式 BilldDesk 提供了多种部署方式,包括: 轻量化体验:直接访问官方演示环境,通过 Web 端 5 分钟内即可完成首次远程连接,适合临时应急场景标准化部署:下载对应平台客户端(安装包大小仅 12MB),Windows 系统可通过 PowerShell 脚本批量部署私有化集群:从 GitHub 获取源码后,可在自有服务器搭建集群环境,推荐配置为 4 核 8G 内存 + 256GB SSD BilldDesk 是一款功能全面、画质清晰、安全可靠的远程桌面解决方案,为用户提供了一个免费、高效、便捷的远程桌面体验。无论是个人还是企业用户,都可以从中受益。BilldDesk 的开源性质使得用户无需支付高额的授权费用,就可以使用和修改代码,这对于小型企业和个人开发者来说是一个巨大的优势。

MTools
MTools

MTools 是由开发者 HG-ha 开发的一款开源免费的桌面工具集,一款面向创作者、自媒体人和日常办公用户的现代化多媒体处理工具,通过统一的界面设计,整合了图片处理、音视频编辑、AI增强和开发辅助等功能模块。MTools适用于Windows、macOS和Linux跨平台系统。 MTools工具开源项目官网入口网址:https://github.com/HG-ha/MToolsMTools工具箱官方下载地址:https://github.com/HG-ha/MTools/releasesMTools工具箱GitHub项目地址:https://github.com/HG-ha/MTools MTools 定位为All‑in‑One 本地工具箱,核心优势是把 AI 智能、图片处理、音视频编辑、开发辅助等能力整合到单一客户端,避免工具碎片化与在线工具的隐私风险,所有任务本地运行,数据不上云,安全高效。它支持 Windows、macOS、Linux 三大系统 核心功能覆盖四大模块:AI 智能工具:集成 ONNX 推理引擎,支持 AI 抠图、证件照生成、图片 / 视频超分辨率、视频插帧、人声伴奏分离、音视频转字幕、OCR 文字识别、离线语音处理等,依托 DirectML、CoreML、CUDA 实现硬件加速,处理速度远超纯 CPU 方案。图片工具箱:涵盖格式互转、批量压缩、裁剪旋转、水印、EXIF 清除、九宫格切图、GIF 编辑、二维码生成等,内置 mozjpeg、pngquant 专业编码引擎,兼顾画质与体积优化。音视频处理:支持主流格式互转、智能压缩、倍速播放、音轨提取、字幕嵌入、去水印、视频修复等,采用 H.264/H.265 编码,可自定义参数满足剪辑、分享、存档等场景。开发辅助:提供文本处理、编码转换、时间戳工具、JSON 格式化、ICP 备案查询、网络调试等轻量效率功能,替代多款在线小工具,提升日常办公与开发效率。MTools优势完全开源免费,无广告、无捆绑便携即用,无需复杂安装批量处理,所有功能均支持批量操作和全局搜索适用场景 MTools特别适合以下用户群体: 自媒体创作者:快速处理视频素材、生成封面图、提取字幕。办公室用户:日常文件处理、格式转换、图片编辑。开发者:需要轻量级多媒体处理工具进行开发辅助。普通用户:偶尔需要处理音视频图片的家庭用户。 MTools 是一款&#8221;轻量全能&#8221;的桌面工具集,有效整合了多种实用功能,能够替代部分庞杂软件,特别适合需要快速处理多媒体任务的日常场景,是开源社区中不可多得的实用性工具。

侠客日记
侠客日记

侠客日记是一款基于 .NET MAUI 与 Blazor 构建的开源跨平台本地日记应用,旨在为用户提供极简、隐私友好的记录体验,让日记不只是流水账,而是记录江湖传说的秘籍。项目代码托管在 GitHub,采用单一代码库即可在 Android、iOS、Windows、macOS 以及 Web(本地存储)上运行,实现真正的“一次编写、处处可用”。 侠客日记开源项目官网入口网址:https://github.com/Yu-Core/SwashbucklerDiary侠客日记官方下载地址:https://github.com/Yu-Core/SwashbucklerDiary/releases 主要特性 极简 UI 与深色模式:界面简洁、配色柔和,支持系统深色模式,阅读与编辑更舒适。Markdown 实时渲染:内置 Markdown 编辑器,支持数学公式、脑图、图表、流程图、甘特图、时序图、五线谱等多种富文本元素。跨平台响应式布局:采用 MAUI 的多尺寸响应式设计,适配手机、平板、桌面等多种设备,沉浸式状态栏/导航栏体验。隐私保护:提供隐私模式,日记内容加密存储,确保用户数据不被泄露。多媒体支持:支持图片、音频、视频的插入与分享,记录更立体。标签、天气、心情、位置等元数据:可为每篇日记添加标签、天气、心情图标以及位置信息,帮助回顾时快速定位。多语言本地化:内置多语言资源,面向全球用户。导出与备份:支持导出为多种文件格式(如 PDF、HTML),并提供本地 WebDAV 备份及局域网同步功能。技术栈完整:使用 .NET MAUI、ASP.NET Core、Blazor、SQLite、Serilog 等成熟库,代码结构清晰,便于二次开发与社区贡献。 侠客日记凭借简洁的 UI、强大的 Markdown 渲染、多平台支持以及完善的隐私保护,成为 .NET MAUI 生态中值得关注的日记类开源项目。

Keyviz
Keyviz

Keyviz是一款免费开源的实时键鼠输入可视化软件,键盘显示工具,按键显示工具,能够实时显示用户的键盘和鼠标操作,适用于录屏、演示、协作等多种场景。这款工具通过将按键和鼠标点击以图形化的方式展示在屏幕上,帮助观众直观了解当前的操作过程,从而提升演示或教学的互动性和可理解性。 Keyviz官网入口网址:https://mularahul.github.io/Keyviz开源项目地址:https://github.com/mulaRahul/KeyvizKeyviz官网下载地址:链接,链接2Keyviz中文汉化版下载:https://github.com/zetaloop/keyviz Keyviz的主要特点包括: 实时可视化:Keyviz 能够实时捕捉并显示用户的键盘输入和鼠标操作,例如快捷键(如 Ctrl + Alt)和鼠标点击(如 Alt + Drag)。高度自定义:用户可以高度自定义按键显示效果,包括预设风格、尺寸、颜色、边框、图标以及动画效果等。例如,可以选择隐藏常规键只显示快捷键,或者调整按键停留时间及动画切换方式。跨平台支持:Keyviz 支持 Windows、macOS 和 Linux 系统,用户可以根据需要选择合适的版本进行安装或下载。功能强大且易于使用:软件提供了强大的设置菜单,允许用户轻松配置显示样式、位置、停留时间等选项。此外,还支持过滤按键功能,仅显示特定组合键,避免干扰观众。开源与社区支持:Keyviz 是开源项目,用户可以在 GitHub 上获取源码,并通过捐赠支持开发者继续完善软件。 适用场景: 教学与演示:教师或讲师可以使用 Keyviz 在直播或录制课程时展示键盘快捷键或操作步骤,使学生更直观地理解内容。软件开发与调试:开发者在调试代码时,可以通过 Keyviz 清晰地展示键盘和鼠标输入,提高团队协作效率。录屏与视频制作:Keyviz 是录屏工具(如 OBS)的理想搭档,能够显著提升录屏内容的可读性和吸引力。 获取与安装: 用户可以通过 GitHub 页面(https://github.com/mulaRahul/Keyviz )下载最新版本的 Keyviz。Windows 用户可以选择安装版或绿色便携版,而 Linux 用户需安装相关依赖库。 办公人导航分享的Keyviz是一款功能强大且实用的开源工具,特别适合需要展示键盘和鼠标操作的场景。无论是教学、演示还是录屏,Keyviz 都能提供直观且专业的可视化支持。

ClassIsland
ClassIsland

ClassIsland是一款专为课堂大屏设计的开源课表展示工具,灵感来源于 iOS 的“灵动岛”。它能够在教室电视或投影屏上实时呈现课程表、倒计时、天气、日期等信息,并提供多种上下课提醒方式,如语音播报、横幅弹窗、全屏特效等。 ClassIsland官网入口网址:https://www.classisland.tech/ClassIsland官网下载地址:https://www.classisland.tech/downloadClassIsland开源项目地址:https://github.com/ClassIsland/ClassIsland 主要功能 课表展示:当天课程、单双周轮换、临时换课、Excel 导入、多周轮换、课程详情展开、自动隐藏/显示规则。信息扩展:天气预报、考试倒计时、日期时间、快捷提醒(横幅、全屏特效、语音播报)。自定义与美化:主题配色(自动匹配系统色)、自定义字体、组件插件、过渡动画、全局皮肤(浅色/深色/自定义)。交互与自动化:自动同步系统时间、天气预警、规则化上下课提醒、鼠标穿透、临时隐藏、自动折叠。插件扩展:支持插件化架构,可自行开发午休计时、班级积分等功能。 适用场景 教室大屏幕实时显示课表与提醒。走廊电视、图书馆信息屏、会议室、宿舍电脑等多种环境。 ClassIsland 通过丰富的自定义选项和轻量化的运行方式,为学校或其他组织提供了一套“智能课表+信息中心”解决方案,既提升了课堂管理效率,也让学生和教师能够直观获取课程、天气、倒计时等关键信息。

暂无评论

暂无评论...