華為的方舟編譯器的推出,就是為了推出自己的操作系統做準備嗎?

南風沁人心


文 | 極客宇文氏

方舟編譯器究竟想做什麼?

我之前問答也有提到,方舟編譯器從技術角度上說就是從編譯的層面提高手機軟件的性能。

不僅僅是華為手機,目前安卓手機上的大部分軟件都是Android開發人員開發的,所使用的編程語言是Java,Java是一種既可以被認為是編譯性語言又可以被認為是解釋性語言的語言,它被編譯class字節碼以後,又要經歷Java虛擬機的解釋才能最終被翻譯成機器可以讀懂的機器碼。

這個過程就是比較耗費性能的一件事情,尤其是安卓軟件,比如一個安裝包被手機點了安裝以後需要花費一定時間才能完成,在現在安裝包越來越大的情況下,這時間也被慢慢放大,還有一些手機軟件運行起來啟動的時候也是屬於比較緩慢的。是因為在手機上這些軟件被編譯器邊解釋邊運行,因此這個過程存在優化空間。

華為的方舟編譯器具體實現我沒有去深究,但是它的思路大概就是想在這個“解釋”的過程進行優化改造,如果這個編譯器可以理想化的話,那麼華為確實將在安卓軟件開發層面打下一個非常漂亮的格局,但是最終谷歌會不會不樂意就不知道了,畢竟安卓操作系統是谷歌所有的,我們華為明顯是想從中分一杯羹。

因此方舟編譯器是在安卓手機上進行一次革命,當然華為一定會想好如果自己擁有一套操作系統,這個方舟一定會兼容這個操作系統的,生態環境無法銜接是理所當然的事情。

宇文氏習慣性總結:

無論你有沒有看懂我說的方舟編譯器的作用,你只需要知道華為確實是一個非常有理想有格局的企業,無論方舟成敗與否,為華為點贊。

關注“極客宇文氏”,一名有料熱心的軟件工程師。

極客宇文氏


方舟編譯器,首先要講一下什麼叫編譯。因為機器是隻能做數字計算的,能夠讓機器去運算的,數字的語言就是機器語言。除此之外的所有計算機語言都是非機器語言。為了讓機器可理解,相對於機器語言的高級語言都需要一個轉換,從高級、機器不可理解,轉換為機器可理解的機器語言,這樣的一個轉換過程就叫做 編譯(Compile),由 編譯器(Compiler)來完成。

對這個方舟編譯器,我們有幾個猜測。

一 純編譯,就是全部自己寫的,不過這個工程量很大,代碼也會很多,優點是全是自己的寫的,缺點肯定是安裝文件會特別大。

二 種是華為學的是蘋果手機系統,自己編了個runtime編譯器,取名方舟編譯器,然後可以加載所有的內容。這走的是蘋果的套路。

三 是華為自己先把一些常用的機器碼編譯出來,再加上runtime。這種也是大家覺得最靠譜的一種觀點。

不可否認,華為在為自己的系統做著準備,但是不管是怎麼講?華為這樣做也是真的在為自己以後的後路做準備,其實這也提醒其他的手機廠商小米OPPO vivo也應該有華為這樣的戰略遠光才好。


天豪孤情劍


小米類似猴也追不上華為,差距越來越大,華為有芯片了,快走自己的系統了,現在在做生態,小米屁都沒有,還給別人科普,靠嘴科普出來終究是虛的


奔波的飛毛腿


如果真是這樣,一點戲也沒有。


分享到:


相關文章: