Rust編程從入門到實戰(簡體書)
商品資訊
系列名:計算機科學與技術叢書
ISBN13:9787302603849
出版社:清華大學出版社(大陸)
作者:樊少冰; 孟祥蓮
出版日:2022/07/01
裝訂/頁數:平裝/215頁
規格:24cm*17cm (高/寬)
版次:一版
商品簡介
作者簡介
樊少冰,多年Rust開發經驗,曾參與過CLC編譯器及Cube框架的開發工作。在“菜鳥教程”網站負責Rust教程的撰寫。
孟祥蓮,哈爾濱工程大學控制科學與工程專業工學博士,副教授。主要從事大數據挖掘、網絡分析算法的研究。主持與參與國家科研項目5項。發表高水平論文20余篇,申請專利6項、軟件著作權6項。
名人/編輯推薦
Rust致力於成為優雅解決高並發和高安全性系統問題的編程語言,適用於大型場景,它同時擁有著像C++一般出色的運行效率和ECMAScript一般的代碼風格。
本書內容翔實、層次分明、邏輯通透,全書採用了大量實例,更易於理解。全書涵蓋以下主題:Rust編程語言基礎知識、所有權機制、Cargo包管理器、工程組織與訪問權、無畏並發、線程通信、“屬性”和“宏”、“不安全”語法、Web編程等。
序
上大學期間,我從事過編譯器的研究與實現,這個過程並不順利,最終並沒有開發出可以在生產環境中使用的編譯器產品(像GCC或LLVM那樣)。但這個過程讓我個人收獲很大,尤其在對編程語言的研究方面。
作為一個精通C語言的開發者,我同時在使用很多其他的編程語言,這是為了適應不同類型產品的開發需要。大量的開發過程讓我全面地了解了這些編程語言(如CH、Java、ECMAScript、Kotlin甚至FORTRAN),與眾不同的編程語法以及設計者的編程思想。在了解這些之後,我常常會將它們的優點相互比較,並嘗試以一個較為通用的語言作為基礎,希望設計出一個能解決大多數迄今為止計算機科學家們發現的主要編程問題的編程語言。這些想法往往會在開發過程中不由自主地產生。
經過長時間的思考與經驗積累,我認為一個優秀的編程語言必須具備以下特質。
(1)執行高效。最好能直接編譯到硬件原生語言(機器語言),避免解釋執行。
(2)編譯時保障內存安全。在編譯時能夠確定數據的生命周期,防止垃圾的產生或在運行時檢測並回收垃圾。
(3)並發安全。能夠適應高並發環境並保證運行安全。
(4)支持面向物件編程。能夠實現面向物件的編程思想。
(5)結構管理。可以使用包管理器管理代碼,並具有良好的程序結構。
(6)易於學習和使用。軟件效率不僅體現在運行上,還體現在開發上。
具備了以上6點特質,基本上就是一門“完美語言”。我認為這種語言是不存在的,或者正在開發中。但事情往往就是這樣,你認為沒有誕生的東西往往已經被開發很久了。Rust語言就幾乎具備以上全部的優秀特質。
Rust語言完全具備以上前5條特質,唯一的缺點就是不那麼易於學習,這是因為以上總結出的優點都是主流編程語言存在問題的解決方法,意識到這些問題需要大量的實踐,而且只有在意識到這些問題之後,才會理解這些優秀特質在開發中發揮的重要作用。因此,Rust語言為了實現這些特質採用了很多還沒有流行起來的新方法(例如所有權機制)的作用較為難以理解,也就難以被學習。
編寫本書的目的是讓Rust學習變得更加容易,適合Rust入門者學習和使用參考。書中將Rust語言最經典、最廣泛的語法以程序實例的方式介紹給讀者,並盡可能地將它們講得通俗易懂。本書內容依賴的背景知識會在章節開始介紹,如果這些知識對您來說駕輕就熟,請忽略它們。但是,Rust語言絕對不適合作為剛剛接觸編程的入門者學習,學習它之前請盡量掌握C語言、C++語言等有關知識,它們是學習Rust語言知識的依賴項。
作者在本書出版前曾在“菜鳥教程”網站發布過社區版教程,且得到了來自Rust全球社區的支持,這些支持使書中的內容更加全面。
總體來說,Rust語言不是一門易於學習的語言。抱著這個心態,您也許可以更容易地學習這門語言。這門語言幾乎可以在C++能夠運行的一切環境中運行,且運行效率非常高,它的高並發能力被迄今為止使用過它的開發者們贊不絕口。
希望這個由Mozilla基金會開發的編程語言帶給您全新的編程體驗!
本書提供程序代碼等配套資源,請掃描下方二維碼或者到清華大學出版社官方網站本書頁面下載。
目次
第1章 Rust編程語言概述
1.1 編程語言
1.2 Rust語言
1.2.1 為什麼選擇Rust
1.2.2 在哪裡能使用Rust
1.3 Hello.Rust!
第2章 開發環境
2.1 工具鏈
2.1.1 Windows系統上的安裝
2.1.2 在GNU/Linux上安裝
2.1.3 在其他操作系統上安裝
2.1.4 卸載
2.2 集成開發環境
2.3 CLion安裝與部署
2.3.1 下載和安裝CLion
2.3.2 配置CLion
第3章 開發命令行程序
3.1 輸出到命令行
3.2 詳細輸出
3.3 從命令行輸入
3.4 從命令參數中獲取
第4章 基礎語法
4.1 變量
4.2 重影
4.3 常量
4.4 靜態變量
第5章 Rust數據類型
5.1 整數型
5.2 浮點數型
5.3 數學運算
5.3.1 基礎運算
5.3.2 數學函數
5.4 布爾型
5.5 邏輯運算
5.6 字符型
5.7 字符串
5.8 元組
5.9 數組
第6章 注釋
6.1 常規注釋
6.2 說明文檔注釋
6.3 生成工程文檔
第7章 函數
7.1 函數的聲明
7.2 函數語句與函數表達式
7.2.1 函數語句與表達式
7.2.2 函數返回值
7.2.3 函數表達式
7.3 函數物件
7.4 閉包(Lambda表達式)
第8章 條件語句
8.1 if-else語句
8.2 三元運算符
8.3 match語句——Rust中的switch
……
第9章 循環結構
第10章 所有權
第11章 切片類型
第12章 復合類型
第13章 泛型
第14章 錯誤處理與空值
第15章 工程組織和訪問權
第16章 特性
第17章 文件與I/O
第18章 數據結構與集合
第19章 面向物件編程思想的實現
第20章 堆內存區
第21章 高級引用
第22章 運算符方法
第23章 無畏並發
第24章 屬性
主題書展
更多書展購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。





