华为仓颉编程语言正式发布!相比Java、Go、Swift优势在哪?附入门教程~

news2025/2/23 13:28:56

在2024年6月21日举行的华为开发者大会上,华为公司不仅对外宣布了其新一代鸿蒙操作系统HarmonyOS NEXT,还正式发布了他们自主研发的编程语言,名为仓颉

11

我们一起看看仓颉编程语言的定位及其优势所在,以及它的入门教程💪

一、仓颉编程语言的定位

仓颉编程语言在开发中力求在安全性、易用性和性能之间找到最佳平衡点。

面对无法完美兼顾所有目标的挑战,仓颉选择了一条中间道路,既不是性能至上的系统编程语言,也非开发效率优先的动态脚本语言。

它被设计为一种静态类型的语言,具备自动内存管理,专为应用开发而优化。

仓颉的设计考虑了现代软件开发的需求,无论是在语法的直观性、性能的优化,还是在安全性的强化上,都力求为开发者提供一个全面、高效的开发环境。

Android和iOS作为两大移动操作系统,分别以Kotlin和Swift作为首选开发语言,这反映了市场对特定编程语言的偏好。

仓颉,同样定位于动态脚本语言和系统编程语言之间,有望成为鸿蒙等新兴平台的优选语言。

二、仓颉编程语言的竞争力

官方对仓颉的定义是:仓颉编程语言是一款面向全场景智能的新一代编程语言,主打原生智能化、天生全场景、高性能、强安全。融入鸿蒙生态,为开发者提供良好的编程体验。

11

三、仓颉编程语言的特点

仓颉语言已具备一套完整的特性,能够覆盖广泛的开发需求。

这门多范式编程语言融合了函数式、命令式和面向对象编程的精华,提供了值类型、类、接口、泛型、代数数据类型、模式匹配和高阶函数等强大特性。

仓颉的类型推断功能减轻了开发者在类型标注上的工作量,而其简洁高效的语法设计则减少了代码冗余,提高了开发效率。

此外,仓颉语言内置的语法糖和宏(macro)功能,为开发者提供了构建领域专用语言(DSL)的能力,使得基于仓颉进行领域抽象和快速开发成为可能。

四、仓颉编程语言的入门教程

1.你好,仓颉

2.标识符

3.变量

4.类型

5.基础类型数据

6.表达式

文章篇幅有限,完整入门教程可进入以下网址查看👇

https://developer.huawei.com/consumer/cn/training/course/slightMooc/C101718903607800132

其实华为早在2022年推出过基于微软开源的TypeScript改进的自研鸿蒙应用开发语言ArkTS。

而这次推出的仓颉编程语言则是一次全新的尝试。它没有依托于任何现有的编程语言,完全是华为自主研发的成果。这种完全自研的编程语言开发无疑需要巨大的投入,包括定义全新的语法规则等。

目前,HarmonyOS的开发者数量已经达到了254万,这个数字为仓颉编程语言的推出提供了良好的基础。

如果没有足够的开发者支持,即使是完全自研的编程语言也难以发挥其应有的作用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1866490.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Scania斯堪尼亚SHL题库综合能力性格测试真题题型解析及面试经验

一、走进Scania斯堪尼亚 Scania是一家成立于1891年的瑞典公司,专注于重型卡车和巴士的制造,以其模块化系统和环保设计闻名。作为全球领先的运输解决方案提供商,Scania不仅提供高质量的车辆,还提供相关服务和融资解决方案。公司秉…

大模型课程资料-全网最火29套全栈大模型项目实践

29套AI全栈大模型项目实战,人工智能视频课程-多模态大模型,微调技术训练营,大模型多场景实战,AI图像处理,AI量化投资,OPenCV视觉处理,机器学习,Pytorch深度学习,推荐系统…

国际现货黄金最新价格如何分析?结合较高的时间周期

国际现货黄金投资是一种24小时交易的品种,这意味着,在交易日我们打开电脑图表,分析完走势之后就有机会做交易了。但问题也出在这里,如果对国际现货黄金最新价格把握不住,分析和交易就无从谈起了,下面我们就…

【SkiaSharp绘图11】SKCanvas属性详解

文章目录 SKCanvas构造SKCanvas构造光栅 Surface构造GPU Surface构造PDF文档构造XPS文档构造SVG文档SKNoDrawCanvas 变换剪裁和状态构造函数相关属性DeviceClipBounds获取裁切边界(设备坐标系)ClipRect修改裁切区域IsClipEmpty当前裁切区域是否为空IsClipRect裁切区域是否为矩形…

2023: 芒种集•序言

2023: 芒种集•序言 2023: 芒种集•序言 从西南旅游回来,一直忙着整理游记“2024:追寻红色足迹”,之后又应初建平索要刘桂蓉遗作“我们一起走过”,于是把“别了,老屋”和诗作“二月”一并合编,把我写的悼念…

线性代数基础概念:矩阵

目录 线性代数基础概念:矩阵 1. 矩阵的定义 2. 矩阵的运算 3. 矩阵的特殊类型 4. 矩阵的秩 5. 矩阵的初等变换 6. 矩阵的特征值与特征向量 7. 矩阵的应用 8. 矩阵总结 总结 线性代数基础概念:矩阵 矩阵是线性代数中的另一个重要概念&#xff0…

