今年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 待开发系统的应用领域
不同的应用领域我们也必须使用想匹配的语言:
- 科学工程计算。需要大量的标准库函数,以便处理复杂的数值计算,可供选用的语言有FORTRAN语言、C语言等。


688

被折叠的 条评论
为什么被折叠?



