仓颉编程入门基础知识(仓颉编程语言是中文吗)

华为又给我们带来了惊喜。他给鸿蒙OS专属打造的自研编程语言,在深闺里躺了小半年,这千呼万唤始出来,开始了面向部分开发者的内测。这门自打去年十月份就预告的编程语言取名“仓颉”。”仓颉”之名源自于咱们方块

华为又给我们带来了惊喜。他给鸿蒙OS专属打造的自研编程语言,在深闺里躺了小半年,这千呼万唤始出来,开始了面向部分开发者的内测。这门自打去年十月份就预告的编程语言取名“仓颉”。”仓颉”之名源自于咱们方块字、象形字的创造者“仓颉”。也正因为如此,许多人单单从这“仓颉”之名就推测这门编程语言,很有可能是纯汉字纯中文的编程,进而推测华为的方舟编译器也会基于中文字符编译。会不会这样呢?

仓颉编程入门基础知识(仓颉编程语言是中文吗)

中文编程的依据

其实呢,我自己从感情上就特别地赞同这个猜测。因为如果是纯中文纯汉字编程的话,会大大地降低这个编程的入门门槛儿。不知道大家是否写过代码?写过的朋友请扣1。中文编程对这部分朋友绝对是个好消息。不仅如此,纯中文编程的话,有可能吸引各行各业的精英都来给仓颉贡献代码。比如许多人研究古代典籍,研究易经等等,这些高人都就来了。大概想象一下,将会是怎样的一番盛况。然而,这个猜测也只是基于这么一点,就是“仓颉”这个名字。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

理性上的初步判断

当从理性上来看,概率可能会特别低,甚至说可以可能低于10%(“仓颉”名字一项证据支撑打10分/100分)。“仓颉编程“大概率会基于英文字符。因为咱们现在看到的大部分关于“仓颉”这门语言的作品和报道,其后面的背景,后面的这些代码都源自于另外一门编程语言:易语言。易语言虽然也是这个中文的编程,但是它不大适合于大生产环境,许多人在私底下拿它来做几个小的实验的项目。这是第一点。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

第二点,现在鸿蒙刚刚处于发展阶段,但它的目标却是星辰大海,它的生态越往上发展,就必然要面向全球的开发者。倘若是中文的话,这门槛就高了,把潜在的国外的开发者拒之门外。因此从这个角度来看,我觉得应该大概率还是会选择英文字符。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

递归下的效率与速度

第三点至关重要,无论是对华为还是对鸿蒙来说最重要的是什么?是运行效率。

华为计划明年要出的麒麟9010(双层芯片),如果在性能上比高通骁龙差一点的话,就会对鸿蒙系统的运行效率要求特别高。然而,如果是中文,它的运行效率会降低。咱们中文方块字占两个字符,而英文字母只占一个字符。计算机处理单个汉字所耗费的时间是英文字符的两倍。极端情况下,你递归一遍就是2倍,递归执行2次就是4倍,而递归执行3次就是8倍,将会以2的指数级骤增。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

我们直观理解一下,递归88轮的2的88次是什么概念呢?根据大爆炸理论估算的宇宙的半径是460亿光年,2^88米就是460亿光年的距离。也就是说当遇到递归的时候,你往前才迈出去一米,人家就已经跑到了宇宙的边缘。这才88次递归,在某些对递归有限制的语言比如python中,默认最大值是3000次,而函数式编程语言则对此没有限制。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

编程功夫在语言之外

当然以上是极端情况。可以做许多”编译“上的优化,甚至不允许使用递归。而当咱们聊到”编译“的时候,就涉及到一个问题,那就是只有”C语言家族“才有编译。咱们完全不必去执着于中文或者汉字。因为仓颉这门编程语言必然是以C语言或者C++写的,流行的语言比如Java,python,JavaScript都是如此。再往下一层,C语言底层的汇编语言也是英文字符。就连芯片的指令集也是英文字符。比如麒麟芯片的Arm架构,它的指令集就是英文字符。因此,咱们不必去纠结于是不是中文。

当大家上手编程之后,很快就会发现语言本身根本不重要。每一门编程语言的关键词就那么30多个。语言很容易学,也非关键之所在。编程的核心在于逻辑、数据结构、算法等等,这些都是语言之外。正如陆游所言“汝果欲学诗,功夫在诗外”。

当仓颉语言出来之后,它完全可以把使用文档写得特别好,又或者出一本很好的编程的教材,将关键东西用中文来教。而没有必要这非在语言上坚持中文。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

收尾

总的来看,虽然在感情上特别期盼仓颉语言会是纯中文纯汉字编程语言。但回归到理性层面,其概率特别低。然而,无论是中文编程还是英文编程,都是迈出了一大步,是独立研发的第一一门用于生产环境的国产编程语言。其实国外的互联网巨头比如微软有TypeScript,C#,苹果公司有Swift,谷歌有Dart等等,各家都有自己的语言。但是咱们的国内的互联网企业一个也没有。华为眼下迈出来这坚实的第一步,从根儿上就彻底地扭转这一局面。无论它是什么语言,这万丈高楼平地起的关键的一步已经迈了出来。

仓颉编程入门基础知识(仓颉编程语言是中文吗)

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 5733401@qq.com 举报,一经查实,本站将立刻删除。本文链接:https://fajihao.com/i/181902.html

(0)
星空的头像星空
上一篇 2023-04-16
下一篇 2023-04-16

相关推荐