深入RUST標準庫內(nèi)核(序言)

本書github鏈接:inside-rust-std-library

對RUST的興趣來自于一則新聞報道——Linus認真考慮將RUST作為Linux內(nèi)核開發(fā)語言。因此開始了對RUST探索缴罗,不久后基本上就從心底里認同了這門語言绩蜻,RUST不僅是高性能及安全的語言哺壶,它的語法設(shè)計也會帶來更合理的代碼架構(gòu)问慎,即使是對于初學(xué)者。而后一點實際上是以類為基礎(chǔ)的編程語言想解決但效果不彰的段直。相比于它帶來的好處寓落,所有權(quán),借用在跳,生命周期等帶來的復(fù)雜性僅僅是一個訓(xùn)練和習(xí)慣的過程而已枪萄。 但這個訓(xùn)練和習(xí)慣的過程僅僅靠學(xué)習(xí)各種書籍,指南硬毕,文檔顯然是無法達成的呻引,代碼的訓(xùn)練和研究必不可少。在做了一些表層語法的訓(xùn)練之后吐咳,就需要做一些復(fù)雜模塊的代碼研究了逻悠。

RUST標準庫顯然是一個合適的研究對象元践。(標準庫代碼就在rust安裝目錄下),vscode+rust插件是一個合適的閱讀代碼的IDE童谒。?

資深C程序員都理解单旁,C語言核心的關(guān)鍵就是徹底的了解內(nèi)存和指針,作為和C地位等同的系統(tǒng)級變成語言饥伊,RUST的核心關(guān)鍵實際上也類似象浑。但RUST各種書籍和學(xué)習(xí)資料中,對指針的解釋基本沒有觸及根本琅豆。標準庫代碼則揭示了指針的所有秘密:原生指針的結(jié)構(gòu)體類型愉豺?內(nèi)存的申請與釋放?不同類型的原生指針如何相互轉(zhuǎn)換茫因?... 蚪拦。實際上,了解了RUST的內(nèi)存和原生指針冻押,那就解決了RUST大部分的理解難點驰贷,剩下的只是概念理解和工作量。 RUST的運算符重載是RUST的另一個核心點洛巢。數(shù)學(xué)運算/位運算/關(guān)系運算/邏輯運算的重載易于理解括袒。但下標運算符[],范圍(Range)運算符`../start..end/start..=end/start../..end/..=end`稿茉,問號運算符锹锰?,解引用運算符(*)就要深入代碼才能掌握漓库。 迭代器Iterator可視作語言循環(huán)結(jié)構(gòu)的一部分城须,RUST的基礎(chǔ)類型數(shù)組,切片米苹,字符串對Iterator的實現(xiàn)是學(xué)習(xí)RUST的代碼技巧不可放過的糕伐。 Option/Result是RUST的一大創(chuàng)舉,這兩個類型使得程序員的疏忽大意和思慮不周再沒有用武之地蘸嘶。Option/Result結(jié)構(gòu)體的行為也是RUST的函數(shù)式編程的基礎(chǔ)設(shè)施良瞧。 在RUST智能指針系列結(jié)構(gòu)中,Box是內(nèi)存申請的基礎(chǔ)训唱,Box的代碼是理解RUST的堆內(nèi)存操作的關(guān)鍵褥蚯。 還有Vec,String况增,Rc赞庶,Cell,Cow,RefCell歧强,Arc等等澜薄,這里不再一一例舉,本書會逐一分析其源碼摊册,揭示其秘密肤京。 對RUST標準庫的代碼進行研究是一件很辛苦,很有樂趣的工作茅特。最有趣和最辛苦的就是碰到一個新的類型忘分,新的Trait的時候。往往在“為什么有這個結(jié)構(gòu)類型和Trait”的思考和探索中白修,一兩個小時就過去了妒峦。而后豁然開朗,擊節(jié)贊嘆兵睛。RUST也隨著這些研究和探索舟山,由仙界墮入凡塵。?

本書將把這段研究RUST標準庫的過程和結(jié)果進行揭示卤恳。 RUST現(xiàn)在雖然還泯然眾人,但估計不久之后將脫穎而出寒矿,而能否熟練的用RUST編寫程序很可能成為評判優(yōu)秀程序員的一個標準突琳。希望這本書能夠幫助大家更好的掌握這門語言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末符相,一起剝皮案震驚了整個濱河市拆融,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌啊终,老刑警劉巖镜豹,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蓝牲,居然都是意外死亡趟脂,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進店門例衍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來昔期,“玉大人,你說我怎么就攤上這事佛玄∨鹨唬” “怎么了?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵梦抢,是天一觀的道長般贼。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么哼蛆? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任蕊梧,我火速辦了婚禮,結(jié)果婚禮上人芽,老公的妹妹穿的比我還像新娘望几。我一直安慰自己,他們只是感情好萤厅,可當我...
    茶點故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布橄抹。 她就那樣靜靜地躺著,像睡著了一般惕味。 火紅的嫁衣襯著肌膚如雪楼誓。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天名挥,我揣著相機與錄音疟羹,去河邊找鬼。 笑死禀倔,一個胖子當著我的面吹牛榄融,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播救湖,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼愧杯,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了鞋既?” 一聲冷哼從身側(cè)響起力九,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎邑闺,沒想到半個月后跌前,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡陡舅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年抵乓,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片靶衍。...
    茶點故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡臂寝,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出摊灭,到底是詐尸還是另有隱情咆贬,我是刑警寧澤,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布帚呼,位于F島的核電站掏缎,受9級特大地震影響皱蹦,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜眷蜈,卻給世界環(huán)境...
    茶點故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一沪哺、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧酌儒,春花似錦辜妓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至榴啸,卻和暖如春孽惰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背鸥印。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工勋功, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人库说。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓狂鞋,卻偏偏與公主長得像,于是被迫代替她去往敵國和親潜的。 傳聞我的和親對象是個殘疾皇子骚揍,可洞房花燭夜當晚...
    茶點故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內(nèi)容