文档章节

华为方舟编译器正式开源,采用自主平台托管

编辑部的故事
 编辑部的故事
发布于 08/31 17:33
字数 1170
阅读 1421
收藏 3

前不久华为开发者大会上,华为给出了鸿蒙OS及方舟编译器的开源时间表,这着实让开发者们兴奋了一把。现在华为兑现承诺,8月31日,华为方舟编译器开源官网正式上线了。

方舟开源,自主托管

根据公布的信息,本次方舟编译器开源的是编译器框架部分源码,包括编译器中间表示(IR,Intermediate Representation)和语言编译实现,同时搭配编译器其它二进制组件,实现Java程序到aarch64汇编指令的编译过程。

开发者可基于开源代码+二进制,编译构建出编译器工具链,尝试对Java程序进行编译。社区参与者可以通过框架源码学习方舟编译器的编译器中间表示(IR)及基本的中端编译框架,熟悉方舟编译器的架构思想,并参与诸如对编译器中端优化的贡献。

目前方舟编译器的代码托管在华为云与码云平台(gitee.com),在未来走向开放治理以后,将按照所挂靠机构的模式来托管。开发者可通过代码托管平台参与社区贡献,包括文档贡献和代码贡献,同时也可在此平台上反馈相关问题和需求。

方舟编译器整体框架

打响鸿蒙OS开源的第一枪

根据之前华为在开发者大会上公布的信息,作为鸿蒙OS的重要工具,方舟编译器从2019年8月开始,将分步骤持续进行开源。具体的开源计划如下:

  • 2020年:开始开源Java编译器工具链,支持Java程序编译。
  • 2021年:开始开源JavaScript编译器工具链,可用于JS程序的编译。

华为写到:“方舟编译器开源打响了鸿蒙OS开源的第一枪。通过持续的开放、开源,华为将把自己在软件方面的技术能力不断贡献给行业,同时在开源社区中,更多的开发者可以参与并贡献自己的力量,共同推进基础软件的发展。”

华为方舟编译器开源官方渠道

华为同时还对外公布了方舟编译器开源获取信息渠道,开发者可以通过以下方式获得相关代码和文档,供参考学习、了解方舟编译器的架构和代码。

官方网站:https://www.openarkcompiler.cn

华为云代码托管地址:https://code.opensource.huaweicloud.com/HarmonyOS/OpenArkCompiler

官方Gitee镜像仓库地址:https://gitee.com/harmonyos/OpenArkCompiler

科技无边界,华为正成为开源领域的引领者

笔者认为,在开源的世界里,参与是重要的一步,思想在这里不断地激活和升华,开发者们在这里共同分享着技术的进步。

我们可以看到,一直以来,华为持续拥抱开源,在主流基金会及开源社区中积极贡献。据了解,目前在有重大国际影响力的开源社区中拥有十多个董事席位,及200多个TSC、PTL、Core Committer席位,社区影响力持续提升。作为Linux基金会白金成员,华为对Linux Kernel累计贡献了6800+补丁,在5.1 Release版本中排名超过谷歌、IBM等国际厂商,是TOP 5中唯一的亚洲厂商。

根据官方信息,华为坚持每年将销售收入的10%以上投入到研发中,技术成果不断涌现,软件能力持续增强,不断发布的黑科技“GPU Turbo”、“Link Turbo” 与 “EROFS”就是最好的证明。在此基础上,华为坚持开放、合作、共赢,不断推进产业创新与开放生态。现在方舟编译器正式开源,或许华为正在从开源领域的主要参与者变成引领者,华为能否以更加积极的姿态引领行业,为用户带来更好的体验,我们拭目以待。

不要再让人家“show me the code”啦,这一次源码真的出来了,点此直达代码仓库,Star点起来!

© 著作权归作者所有

编辑部的故事

编辑部的故事

粉丝 1434
博文 263
码字总数 507562
作品 0
深圳
运营/编辑
私信 提问
加载中

评论(3)

粉色调佩奇
粉色调佩奇
经过测试,说下目前对方舟的认识。其实它并不是通常意义的编译器,它不能把高级语言翻译成目标代码(包了一层JDK),不要指望它有一个方便实用的调试器和IDE去调试编写高级代码,说白了类似二道贩子,可以理解成反编译器。优点:针对特定平台,可能提升运行效率(看它反编译出来的代码优化能力)。缺点:不通用,不同的CPU需要重新编译。

对于应用来说要针对不同的cpu(指令集更专业)发布不同的app,其实你事先很难判断用户手机是哪款cpu。Google将字节码转机器码的工作放在了系统中应该也有考虑。然后对于系统来说也是需要针对不同的cpu翻译成堆的后台java服务,废了这么大力还要看优化能力。其实Java的初衷是跨平台,方便开发。

Google当初应该也有考虑到这些才将Java引入安卓,并且证明是成功的,方舟从哲学上来说违背了这点,所以注定方舟不会适合大部分人。有一点可以确认,方舟从字节码生成中间代码再到目标代码的优化能力肯定不及C语言代码优化成熟,所以效率提升肯定不及NDK,而Google安卓系统本身是有Java字节码转目标代码优化的。

所以,为了这点可能的效率提升,你愿意维护一堆让用户困惑的版本不。最后说下个人的感觉:方舟不能算正解,是费力的底层优化,正解是NDK,或者有能力可以直接编译Java到目标代码,再或者用C++重写安卓库。
WanAsan
WanAsan
👍👍
雪之梦技术驿站
雪之梦技术驿站
正式开始了
华为方舟编译器正式开源,采用自主平台托管

前不久华为开发者大会上,华为给出了鸿蒙OS及方舟编译器的开源时间表,这着实让开发者们兴奋了一把。现在华为兑现承诺,8月31日,华为方舟编译器开源官网正式上线了。 方舟开源,自主托管 根...

oschina
08/31
50.8K
103
把微软、MongoDB 与华为放到一起,为什么?

作者:开源中国(OSCHINA) 内容来源:开源中国(OSCHINA) 最近开源中国(OSCHINA)在庆祝 11 周年生日,编辑部借着这个机会梳理了一下这一年来我们追过的那些开源界/开发界的热点新闻,算作...

编辑部的故事
今天
3.6K
10
开源的方舟编译器将进入深圳大学课堂

前阵子华为正式开源了方舟编译器,根据介绍,此次开源的是编译器框架部分源码,包括编译器中间表示(IR,Intermediate Representation)和语言编译实现,同时搭配编译器其它二进制组件,实现...

oschina
昨天
5.2K
9
华为方舟编译器官网正式上线,写一篇你应该知道的科普文章

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/sinyu890807/article/details/100363363 本文同步发表于我的微信公众...

guolin
09/03
0
0
华为方舟编译器开源!前华为人重磅解读!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/csdnnews/article/details/100190296...

CSDN资讯
09/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

还为PDF转Word抓狂?以下神器让你在职场倍受欢迎!

身在职场的你,是否一直在琢磨:如何能让自己在公司更受欢迎?如何才能在办公室里混个好人缘?如何在同事圈里留个好印象?其实,想要让自己成为受欢迎的人,只要让自己成为大家需要的人不就行...

foxit2world
7分钟前
1
0
AndServer+Service打造Android服务器实现so文件调用

so 文件调用 随着 Android 移动安全的高速发展,不管是为了执行效率还是程序的安全性等,关键代码下沉 native 层已成为基本操作。 native 层的开发就是通指的 JNI/NDK 开发,通过 JNI 可以实...

夜幕NightTeam
9分钟前
1
0
Docker下kafka学习三部曲之二:本地环境搭建

在上一章《 Docker下kafka学习,三部曲之一:极速体验kafka》中我们快速体验了kafka的消息分发和订阅功能,但是对环境搭建的印象仅仅是执行了几个命令和脚本,本章我们通过实战来学习如何编写...

程序员欣宸
9分钟前
1
0
萌新推荐!不再为Excel转换PDF发愁,Aspose.Cells for .NET一步到位!

Aspose.Cells for .NET(点击下载)是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。 将Excel工作簿转换为...

mnrssj
10分钟前
1
0
对于绘画小白怎么画制服?该注意什么?

怎样制作学生服装?想必绘画初学者们常常会想的问题吧,不知道怎样才能画好人物的衣服,别着急,今日就在这儿讲一些关于如何绘画学生衣服校服的教程给我们!期望能够帮到你们! 轻便西装是不...

热爱画画的我
15分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部