数据结构——

1. 什么是并查集? 在计算机科学中,并查集(英文:Disjoint-set data structure,直译为不数据结构交集)是一种数据结构,用于处理一些不交集(Disjoint sets,一系列没有重复元…

使用 position:absolute; 定位的元素在ios上被遮盖

在ios上一个元素使用position:absolute;定位后,被其它元素遮盖 在使用absolute的元素上加一行代码 -webkit-transform: translate3d(0, 0, 0);

【YashanDB知识库】YAS-00103 no free block in dictionary cache

【问题分类】功能使用 【关键字】YAS-00103,no free block in dictionary cache 【问题描述】执行union all 太多子查询导致报错,例子如下: 【问题原因分析】 选择增大DICTIONARY_CACHE_SIZE 或 SHARE_POOL_SIZE 或 两者都增大 【解决/规…

杭州代理记账报税全程托管专业实力全面指南

杭州代理记税报税服务可以为企业提供全程托管财务管理解决方案,确保企业的财务工作专业、高效、合规。以下是杭州代理记税报税服务全面指南: https://www.9733.cn/news/detail/185.html 一、代理记账报税服务的内容 基础服务: 每日记&#xf…

使用supportFragmentManager管理多个fragment切换

android studio创建的项目就没有一个简单点的框架,生成的代码都是繁琐而复杂,并且不实用。 国内的页面一般都是TAB页面的比较多,老外更喜欢侧边菜单。 如果我们使用一个activity来创建程序,来用占位符管理多个fragment切换&…

Android性能分析工具-Perfetto基本使用

文章目录 一、Perfetto介绍二、抓取方法2.1 手机端直接抓取2.1.1 打开系统跟踪2.1.2 开始录制 2.2 使用 adb 抓取2.3 通过 Perfetto 网页自定义抓取 三、trace分析方法3.1 打开trace文件3.2 查看方法 一、Perfetto介绍 Perfetto 是一个用于性能检测和跟踪分析的生产级开源堆栈。…

CSS 文本输入框右下角的尺寸控件(三斜线:-webkit-resizer)消除,以及如何配置其样式,添加 resize 让标签元素可进行拖拽放大。

前言:在日常的前端开发中,不管是原始的和 还在在各类组件库中的文本输入框中,元素内容的右下角总是有一个三斜线的样式,本文简单了解它是什么?如何去控制并修改样式? 一、它是? 这三个斜线其实…

python---OpenCv(二),背景分离方法较有意思

目录 边界矩形 旋转矩形(最小外接矩形): 计算轮廓 找4个点的坐标 把浮点型转为Int 画轮廓 边界矩形--(最大外接矩形) 转灰度 找轮廓 找顶点 画矩形 显示 背景分离方法(这个很好玩,可以识别在动的物体) 边…

如何提高项目风险的处理效率?5个重点

提高项目风险的处理效率,有助于迅速识别和应对风险,减少风险导致的延误,降低成本,提升项目质量,确保项目按时交付。如果项目风险处理效率较低,未能及时发现和处理风险,导致问题累积,…

文化财经wh6boll带macd多空转折点提示指标公式源码

文化财经wh6boll带macd多空转折点提示指标公式源码: DIFF:EMA(CLOSE,12) - EMA(CLOSE,26); DEA:EMA(DIFF,9); MACD:2*(DIFF-DEA); MID:MA(CLOSE,26);//求N个周期的收盘价均线,称为布林通道中轨 TMP2:STD(CLOSE,26);//求M个周期内的收盘价的标准差 …

【计算机网络体系结构】计算机网络体系结构实验-www服务器配置管理实验

一、实验内容 www服务器配置管理, wireshark数据包分析 二、实验目的 1. 了解WWW服务的体系结构与工作原理,掌握利用Microsoft的IIS实现WWW服务的基本配置,掌握WEB站点的管理 2. 利用Wireshark抓取http数据包进行分析。运行软件Wireshark…

ARM 240625

练习: 汇编实现1-100累加,结果保存在r0 .text 声明下面内容都属于文本段内容 .globl _start 声明 _start 是一个全局启用的标签_start: 封装 _start 标签,汇编的标签和C中函数类似mov r0,#0 mov 把0 搬运到 r0 寄存器mov r1,#1 mov 把1 …

postman汉化中文(Windows)

Postman 是一款专业的 API 开发工具,为开发者提供了创建、测试、调试和分享 HTTP 请求的便利性和灵活性。其主要功能包括请求构建与发送、自动化测试、团队协作与分享、实时监视与调试以及环境与变量管理。无论是个人开发者还是团队,Postman 都能有效地提…

Fragment与ViewModel(MVVM架构)

简介 在Android应用开发中,Fragment和ViewModel是两个非常重要的概念,它们分别属于架构组件库的一部分,旨在帮助开发者构建更加模块化、健壮且易维护的应用。 Fragment Fragment是Android系统提供的一种可重用的UI组件,它能够作为…