是华为推出的首个完全自主研发的编译器平台,于2019年8月31日正式上线。这个编译器平台是华为公司专门为软件厂商研发的统一编程平台,其中包含了编译器、工具链、运行时等关键部件。方舟编译器支持多种编程语言、多种芯片平台的联合编译与运行,能够有效解决安卓程序“边解释边执行”的低效率问题。华为方舟编译器在码云平台上已成为最快达成5000 Star的开源项目。
方舟编译器是华为自研的一个支持多种编程语言,多种芯片平台的联合编译编程平台,而经过方舟编译器编译适配后的APP,运行效率会大大提高,拥有更为流畅的体验,足以匹配IOS应用程序APP,华为方舟编译器所拥有的全新的应用编译和运行机制,能够从动态编译变为静态编译,直接将高级语言直接编译成机器码,彻底消除了虚拟机动态编译的额外开销,实现了开发和运行效率的兼容并举,所以方舟编译器也成为了华为鸿蒙OS系统发展中非常重要的一环。
方舟编译器平台的IDE(集成开发环境)具有以下主要功能:
代码编辑:方舟编译器平台的IDE支持各种编程语言的代码编辑,包括Java、C、C++等。它还提供了自动补全、语法高亮、代码折叠等功能,以帮助开发者更加方便地编写代码。
编译与调试:IDE集成了编译器和调试器,可以自动完成代码的编译、链接和执行过程。同时,它也支持调试功能,可以帮助开发者查找和修复程序中的错误。
项目管理:IDE还提供了项目管理工具,支持多项目并行开发。开发者可以利用这些工具轻松地创建、删除、复制、导入和导出项目,并对项目进行版本控制。
性能分析:IDE集成了性能分析工具,可以帮助开发者对应用程序进行性能测试和分析。通过这些工具,开发者可以了解应用程序在运行时的资源消耗情况,进而进行优化。
远程开发:方舟编译器平台的IDE还支持远程开发功能。开发者可以在本地使用IDE编辑代码,并将代码上传到远程服务器进行编译和运行。这使得开发者可以更加方便地进行团队协作和项目管理。方舟编译器平台的IDE是一个功能强大的开发工具,旨在帮助开发者更加高效地进行应用程序开发。
方舟编译器平台的IDE支持多种编程语言的代码编辑,包括Java、C、C++等。具体来说,方舟编译器加入了对C语言程序的支持,未来方舟引擎不仅要对来自Java语言的IR代码进行JIT编译,也会支持对C、C++语言的IR代码进行JIT编译。 目前,方舟编译器已经支持C语言的绝大部分常用特性,暂不支持的特性有complex类型、packedstruct、long double、alloca out-of-scope free。
方舟编译器在上应用后,带来了以下性能优势:
提高系统流畅度:方舟编译器采用了全新的系统及应用的编译和运行机制,对所有的Java语义全部做到静态编译,直接将Java语言“翻译”成机器语言(静态编译),消除了虚拟机动态编译的额外开销,实现了开发和运行效率的兼容并举。这使得手机系统的操作流畅度大幅提升,系统响应性能得到明显提升。据华为官方测试,方舟编译器提升手机系统操作流畅度高达24%,系统响应性能提升44%。
提升应用性能:方舟编译器首次在Java领域将虚拟机干掉,也是软件史上首次将Java/C/C++等混合代码一次编译成机器码直接在手机上运行。这使得原本需要解释器进行翻译的代码可以直接编译成机器码,大幅提高了应用的性能。经测试,新浪微博极速版App经方舟编译后,操作流畅度提升高达60%。
空间换性能:方舟编译器用空间换性能,直接将编译器的代码优化搬到了开发者环境,不再被手机端的硬件资源所限制,为代码优化提供了无限可能。这意味着即使手机硬件资源有限,也能够通过方舟编译器实现代码优化,从而提高手机的性能。
因此,在上的应用,显著提高了手机的系统流畅度和应用性能,使用户能够更加顺畅地使用手机。
相关文章









