Rust 語言入門

    Java語言毫無疑問地穩坐霸主位置了。現在很難找到哪臺機器上沒有安裝JDK。有了虛擬機,確實很方便,不須要過多地考慮機器環境,一次編寫處處運行基本實現了。但,隔着一層「虛擬機」,不管怎樣優化,總仍是比直接編譯到本地指令慢些。python

    C語言總仍是有用武之地的。若是特別看重效率,好比一些核心算法,老是想着用C重寫。git

    C語言要想真正駕馭確實很難,並且不一樣程序員間水平差別巨大。要組個趁心的團隊,難啊。上個世紀七十年代的語言,奮鬥到今日還要擔綱主角,能夠算個奇蹟了。幾十年的軟件工程實踐,已經爲咱們積累了寶貴的經驗。須要恰當地反應到新語言中。程序員

    Go語言但願能代替C,稱爲21世紀的C語言。GO的確也作得很好,至少是足夠簡單、實用。github

    但,GO語言在語言層面並沒有太多的創新,僅僅是沒有泛型,沒有解構匹配就很惋惜了。算法

    Rust語言則提出了不少革命性的解決方案。雖然比GO複雜,但其後的空間廣闊!小程序

    Rust採用了 全部權、引用借用、生命期等一系列全新的概念來解決內存分配的問題。這是全部高級語言要面對的頭疼問題。C把責任全推給程序員,若是你思路不嚴謹,內存泄漏,活該!Java等一大部分後起之秀使用「垃圾回收」制度。管殺無論埋,有專門的收屍隊。何時來收,你說了不算。windows

    Rust無垃圾回收,卻實現了內存的自動管理。這是低成本、高效率的內存管理。全部可能出現的內存資源問題,都交給編譯器搞定,不是在「運行期」修補!這恐怕是Rust最引覺得豪的特性了。屬於Rust宣稱的:「零成本抽象」。併發

    Rust有不少激動人心的特性,好比泛型,好比對併發的支持(與Go語言相似)工具

    萬事開頭難,仍是先安裝一下環境吧。測試

------------------------------------

 登錄官網,下載Windows下的安裝包,我選的是32位for GNU的。

rust-1.9.0-i686-pc-windows-gnu.msi

    安裝很簡單,幾乎是一鍵完成。實際上,Rust能夠不用安裝,直接拷貝解壓到某個目錄下就能夠的。安裝只不過是自動設置了環境變量path指向了rust的bin目錄。這對於我等程序員出身易如反掌。

    安裝後作個小測試。隨便找個位置,打開cmd窗口。輸入: rustc --version

    如打印出版本信息,則安裝成功了。

    再寫個小程序試試。作個文本文件,更名:my.rs 內容:

    fn main(){

       println!("hello, rust!");

    }

    先編譯一下:  rustc my.rs

    看看目錄下,是否生成了 my.exe, 運行它就能夠了。

    做爲程序員,總不能只用記事本,至少須要一個代碼編輯環境,最少要可以代碼着色啊,能代碼提示、補全就更好。

    這裏推薦:SublimeText3。

    從官方下載該編輯工具。免費版與註冊版的差別是時不時彈出對話框,臉皮厚度夠,這倒無大妨礙。

    sublimeText支持強大的插件擴展。

(1) 安裝 package controler
ctrl + ` (tab 上方的鍵)
輸入(很長,只有一行,是個python腳本):

import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read()) 

等待完成,提示重啓。

(2) 安裝Rust插件

此時,preferences 下多了一項:package control, 運行它(有快鍵:ctrl + shift + p)

輸入:ins,選install Packages

等待彈出可安裝插件的列表。再輸入rust,

安裝前3個就能夠了。

(3)其中的第3個插件,RustAutoComplete,代碼自動補全,額外須要兩個東西:一個是外部工具 racer, 一個是Rust編譯器的源代碼。

對於第一個,下載racer的rust源碼,並編譯。這須要Rust的管理工具cargo,已經隨着rust發行了。

找個靠譜的位置,運行cmd,輸入:

git clone https://github.com/phildawes/racer.git 

就會下載racer源代碼(若是不知道git怎麼安裝,那個另外一個問題)

而後,

cd racer

cargo build

等待編譯完成吧......

一切ok後,到racer/target/debug 目錄下尋找咱們的產品: racer.exe

把它安排到個 path 能看見的位置。

對於第二項,直接到rust網站找到源碼下載。下載後解壓,作個環境設置:

RUST_SRC_PATH = D:\1_GREEN\RUST\rustc-1.9.0\src

這時候,cmd下,運行racer.exe 就不會出錯了。

一切ok,回頭設置 sublimeText:

preferences | package settings | RustAutoComplete | Settings - user

該文件中寫入:

{
// racer.exe絕對路徑
"racer": "racer.exe",
// rust源碼文件路徑
"search_paths": [ "D:\\1_GREEN\\RUST\\rustc-1.9.0\\src" ]
}

重啓 sublimeText, 應該能夠自動代碼補全了。

相關文章
相關標籤/搜索