当前位置:   article > 正文

Harmony与Android在开发上的区别

Harmony与Android在开发上的区别

1. 操作系统层面的差异

鸿蒙系统与安卓系统在内核架构方面的最大差异就是鸿蒙系统采用了微内核架构,而安卓系统则采用了单内核架构。所谓微内核架构, 即最大限度的对内核进行精简,只提供必要的最基本功能,如进程管理、内存管理、消息传递等,而其他的系统服务则以用户态进程的形式运行,通过消息传递的方式与内核进行通信。

内核架构的好处是内核的稳定性更好,可定制、可扩展性也更为出色。但付出的代价是,很多原先在内核空间中实现的服务间调用, 现在也需要通过进程间通信通信才能完成,在执行效率上会有所降低。

鸿蒙系统与安卓系统的另外一个差异是,鸿蒙采用了分布式应用框架,在底层就对应用跨设备的共享数据和进行协作提供了支持。因此,在需要跨设备协作的场景,鸿蒙系统具有显著优势。

鸿蒙系统的另一大优势是其采用的方舟编译器。 方舟编译器绕过了Android系统依赖的java虚拟机,将Java、C、C++等代码一次编译成机器码,进而可以以更高效的方式运行,同时也实现了多语言的统一。

2. 开发上的差异

安卓应用主要使用java或kotlin在Android Studio中进行开发, 鸿蒙应用的开发IDE是DevEco Studio, 开发语言可以选择java、 js 或者ArkTS。

选择java语言进行开发时, 开发体验与Android开发差异不大, UI布局在xml中进行编写, 然后java代码中获取UI对象的实例, 对齐进行操作或及实现事件的监听,基于Intent进行页面间跳转及参数传递等等。主要差异是类的命名和接口有少许不同。

选择js作为开发语言, 其开发体验则是一种类似于Vue+小程序混合写法:页面布局在主要是写在html中,css中定义各种样式,对数据的操作和管理则主要在js文件中实现。

若使用ArkTS进行开发, 则是与Flutter的开发体验有几分相似。同样是采用声明式UI对界面进行布局,基于router进行页面切换等等。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/333132
推荐阅读
相关标签
  

闽ICP备14008679号