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进行页面切换等等。

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值