鸿蒙HarmonyOS开发用什么语言

1.网上流行一句有中国底蕴的话:鸿蒙系统方舟框架盘古大模型。都方舟框架了肯定主推的是ArkUI框架。其实还能使用C++、Java和Js开发。

2.从API8开始,Java语言已经从鸿蒙开发剔除了,而官方推荐的是ArkTs.下图是ArkTS与TS、JS的关系。

ArkTs 是TS的超集,TS是JS的超集,每个都基于前者,并且在这个基础上做了一些自己的拓展。

3.为什么舍弃Java
其实这个问题,我也思考了很久,但是官方没有一个说法,大胆猜测下有两个原因:

1)就像Android抛弃Java一样,怕倒时候被人告,陷入官司风波中(感兴趣的朋友可以搜索,甲骨文诉讼谷歌Java侵权之案,这里不赘述)

2)Java是一门解释性语言,必须跑JVM,就像负重跑一样,必然降低系统的流畅性,这也是Android卡的原因之一,系统完全抛弃JVM,从结构上就天然流畅多了

当然可能还有一种可能,告诉大家我都不支持Java开发了,你们不能再说我安卓套壳了吧!

4.为什么选择ets
ArkUI用的是声明式的写法(现在不管是Android新出的compose还是Flutter都是这种写法),目前的js和ts不支持,还是只能用以前那种过程式的写法,至于C++纯写,C++是一门门槛比较高的语言,不适合一般开发者。

arkTS是基于TS的,TS是微软一门完全开源的语言,没有版权问题,也有一定的前端开发者。

基于上述两个原因,官方推荐用arkTS比较合适。

总结:
鸿蒙经过几年的迭代,抛弃了Java,基于TS出了一个官方推荐的ArkTS语言,甩开了JVM,提升效率,同时支持自己研发的一些现代化特性,没有版权的问题,现在唯一的问题就是各大公司愿不愿意为它去适配生态了,还好的是,目前各大互联网公司已经开始适配了。
 

ets文件和ts文件有什么区别:HarmonyOS3项目扩展名ets文件和ts文件有什么区别-CSDN博客

好了就写到这吧!

你有时间常去我家看看我在这里谢谢你啦...

我家地址:亚丁号

最后送大家一首诗:

山高路远坑深,
大军纵横驰奔,

谁敢横刀立马?
惟有点赞加关注大军。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BFS:八数码问题求解

八数码原题 剖析一下BFS BFS算法是一种图遍历算法,它从起点开始,逐层扩展搜索范围,直到找到目标节点为止。 BFS算法一般选择队列作为节点存储的数据结构,我们将搜索目标节点的问题抽象为寻找目标状态,那么队列…

Vue3 reative回显问题

1. reactive 在做项目的时候通常会遇到这种情况,比如我们有一个 Table 显示数据,添加 Table 数据的时候使用 dialog 弹出,在里面填写字段然后添加。 在 vue3 中,对于对象的响应式定义推荐使用 reactive ,那么可以写入…

运筹学经典问题(二):最短路问题

