大家好,我是君哥。
在最近的华为开发者大会上,华为亮相了仓颉编程语言,这是华为历经 5 年,投入大量研发成本沉淀的一门编程语言。
1 仓颉简介
按照官方报告,仓颉编程语言是一款面向全场景智能的新一代编程语言,主打原生智能化、天生全场景、高性能、强安全。融入鸿蒙生态,为开发者提供良好的编程体验。
华为编程语言具有如下特性:
1.原生智能化:
内嵌AgentDSL的编程框架,自然语言&编程语言有机融合;
多Agent协同,简化符号表达,模式*组合,支持各类智能应用开发。
2.天生全场景
轻量化可缩放运行时,模块化分层设计,内存再小也能装得下;
全场景领域扩展,元编程和eDSL技术,支持面向领域声明式开发。
3.高性能
终端场景首款全并发 GC ,应用线程更流畅,响应更快。轻量化线程,并发性能更好,开销更少。
4.强安全
安全DNA融入语言设计,帮助开发者专注于业务逻辑,免于将太多精力投入到防御性编程中,编码即安全,漏洞无处藏。
2 仓颉发展
可以看出,仓颉语言也是非常值得期待的。那华为仓颉有可以取代 Java 这样的大众语言吗?
2.1 很难
可以说很难,为什么呢?首先看两个惊人的数据:
1.Java 作为应用开发的老大哥,发展近 30 年,发布了 20 多个版本,各方面已经非常完善;
2.Java 语言有大批优秀的开发人员,大量优质的开源项目,大规模运行在生产环境的应用;
3.使用 Java 作为开发语言,企业可以很容易地组建开发团队、快速高效地完成应用发布;
4.仓颉语言虽然支持跨语言操作,但能互操作的语言较少,不支持 Java;
5.如果国内开始使用仓颉语言,那公司占多数的 Java 存量应用迁移改造成本巨大;
6.使用新的编程语言,程序员的学习成本较大,企业招聘成本也不小。
2.2 有可能
但仓颉作为国内少有的编程语言,也不是没有可能。
1.仓颉在华为内部已经研发 5 年,是鸿蒙生态中的编程语言,据官方数据,鸿蒙开发者数量已经达到 254 万,这些开发者恰好可以使用和完善仓颉语言;
2.从仓颉语言的官方文档看,Java 具有的能力,仓颉也基本有,而且还吸收了其他编程语言的一些特性;
3.在国产化信创改造的大趋势下,使用国内研发的编程语言,也是有可能的。
3 总结
其实,说仓颉语言能不能取代 Java,本来就是一个伪命题,不同的语言擅长的方向是不一样的。但在国产化改造的浪潮下,央企、国企、银行很有可能会引入仓颉编程语言,但不太可能会像数据库、虚拟机、芯片那样做大规模的迁移,毕竟成本也是影响决策的一个关键因素。