Rust是一門系統程式語言,專注於安全,尤其是並發安全,支持函式式和命令式以及泛型等編程範式的多範式語言。Rust在語法上和C++類似,但是設計者想要在保證性能的同時提供更好的記憶體安全。 Rust最初是由Mozilla研究院的Graydon Hoare設計創造,然後在Dave Herman, Brendan Eich以及很多其他人的貢獻下逐步完善的。Rust的設計者們通過在研發Servo網站瀏覽器布局引擎過程中積累的經驗最佳化了Rust語言和Rust編譯器。
Rust編譯器是在MIT License 和 Apache License 2.0雙重協定聲明下的免費開源軟體。 Rust已經連續三年(2016,2017,2018)在Stack Overflow開發者調查的“最受喜愛程式語言”評選項目中折取桂冠。
基本介紹
- 中文名:Rust語言
- 外文名:The Rust Programming Language
- 性質:注重安全、性能和並發性
- 開發者:Mozilla
- 最新版本:2019年1月17日 1.32.0
設計特色
標準Rust性能
語法
記憶體安全
記憶體管理
所有權
類型和多態
創建目的
創始人及項目負責人
最新版本說明
Rust 1.1 穩定版 更新內容
- 編譯速度相對於1.0版本提升了32%。
- 編譯器提示信息更加完善,參數--explain可提供更多編譯錯誤類型的詳解
- 模組std::fs中新增了一批穩定版API
- 初步支持靜態連結C運行庫MUSL,Linux環境下編譯出的程式可實現零依賴(可以不再依賴glibc)
- Cargo增加新命令cargo rustc,支持向rustc傳遞任意參數
Rust 1.2 測試版 更新內容
- 編譯速度在1.1版本的基礎上再提升30%
- 並行編譯又能用了,默認未開啟,如果開啟,還能提升33%的編譯速度(數據來自4核編譯rustc)
- Cargo性能提升(編譯Servo時啟動速度提升10倍),可在多個package之間共享依賴包快取
- 初步支持MSVC(Microsoft Visual C),以後Windows環境中不需要MinGW/MySYS/GCC了
Rust 1.13 stable 部分更新內容:
- 新的運算符,Rust已經獲得了一個新的運算符,通過減少所涉及的視覺污染,能更好的處理錯誤。
- 穩定語句上的屬性
- 修復空元組 structs/variants #[derive]
- Fix 'if' 條件的生存期規則
- 避免載入和解析未配置的非內聯模組
歷史簡介
代碼示例
fn main() { let greetings = ["Hello", "Hola", "Bonjour", "Ciao", "こんにちは", "안녕하세요", "Cześć", "Olá", "Здравствуйте", "Chào bạn", "您好"]; for (num, greeting) in greetings.iter().enumerate() { print!("{} : ", greeting); match num { 0 => println!("This code is editable and runnable!"), 1 => println!("¡Este código es editable y ejecutable!"), 2 => println!("Ce code est modifiable et exécutable !"), 3 => println!("Questo codice è modificabile ed eseguibile!"), 4 => println!("このコードは編集して実行出來ます!"), 5 => println!("여기에서 코드를 수정하고 실행할 수 있습니다!"), 6 => println!("Ten kod można edytować oraz uruchomić!"), 7 => println!("Esse código é editável e executável!"), 8 => println!("Этот код можно отредактировать и запустить!"), 9 => println!("Bạn có thể edit và run code trực tiếp!"), 10 => println!("這段代碼是可以編輯並且能夠運行的!"), _ => {}, } }}