从华为推出仓颉编程语言引发的对编程语言的思考

今年10月22日,在华为开发者大会上,华为表示在2022年推出自研的编程语言仓颉,将鸿蒙和欧拉在应用开发生态上进行打通。这么多年的开发生涯,使用了包括C/C++,Java、Python、Kotlin、JavaScript、C#等开发语言,不同的场景使用不同的语言,但是没有想过为什么要用该语言。对于新出的仓颉语言我们该有哪些期待呢?

我们知道除了上述用过的,还有其他PHP、GO等都是国外企业研发的,仓颉除了打上国货的标签,可能有人会期待是不是以后编程可以用中文了?这个我认为基本没有可能性,编程语言要考虑到的一点是简洁高效,目前的编程语言里的关键词都可以理解成是符号,如果这些符号都是中文会是一种怎样的景象? if 关键词改成如果,从输入两个字符改成输入六个字符,这成了开倒车了。

当然,编程语言除了本身的语法,还有API以及文档等,仓颉的中文文档我们倒是可以期待的。那么除了国产,还有什么是我们可以期待的?要解答这个问题我们明白我们选择一种编程语言是要考虑的因素。我们先来看看热门编程语言各自的优劣势。

1. 热门编程语言对比

Python

优势:简单易学,身面向对象语言,具有丰富和强大的库,轻松地使用C语言、C++、Cython来编写扩充模块,所以很多称它为“胶水语言”。

劣势:速度较慢,且有一些特定情况下才会出现(无法重现)的 bug

C/C++

优势:可以被嵌入任何现代处理器中,几乎所有操作系统都支持 C/C++,跨平台性非常好

劣势:学习难度大。

Java

优势:世界上使用范围最广的语言Java,具有高度的跨平台兼容性或平台无关性。由于你可以在任何地方进行编码,因此可以编译为低级机器代码,最后,可以使用JVM – Java虚拟机(取决于平台)在任何平台上执行。

劣势:占用大量内存,并且启动时间较长

JavaScript

优势:学习难度低,并且掌握了 JavaScript 语言就等于成为能同时开发网页、后台、移动端的全栈工程师

劣势:过于依赖浏览器,且代码在用户电脑上运行,容易被别有用心的坏人恶意利用

PHP

优势:社区庞大而活跃,易于快速上手

劣势:运行速度慢,且错误处理机制比较糟糕,需要支持大量旧版本的功能

Objective-C

优势:拥有丰富的工具和库

劣势:拥有自己独特的编程思路,与其他编程语言思路差别较大

Kotlin

优势:和 Java的互操作性极佳

劣势:继承了 Java 劣势内容

2. 选择编程语言考虑因素

2.1 外部因素

2.1.1 平台支持

首先平台支持是我们选择语言的首要考虑因素,我们要做Web开发,我们可以选Java,选PHP,选GO,但是有时候一些平台性的限制导致我们”没得选“,比如我们要做Android开发首先考虑Java,要做iOS开发首先考虑OC,要做网页开发,首先考虑JavaScript。

2.1.2 待开发系统的应用领域

不同的应用领域我们也必须使用想匹配的语言:

  1. 科学工程计算。需要大量的标准库函数,以便处理复杂的数值计算,可供选用的语言有FORTRAN语言、C语言等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值