问题描述 给定一个图(有向图或无向图) G ( V , E ) G (V, E) G(V,E), V V V是图中点的集合, E E E是图中边的集合,图中每条边 ( i , j ) ∈ E (i, j) \in E (i,j)∈E都对应一个权重 c i j c_{ij} cij​(…

Android取消深色适配

从Android10(API 29)开始,在原有的主题适配的基础上,Google开始提供了Force Dark机制,在系统底层直接对颜色和图片进行转换处理,原生支持深色模式。当系统设置深色主题背景或者进入省电模式情况下会进入深色…

2023年烟花爆竹经营单位主要负责人证模拟考试题库及烟花爆竹经营单位主要负责人理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2023年烟花爆竹经营单位主要负责人证模拟考试题库及烟花爆竹经营单位主要负责人理论考试试题是由安全生产模拟考试一点通提供,烟花爆竹经营单位主要负责人证模拟考试题库是根据烟花爆竹经营单位主要负责人…

C++ STL容器概览

容器概览 容器分类 顺序容器提供对元素(半开)序列的访问。 vectorlistforward_listdeque 关联容器提供基于关键字的关联查询。 有序关联容器:通常用平衡二叉树(红黑树)实现。 mapmultimapsetmultiset 无序关联容器&a…

NestJS使用gRPC实现微服务通信

代码仓库地址:https://github.com/zeng-jc/rpc-grpc-practice 1.1 基本概念 gRPC 基于 Protocol Buffers(protobuf)作为接口定义语言(IDL),意味着你可以使用 protobuf 来定义你的服务接口,gRP…

【HDFS面试】HDFS面试题答案

题目 HDFS文件写入和读取流程 HDFS组成架构 介绍下HDFS,说下HDFS优缺点,以及使用场景 HDFS作用 HDFS的容错机制 HDFS的存储机制 HDFS的副本机制 HDFS的常见数据格式,列式存储格式和行存储格式异同点,列式存储优点有哪些? …

【环境搭建】Win10下安装Docker

下载地址 Docker Windows 桌面版下载地址 各镜像下载地址 可能遇到的问题 安装后一直显示以下文字 Starting the Docker Engine… Docker Engine is the underlying technology that runs containers 请尝试使用此方法:https://zhuanlan.zhihu.com/p/667495068

RGB颜色表示法(RGBA解释) 以及常见的色调

RGB:代表red,green,blue。即用这三个色调表示所有颜色。 表示方式如:(255,255,255)白色、(0,0,0)黑色 改变三个不同的数值可以得到不同的颜色,数值取值范围为0-255&#…

【shell脚本实战案例】awk实现行转列数据变换

问题背景: awk(“Aho, Weinberger, and-Kernighan”) 是一种文本处理工具,用于从输入文件中提取并输出指定的信息。它以行为单位读取文件,并根据用户定义的模式和操作来处理每一行数据。 awk命令是一种强大的编程语…

设计模式——模板方法模式

引言 模板方法模式是一种行为设计模式, 它在超类中定义了一个算法的框架, 允许子类在不修改结构的情况下重写算法的特定步骤。 问题 假如你正在开发一款分析公司文档的数据挖掘程序。 用户需要向程序输入各种格式 (PDF、 DOC 或 CSV&#…

Ubuntu 常用命令之 cp 命令用法介绍

cp命令在Ubuntu系统中用于复制文件或目录。它的基本格式是cp [选项] 源文件或目录 目标文件或目录。 以下是一些常用的cp命令选项 -i:在覆盖目标文件之前将给出提示。-r或-R:递归复制,用于目录的复制操作。-v:详细模式&#xff…

2023-12-12 AIGC-AI工具的基本工作原理

摘要: 2023-12-12 AIGC-AI工具的基本工作原理 AI工具的基本工作原理 AI工具的基本工作原理涉及到一系列复杂的技术和算法。这些原理可以根据不同类型的AI工具进行概括,包括机器学习、自然语言处理、图像识别等。以下是一些关键的AI工具及其工作原理的概述&#xff…

对于实例控制,枚举类型优先于readResolve

实例控制是指控制类实例的创建和使用过程,而 readResolve 方法是 Serializable 接口中的一个特殊方法,用于在反序列化时控制对象的实例。在一些情况下,使用枚举类型可以更优雅地实现实例控制,而不需要依赖 readResolve 方法。 下…

shell编程-uniq命令详解(超详细)

文章目录 一、引言二、命令格式和选项三、示例用法四、注意事项和常见问题五、扩展应用六、总结七、参考文献 一、引言 本文将介绍Unix/Linux系统中的uniq命令,该命令用于从输入中删除重复的行,并可进行排序和统计操作。uniq命令在处理文本文件时非常有…

网络基础(十二):ACL与NAT

目录 一、ACL 1、ACL的概述 2、ACL的分类 3、ACL的应用 4、ACL的组成和基本原理 ​编辑 5、ACL的配置 5.1配置基本ACL 5.2配置高级ACL 二、NAT 1、NAT的概述 2、NAT的分类 3、NAT的工作原理 4、静态NAT的配置 5、动态NAT的配置 6、NAPT(端口映射&am…

查询某个类是在哪个JAR的什么版本开始出现的方法

背景 我们在依赖第三方JAR时,同时也会间接的依赖第三方JAR引用的依赖,而当我们项目中某个依赖的版本与第三方JAR依赖的版本不一致时,可能会导致第三方JAR的在运行时无法找到某些方法或类,从而无法正常使用。 如我正在开发的一个…

流程引擎相关资料

最近调研流程引擎相关知识,BPMN规范和流程引擎相关知识无法避开,以及市面上比较多的流程引擎产品。 BPMN2.0 基本形状 流对象(Flow Objects),流对象是定义业务流程的主要图形元素。它进一步细分为三个类别&#xff0…

代码随想录算法训练营

Day 01 | 704. 二分查找、27. 移除元素 今日学习的文章链接和视频链接 自己看到题目的第一想法 看完代码随想录之后的想法 自己实现过程中遇到哪些困难 今日收获,记录一下自己的学习时长 Day 02 | 977.有序数组的平方 ,209.长度最小的子数组 &#xff…