华为仓颉可以取代 Java 吗?

大家好,我是君哥。

在最近的华为开发者大会上,华为亮相了仓颉编程语言,这是华为历经 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,本来就是一个伪命题,不同的语言擅长的方向是不一样的。但在国产化改造的浪潮下,央企、国企、银行很有可能会引入仓颉编程语言,但不太可能会像数据库、虚拟机、芯片那样做大规模的迁移,毕竟成本也是影响决策的一个关键因素。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用JAR命令打包JAR文件使用Maven打包使用Gradle打包打包Spring Boot应用

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

XLSX + LuckySheet + LuckyExcel + Web Worker实现前端的excel预览

文章目录 功能简介简单代码实现web worker 版本效果参考 功能简介 通过LuckyExcel的transformExcelToLucky方法, 我们可以把一个文件直接转成LuckySheet需要的json字符串, 之后我们就可以用LuckySheet预览excelLuckyExcel只能解析xlsx格式的excel文件&a…

机器学习——随机森林

随机森林 1、集成学习方法 通过构造多个模型组合来解决单一的问题。它的原理是生成多个分类器/模型,各自独立的学习和做出预测。这些预测最后会结合成组合预测,因此优于任何一个单分类得到的预测。 2、什么是随机森林? 随机森林是一个包含…

Midjourney 预设

使用命令/settings 进入预设,根据点击不同选项来配置。 🌹 1. 设置工作所使用的模型版本。 1️⃣ MJ Version 1 2️⃣ MJ Version 2 3️⃣ MJ Version 3 4️⃣ MJ Version 4 5️⃣ MJ Version 5 5️⃣ MJ Version 5.1 🔧Raw Mode 🌈 Niji Version 4 🍎 Niji Versio…

【pytorch16】MLP反向传播

链式法则回顾 多输出感知机的推导公式回顾 只与w相关的输出节点和输入节点有关 多层多输入感知机 扩展为多层感知机的话,意味着还有一些层(理解为隐藏层σ函数),暂且设置为 x j x_{j} xj​层 对于 x j x_{j} xj​层如果把前面的…

Vue联调Java后台操作性强教程

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

C++入门 容器适配器 / stack queue模拟实现

目录 容器适配器 deque的原理介绍 stack模拟实现 queue模拟实现 priority_queue模拟实现 仿函数 容器适配器 适配器是一种设计模式(设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总 结),该种模式是将一个类的接口转换成客户希望…

关于GIS的概念方面在前端编程中的理解

关于GIS的概念方面在前端编程中的理解 一. 什么是gis二. 关于地球的建模(了解)三. GIS坐标系表现形式四.GIS的数据4.1 矢量数据4.2 栅格数据4.3 矢量数据和栅格数据的不同 一. 什么是gis 地理坐标系统,其目的就是通过地理坐标系可以确定地球上任何一点的位置。 二. …

介绍 pg_later:受 Snowflake 启发的 Postgres 异步查询#postgresql认证

#PG培训#PG考试#postgresql培训#postgresql考试 为什么要使用异步查询? 想象一下,您启动了一项长期维护工作。您在执行过程中离开,但回来后发现,由于笔记本电脑关机,该工作在几个小时前就被中断了。您不希望这种情况…

web基础与HTTP协议(企业网站架构部署与优化)

补充:http服务首页文件在/var/www/html下的,一定是index.html命名的文件。才会显示出来。 如果该路径下没有相应的文件,会显示/usr/share/httpd/noindex下的index.html文件。 如果/usr/share/httpd/noindex没有index.html文件,会…

Spring MVC 获取请求数据的四种方式,以及获取请求头数据,获取Cookie 的数据,设置Spring MVC 的字符集编码过滤器

1. Spring MVC 获取请求数据的四种方式,以及获取请求头数据,获取Cookie 的数据,设置Spring MVC 的字符集编码过滤器 文章目录 1. Spring MVC 获取请求数据的四种方式,以及获取请求头数据,获取Cookie 的数据&#xff0c…

昇思MindSpore学习笔记4-01生成式--CycleGAN图像风格迁移互换

摘要: 记录了昇思MindSpore AI框架用循环对抗生成网络模型CycleGAN实现图像匹配的方法、步骤。包括环境准备、数据集下载、数据加载和预处理、构建生成器和判别器、优化、模型训练和推理等。 1.模型介绍 1.1模型简介 CycleGAN(Cycle Generative Adversarial Netwo…

黑科技带来时尚的体验,Umelody悠律凝声环开放式耳机评测

如今的蓝牙耳机,已经有了很多种不同的风格,但是却很少有什么创新的。直至近期,耳挂式蓝牙耳机成为了开放式耳机的热点,其设计和风格都非常与众不同,那它体验如何,有什么优势呢? 本次体验&#…

����: �Ҳ������޷��������� javafx.fxml ԭ��: java.lang.ClassNotFoundException解决方法

如果你出现了这个问题,恭喜你,你应该会花很多时间去找解决方法。别问我怎么知道的... 解决方法: 出现乱码的原因:配置vm时 这些配置看似由有空格,换行,实则没有。所以解决办法就是,重新配置你…

中英双语介绍日本东京(Tokyo)

中文版 东京介绍 东京是日本的首都,也是日本的政治、经济、文化和国际交流中心。以下是对东京的详细介绍,包括其地理位置、人口、经济、教育、文化和主要景点。 地理位置 东京位于日本关东地区的南部,地理坐标大致为北纬35度41分&#xf…

多链路聚合通信路由在应急救援活动中的重要性及解决方案

在应急救援指挥活动中,多链路聚合通信设备如同一座坚固的桥梁,将信息快速、准确地传递至每一个角落。面对复杂多变的救援现场,这类设备展现了其卓越的适应性和稳定性。 想象一下,当灾害突然降临,信息的传递变得至关重…

yolov5 json 和 txt数据格式关系

训练阶段 和 推理阶段数据格式转换说明 关于yolov5 数据格式一直以来都傻傻分不清楚,这下进行了一个梳理,做了笔记,也希望可帮助到有需要的有缘人~ 转换部分代码

Transform Data with SQL

rm -r dp-203 -f git clone https://github.com/MicrosoftLearning/dp-203-azure-data-engineer dp-203 cd dp-203/Allfiles/labs/01 ./setup.ps1 -- This is auto-generated code SELECTTOP 100 * FROMOPENROWSET(BULK https://datalakexxxxxxx.dfs.core.windows.net/fil…

在Apache HTTP服务器上配置 TLS加密

安装mod_ssl软件包 [rootlocalhost conf.d]# dnf install mod_ssl -y此时查看监听端口多了一个443端口 自己构造证书 [rootlocalhost conf.d]# cd /etc/pki/tls/certs/ [rootlocalhost certs]# openssl genrsa > jiami.key [rootlocalhost certs]# openssl req -utf8 -n…

docker buildx 交叉编译设置

dockerd配置文件 /etc/docker/daemon.json设置: rootubuntu:/etc/docker# cat daemon.json {"insecure-registries":["localhost:5000","127.0.0.1:5000","172.16.67.111:5000"],"features": {"buildkit&…