-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
Rust編程思想 版權信息
- ISBN:9787111770190
- 條形碼:9787111770190 ; 978-7-111-77019-0
- 裝幀:平裝-膠訂
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
Rust編程思想 本書特色
本書將Rust編程語言的學習難度降至比以往任何時候都低,作者以專家級的組織方式將本書分為簡短、易于消化的章節,幫助讀者快速入門。本書面向各個層次的開發者,作者從*基本的知識入手,全面揭開Rust技術革新的神秘面紗,正是這些革新讓Rust成為下一代開發的理想選擇。本書涵蓋了Rust編程的方方面面,從類型和賦值到所有權、生命周期、trait和crate。作者甚至為單元測試、處理不安全代碼、與遺留代碼庫交互以及使用Rust日益強大的工具提供了不可或缺的專家建議。
本書特色
章節簡練,易于理解
清晰地闡釋了諸如生命周期、所有權和模式等創新特性
內容實用、重點突出、全面且前沿
既適合新手入門,又適合專業開發者作為參考
Rust不僅僅是一門新語言,它還代表著編程方式的一種哲學轉變。通過閱讀本書,你不僅能掌握Rust開發技術,還能學會Rust編程思想。
讓Rust成為你手中的重要工具,從而在這個極速發展的領域獲得機會。
Rust令人興奮的創新使得它連續五年成為Stack Overflow頗具影響力的開發者調查中*受喜愛的編程語言——但其陡峭的學習曲線讓許多開發者望而卻步。隨著全球眾多領先開發組織對Rust投入越來越多的關注,現在正是開始學習Rust的*佳時機——尤其是現在有一本內容全面、易于理解且示例豐富的圖書可以指導你。
Rust編程思想 內容簡介
本書主要介紹Rust編程,作為一名資深企業開發人員,作者將Rust編程的相關知識熟練地組織成簡短的章節,讓你能快速上手。從類型到賦值,再到ownership、lifetimes、traits和crates,本書先從基礎開始,徹底揭開Rust技術的神秘面紗,讓讀者清楚明白這門語言的魅力所在。*后,作者還針對單元測試、處理不安全代碼、與遺留代碼庫互操作以及使用Rust日益強大的工具提供了不可或缺的專家建議。本書適合對Rust感興趣的所有級別的開發人員閱讀。
Rust編程思想Rust編程思想 前言
譯 者 序
親愛的讀者:
當**次接觸Rust語言時,我就被它獨特的設計理念和強大的功能所深深吸引。作為一名有多年編程經驗的開發者,我深知一門優秀的編程語言對于提高開發效率、保證代碼質量的重要性。Rust正是這樣一門語言——它不僅繼承了C/C 的高性能,還通過創新的內存管理機制和并發模型解決了傳統系統編程語言的諸多痛點。
Rust的出現無疑是編程語言發展史上的一個重要里程碑。它巧妙地平衡了開發效率和運行效率,為開發者提供了一種全新的編程范式。Rust的核心理念——安全性、并發性和性能,正是現代軟件開發所追求的目標。通過所有權系統和借用檢查器,Rust在編譯時就能夠捕獲大多數內存錯誤和并發問題,這不僅大大提高了程序的可靠性,還減輕了開發者的心理
負擔。
Rust編程思想 目錄
目 錄 Contents
譯者序
第1章 Rust簡介 1
1.1 簡介 1
1.1.1 函數式編程 2
1.1.2 面向表達式編程 3
1.1.3 面向模式編程 3
1.2 特性 4
1.2.1 安全性 4
1.2.2 所有權 5
1.2.3 生命周期 5
1.2.4 無畏并發 6
1.2.5 零成本抽象 6
1.3 Rust術語 6
1.4 工具 7
1.5 總結 8
第2章 入門 9
2.1 準備工作 9
2.2 Rust和Windows 10
2.3 安裝Rust 10
2.4 Rustup高級主題 11
2.5 “Hello,World” 11
2.6 編譯并運行 12
2.7 cargo 13
2.8 庫 15
2.9 注釋 17
2.10 crate倉庫 19
2.11 main函數 21
2.12 命令行參數 22
2.13 總結 22
第3章 變量 24
3.1 術語 24
3.2 變量簡介 25
3.3 原生類型 25
3.4 整數類型 26
3.5 溢出 27
3.6 字面量標注 28
3.7 浮點數類型 29
3.8 浮點數常量 29
3.9 無限 30
3.10 NaN 30
3.11 數字范圍 31
3.12 顯式類型轉換 32
3.13 布爾類型 32
3.14 字符 33
3.15 指針 33
3.16 運算符 36
3.17 總結 38
第4章 字符串 39
4.1 str 39
4.2 字符串簡介 40
4.2.1 長度 41
4.2.2 擴展字符串 42
4.2.3 容量 43
4.2.4 訪問字符串的值 44
4.2.5 字符串里的字符 45
4.2.6 Deref強制轉換 46
4.2.7 格式化的字符串 46
4.2.8 實用函數 47
4.3 總結 49
第5章 控制臺 51
5.1 輸出 51
5.2 位置參數 52
5.3 變量參數 53
5.4 命名參數 53
5.5 填充、對齊和精度 54
5.6 進制 56
5.7 開發者友好 56
5.8 write!宏 57
5.9 Display trait 58
5.10 Debug trait 59
5.11 format!宏 60
5.12 控制臺讀寫 60
5.13 總結 61
第6章 控制流 62
6.1 if表達式 62
6.2 while表達式 65
6.3 for表達式 67
6.4 loop表達式 70
6.4.1 loop break表達式 70
6.4.2 loop標簽 71
6.5 Iterator trait 73
6.6 總結 74
第7章 集合 75
7.1 數組 75
7.1.1 多維數組 77
7.1.2 訪問數組元素 78
7.1.3 切片 79
7.1.4 數組的比較 80
7.1.5 迭代 80
7.1.6 隱式轉換 81
7.2 向量 81
7.2.1 多維向量 83
7.2.2 訪問向量元素 83
7.2.3 迭代 84
7.2.4 調整大小 85
7.2.5 容量 85
7.3 HashMap 86
7.3.1 創建一個HashMap 87
7.3.2 訪問HashMap 88
7.3.3 更新條目 88
7.3.4 迭代 89
7.4 總結 90
第8章 所有權 91
8.1 棧內存和堆內存 92
8.2 淺拷貝與深拷貝 92
8.3 汽車類比 93
8.4 移動語義 93
8.5 借用 94
8.6 復制語義 95
8.7 Clone trait 95
8.8 用于淺拷貝的Copy trait 96
8.9 用于深拷貝的Clone trait 98
8.10 總結 99
第9章 生命周期 100
9.1 生命周期簡介 101
9.2 函數和生命周期 102
9.3 生命周期標注 104
9.4 生命周期省略 105
9.5 復雜的生命周期 105
9.6 共享生命周期 107
9.7 靜態生命周期 108
9.8 結構體和生命周期 108
9.9 方法和生命周期 109
9.10 子類型化生命周期 111
9.11 匿名生命周期 112
9.12 泛型和生命周期 113
9.13 總結 113
第10章 引用 114
10.1 聲明 115
10.2 借用 115
10.3 解引用 116
10.4 引用的比較 117
10.5 引用標記 118
10.6 引用的引用 118
10.7 可變性 119
10.8 多重借用的限制 121
10.9 總結 121
第11章 函數 123
11.1 函數定義 124
11.2 參數 124
11.3 函數返回值 126
11.4 常函數 128
11.5 嵌套函數 129
11.6 函數指針 129
11.7 函數別名 131
11.8 總結 132
第12章 錯誤處理 133
12.1 處理錯誤 134
12.2 Result枚舉 134
12.3 Option枚舉 135
12.4 panic 136
12.4.1 panic!宏 138
12.4.2 處理panic 139
12.5 unwrap 142
12.6 Result和Option的模式
匹配 143
12.7 map 145
12.8 富錯誤 148
12.9 自定義錯誤 148
12.10 總結 150
第13章 結構體 152
13.1 其他初始化方法 155
13.2 移動語義 156
13.3 可變性 157
13.4 方法 157
13.5 self 159
13.6 關聯函數 160
13.7 impl塊 161
13.8 運算符重載 162
13.8.1 一元運算符重載 162
13.8.2 二元運算符重載 163
13.9 元組結構體 165
13.10 總結 167
第14章 泛型 168
14.1 泛型函數 169
14.2 約束 173
14.3 where子句 175
14.4 泛型結構體 176
14.5 關聯函數 180
14.6 枚舉 181
14.7 泛型trait 182
14.8 顯式特化 185
14.9 總結 190
第15章 模式 191
15.1 let語句 191
15.2 通配符 192
15.3 復雜模式 193
15.4 所有權 194
15.5 不可反駁模式 196
15.6 范圍模式 197
15.7 多個模式 198
15.8 控制流 198
15.9 結構體 200
15.10 函數 203
15.11 match表達式 204
15.12 匹配守衛 207
15.13 總結 210
第16章 閉包 211
16.1 “Hello,World” 212
16.2 閉包語法 212
16.3 捕獲變量 213
16.4 閉包作為函數參數 215
16.5 閉包作為函數返回值 216
16.6 閉包的實現 216
16.6.1 Fn trait 217
16.6.2 FnMut trait 219
16.6.3 FnOnce trait 220
16.6.4 move關鍵字 221
16.6.5 impl關鍵字 222
16.7 矩陣示例 223
16.8 總結 225
第17章 trait 227
17.1 定義trait 228
17.2 默認實現 230
17.3 標記trait 231
17.4 關聯函數 231
17.5 關聯類型 233
17.6 擴展方法 235
17.7 完全限定語法 236
17.8 supertrait 239
17.9 靜態分發 242
17.10 動態分發 244
17.11 枚舉和trait 245
17.12 總結 246
第18章 線程1 248
18.1 同步函數調用 249
18.2 線程 250
18.3 Thread類型 254
18.4 CPU執行時間 254
18.5 線程Builder 256
18.6 通信順序進程 257
18.7 異步通道 258
18.8 同步通道 260
18.9 rendezvous通道 261
18.10 try方法 262
18.11 商店示例 267
18.12 總結 270
第19章 線程2 272
19.1 互斥 272
19.2 非作用域互斥體 275
19.3 互斥體中毒 277
19.4 讀寫鎖 278
19.5 條件變量 280
19.6 原子操作 282
19.6.1 存儲和加載 283
19.6.2 獲取和修改 284
19.6.3 比較和交換 285
19.7 總結 286
第20章 內存 287
20.1 棧 287
20.2 靜態值 289
20.3 堆 290
20.4 內部可變性 292
20.5 RefCell 295
20.6 OnceCell 297
20.7 總結 298
第21章 宏 299
21.1 詞條 300
21.2 聲明宏 300
21.2.1 重復構造 303
21.2.2 多個宏匹配器 305
21.3 過程宏 306
21.3.1 派生宏 307
21.3.2 屬性宏 310
21.3.3 類函數宏 312
21.4 總結 312
第22章 互操作性 314
22.1 外部函數接口 315
22.2 基礎示例 316
22.3 libc crate 318
22.4 結構體 319
22.5 bindgen 321
22.6 C調用Rust函數 323
22.7 cbindgen 324
22.8 總結 326
第23章 模塊 328
23.1 模塊項 329
23.1.1 模塊文件 332
23.1.2 path屬性 335
23.2 函數和模塊 335
23.3 crate、super和self關鍵字 336
23.4 遺留模式 337
23.5 總結 339
Rust編程思想 作者簡介
Donis Marshall擁有超過20年的軟件設計和開發經驗,專注于為各行業頭部公司提供基于微軟技術的企業軟件解決方案。作為一名微軟MVP和MCT,多年來他也在致力于培訓其他開發者和工程師。他著有Programming Microsoft Visual C#(2005)、Programming Microsoft Visual C#(2008)以及Solid Code(2009)等書籍。
- >
伯納黛特,你要去哪(2021新版)
- >
朝聞道
- >
新文學天穹兩巨星--魯迅與胡適/紅燭學術叢書(紅燭學術叢書)
- >
回憶愛瑪儂
- >
月亮虎
- >
二體千字文
- >
我與地壇
- >
姑媽的寶刀