自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

谷歌透露更多有關將 Rust 集成到 Android 的信息

移動開發(fā) Android
自 2019 年以來,Android 團隊一直致力于將 Rust 編程語言引入 AOSP(Android Open Source Project),以作為平臺原生代碼開發(fā)的內存安全替代品。近日,谷歌則在一篇博客文章中進一步闡述了關于將 Rust 整合到 AOSP 的更多信息。

自 2019 年以來,Android 團隊一直致力于將 Rust 編程語言引入 AOSP(Android Open Source Project),以作為平臺原生代碼開發(fā)的內存安全替代品。近日,谷歌則在一篇博客文章中進一步闡述了關于將 Rust 整合到 AOSP 的更多信息。

[[399571]]

博客內容指出,與任何大型項目一樣,引入一種新的語言需要仔細考慮。對于 Android 來說,一個重要的方面就是評估如何將 Rust 最好地融入 Android 的構建系統(tǒng)。根據(jù) Android 團隊的說法,將 Rust 集成到大型項目中存在許多挑戰(zhàn);例如放棄 Cargo 而直接使用 Rust 編譯器 rustc 的可能會存在使組織脫離更廣泛的 Rust 社區(qū)的風險。

該團隊還表示,當為 Android 開發(fā)的 crates 可以使 Rust 社區(qū)受益時,他們希望將其作為獨立的 crates 發(fā)布。并認為,Rust 在 Android 中的成功取決于最大限度地減少 Android 和整個 Rust 社區(qū)之間的分歧,并希望 Rust 社區(qū)能從 Android 的參與中受益。

Rust 提供 Cargo 作為默認的構建系統(tǒng)和包管理器,收集依賴關系并調用 rustc(Rust 編譯器)來構建目標 crate(Rust 包)。而在 Android 中,Soong 則替代了這個角色,并直接調用 rustc。原因在于:

  • Cargo 中的 C 語言依賴是獨立處理的,而 Soong 已經(jīng)提供了相關的機制;
  • 通過 Soong 直接調用編譯器可以提供更多 Android 所需的穩(wěn)定性和控制力,以支持各種構建配置;
  • 獨立的構建對于 Android 創(chuàng)建可重復的構建非常重要;
  • 增量構建對于保持工程生產力非常重要。

Android 團隊的 Ivan Lozano 稱,“直接使用 Rust 編譯器使我們能夠避免這些問題,并且與我們在 AOSP 中編譯所有其他代碼的方式一致。它提供了對構建過程的最大控制權,并簡化了與 Android 現(xiàn)有構建系統(tǒng)的整合。但是,由于 Cargo 的使用在 Rust crate 的生態(tài)系統(tǒng)中根深蒂固,避免使用 Cargo 則會帶來一些挑戰(zhàn),并影響到許多其他構建系統(tǒng)的決定。”

此外,關于為什么支持 proc_macros,而不支持 build.rs 腳本。該團隊則解釋稱,這是因為 build.rs 代碼是作為一次性代碼編寫的,而 proc_macros 定義了編譯器中可重用功能,這對于 Rust 社區(qū)可能更有用。且 proc_macros 通常能得到更好的維護和更多的上游審查,在代碼審查過程中更容易處理、更容易進入沙盒。

Android 團隊還透露,他們計劃在不久的將來在 source.android.com 中添加關于如何在 Soong 中定義和使用 Rust 模塊的文檔。其希望 Android 對 Rust 的支持能與 Rust 生態(tài)系統(tǒng)一起繼續(xù)發(fā)展,并希望繼續(xù)參與有關如何將 Rust 集成到現(xiàn)有構建系統(tǒng)的討論。

本文轉自OSCHINA

本文標題:谷歌透露更多有關將 Rust 集成到 Android 的信息

本文地址:https://www.oschina.net/news/141612/integrating-rust-into-android-open

責任編輯:未麗燕 來源: 開源中國
相關推薦

2013-11-20 11:24:05

AndroidAPI

2015-02-05 09:50:10

Windows 10

2014-04-02 10:37:07

Build 大會Windows 9

2023-03-08 14:14:51

微軟ChatGPT

2023-12-03 22:15:29

Python人工智能

2010-02-05 17:55:01

谷歌Android操作

2023-03-07 11:42:38

ChatGPT開發(fā)工具

2011-04-09 15:56:24

佩奇谷歌Android

2010-02-07 11:13:04

Android設備間

2025-03-28 10:41:53

2013-12-17 10:36:36

2025-03-31 11:20:41

Chrome谷歌瀏覽器

2014-06-23 09:49:32

Go語言Android谷歌

2021-09-24 09:40:22

谷歌云AzureAWS

2019-05-10 08:43:45

谷歌AndroidFuchsia

2011-11-19 20:17:34

2009-03-28 09:42:02

Windows 7微軟操作系統(tǒng)

2013-09-03 09:41:24

微軟谷歌美國政府

2013-11-27 11:08:28

開源微軟

2009-10-26 09:57:37

Chrome OS早期開發(fā)版操作系統(tǒng)
點贊
收藏

51CTO技術棧公眾號