“华为方舟编译器”到底是干什么用的?

这是一篇纯个人观点分享文章,也是一篇用大白话分析“华为方舟编译器”的文章,这里面大多数技术环节都是经过我个人理解“翻译”过来的,或许会有描述错误的地方,但大框架是很值得大家参考的,看完之后,你一定能搞清楚,这是一个什么东西 。
华为方舟编译器,我们先把这个词分开来讲:
华为 - 这个东西是华为研发出来的
方舟 - 是这个编译器的名字
编译器 - 简单理解就是一个模块化的工具,这种东西是给软件开发人员用的,它可以让开发人员不必写复杂的电脑语言(电脑只认识0和1),像JAVA、php、VB、C++等,它们都是编程语言,在编写的时候都有自己的语法,人们用编程语言就可以开发软件了,而不是写数万个0和1 。
再简单点理解,编译器 = 编程工具或语言,而且是那种很方便的编程工具,模块化更多 。
 

“华为方舟编译器”到底是干什么用的?

文章插图
 
Android 是大家都知道的手机操作系统,但它并不是天生就好用的,它从前只是一个糟透了的程序,但在那个年代它是有优势的,所以谷歌才去收购了它 。
从小作坊出来的Android,虽然进了谷歌公司,在强大的技术背景下一天天长大,可它先天就有残疾,这是没办法改的,即使谷歌对它万般优化,也没办法彻底改变它的硬伤 。(运行程序的顺序复杂,吃内存,产生的系统垃圾过多)
【“华为方舟编译器”到底是干什么用的?】学过编程的人肯定都知道一个逻辑,当你去修改一套陌生的系统或代码时,会非常头痛,因为它用的语法和你不一样,它调用的函数和你的习惯不一样,它用的算法乱七八糟,甚至重做一个都比修改来得更快 。
 
“华为方舟编译器”到底是干什么用的?

文章插图
 
可如果这个系统已经无比庞大,任何一个顶级工程师都没办法重来,甚至少一个标点符号都会引起很多连锁反应,这也是为什么很多应用和网站经常有BUG的原因 。你打开新浪、网易、搜狐、腾讯,看看他们的网站,几乎和5、6年前一样,只是多了几个模块,换了换内容和颜色,谁不想改版一下?但不能,因为太庞大了 。
Android 现在就是这个处境,大家都知道需要改一下,可谁也不敢乱动,它太庞大了,除了它自己的系统本身,还牵涉到数百万个第三方应用和公司,这里面太过复杂了 。于是谷歌只能凭借自己强大的技术,在原基础上一点一点的修改,一点一点完善,这和整容差不多,外观好看了,界面友好了,操作流畅了,但内部可能已经乱成了一团,年纪再大点,可能就崩了 。
给大家出一道题,[ 从0一直加到100,等于多少?]你可以拿出计算器算一下,虽然数字比较简单,但太多了,所以一瞬间还真算不出来 。可编程的人很快就可以回答出来,它是5050 。他也有计算,只不过大家算法不同,你是一个一个加起来的,他是这样分析的:0 + 100 = 1001 + 99 = 1002 + 98 = 1003 + 97 = 100...49+51=100,加了50次都等于100,那就是5000,最后还余下一个50,5000+50 = 5050 。(这是一个新入门编程的学生,第一周就应该学会的东西)
虽然最后得到的结果是一样的,但计算速度就差太多了,算法的水平决定了一个程序员的工资和实力,也决定了这套系统或应用的实际使用体验 。
你下载10GB的数据,慢1分钟你都不会在意,可如果是滑动一下屏幕,或是点击一下应用图标,它慢半秒你都可能会生气,这就是优秀的程序可以给你的体验 。
Android 除了自然缝缝补补的缺陷之外,它的应用来源也非常乱,你可以在googlePlay下载应用,这算是体验最好的;国内用户可以在手机自带的应用商店下载,这算是体验第二好的;还可以在豌豆荚之类的第三方应用市场下载,这算第三 。
随便找个网页都可以自己手动安装,邮件里点一下,微信里点一下,微博里点一下,甚至还能自己弹出来提示安装,这种没有任何保证的应用,你都不知道它是用什么做出来的,甚至有些人用廉价的生成工具直接打包了一个应用就发上来了 。
不仅质量差,重点是编辑水平烂到极致,肆意占用系统资源,猖狂地弹出广告,这全都是影响速度和体验的源头 。
手机自带应用商店也没有那么纯洁,还记得我在评测“某粗粮”的时候,《真实赛车3》的游戏加载画面都要弹广告,而且是好几个 。
“华为方舟编译器”到底是干什么用的?


推荐阅读