TECH PLAY

動かして学ぶ!Rust入門

3,960円 (税込)

楽天

動かして学ぶ!Rust入門

書籍情報

発売日:

著者/編集:mebiusbox

出版社:翔泳社

発行形態:単行本

書籍説明

内容紹介

Rustのプログラミング手法について、サンプルを元に手を動かしながら学ぶ書籍です。主に以下の3つについて丁寧に解説します。Rustの概要と開発環境。Rustの基本的な文法と機能。Rustによる簡単なアプリ開発。基本的な文法について丁寧に解説。Rustの機能を学ぶのに適したサンプルを用意。学習をもっと深めたい方に向けて「メモ」や「参照」で補足。

目次

Chapter 1 Rust 01 概要   Rustの特徴   Rustの誕生   Rustはどういうプログラミング言語なのかエディション 02 互換性 03 まとめ Chapter 2 環境構築 01 Rustをインストールする前の準備   PowerShellのバージョンを確認   wingetのインストール   最新のPowerShellをインストール   Windows Terminal   Git   Anaconda(Miniconda) 02 Rustのインストール   rustup   cargo   rustc 03 Visual Studio Code   スニペット 04 rust-analyzer 05 Rust Playground 06 Hello, World!   パッケージの作成   Rustプログラムの実行環境 07 その他のツール   Terminal-Icons   Oh My Posh   winget   PowerShellのエイリアス   bat   lsd(LSDeluxe)   delta   simple-http-server   cargo-make 08 まとめ   本章で学んだこと Chapter 3 Rustの文法と機能 01 基本   コメント(Comment)   式と文(Expression and statement)   ブロック(Block)   オブジェクト(Object)   組み込みデータ型 (Primitive Type)   型の別名(Alias)   所有権(Ownership)   関数(Function)   print!マクロ   束縛(Binding)   シャドーイング(Shadowing)   定数(Const)   参照(Reference)   可変性(Mutable and immutable)   文字列(String)   スタティック変数   命名規則   参照外し(Dereference)   参照と可変性の関係   借用チェック(Borrow Checker) 02 コピートレイト(Copy Trait) 03 構造体・列挙型   構造体(Struct)   列挙型(Enum) 04 クロージャ(Closure)   Fnとfn 05 制御構文   if式(else、else if)   loop式   while式   for式 06 数列・スライス   数列(Range)   スライス(Slice) 07 ジェネリクス(Generics)   Option型 08 パターンマッチング(Pattern   match式   マッチガード(Match Guard)   パターンによる束縛   if let式 09 エラー処理(Error   panic!マクロ   Result型   unwrapメソッド   expectメソッド   エラー伝搬(Error Propagation)   コンビネータ 10 RAII   Derefトレイト   Dropトレイト   3つのメモリ領域(データ、スタック、ヒープ)   Box型   Rc型 11 ライフタイム(Lifetime)   staticライフタイム 12 トレイト(Trait)   トレイトとは   継承   derive属性   Fromトレイト   マーカートレイト(Marker)   Sizedトレイト 13 動的ディスパッチ   トレイトオブジェクト   dyn Trait型、impl Trait型 14 内部可変性(Interior   Cell型   RefCell型   Weak型 15 並列処理   スレッド   Send・Syncトレイト   Arc型   RwLock型 16 所有権 17 所有型と参照型 18 Cow型(Clone-on-write) 19 イテレータ(Iterator)   アダプタ 20 コレクション(Collection)   Vec型   String型   HashMap型   イテレータからコレクションに変換   イテレータを返すメソッド 21 Cargo   パッケージ、クレート   ターゲット   TOML形式   cargo initコマンド   cargo buildコマンド   cargo cleanコマンド   cargo runコマンド   cargo checkコマンド   cargo treeコマンド   cargo install[uninstall]コマンド   cargo searchコマンド   cargo publishコマンド   デバッグビルド、リリースビルド   外部パッケージ   ワークスペース   Cargo.toml 22 モジュール(Module)   モジュールの定義   パス(Path)   モジュールの利用(use)   モジュールツリー   モジュールの再公開 23 テスト(Unit   cargo testコマンド   assertion   should_panic属性   testsターゲット 24 ドキュメントコメント   ドキュメントコメントの書き方   cargo docコマンド   rustup docコマンド 25 フォーマッタ(rustfmt) 26 リンター(clippy) 27 マクロ(Macro)   宣言的マクロ   手続きマクロ 28 非同期処理   Future型   async/.await   tokioクレート 29 unsafe 30 Tips   Defaultトレイト   分解束縛   デバッグ時やテスト時のみ有効なコード   属性   演算子のオーバーロード   Preludeモジュール   DisplayトレイトとDebugトレイト   特殊なマクロ   Nightly版   cargo-audit、cargo-outdated 31 まとめ   本章で学んだこと Chapter 4  アプリケーションの開発 01 単語推理ゲーム   サンプルコードについて   プロジェクトの準備   単語辞書の読み込み   ゲーム構造体   推理ロジックの実装   GUIの実装(icedクレート) 02 レイトレーシング   サンプルコードについて   プロジェクトの準備   画像の出力   ベクトル   クォータニオン   基本的な構造体の実装   カメラ   球体の追加   球体の法線   確認用のウィンドウ   モジュール化   複数の物体への対応   アンチエイリアシング   拡散反射   材質   鏡面反射   屈折   大量に表示してみよう   テクスチャ   画像テクスチャ   発光   四角形   コーネルボックス   光学のおはなし   モンテカルロレイトレーシング 03 まとめ   本章で学んだこと Appendix 01 std::option::Option型 02 std::result::Result型 03 std::vec::Vec型 04 std::string::String型 05 std::collections::HashMap型 06 std::iter::Iteratorトレイト   アダプタ 07 std::f64モジュール   定数   数学関数(std::f64モジュール) 08 Rustをビルドしてみよう

著者情報

mebiusbox