Rustを初めて触る段階から、小さなアプリを設計・テスト・保存・配布できる段階へ進む全20回の講座です。各回には目的、実行例、結果の読み方、練習と解答、公式資料があります。
この講座の前提
Rust 2024 Editionに対応するRust 1.85以降のstableとCargoを使います。通常の例はsrc/main.rsへ保存します。依存が必要な回はCargo.tomlも掲載します。アプリのCargo.lockを残して再現します。
Rustでは、所有権、借用、ライフタイムを別々に理解するのが要点です。enum、Result、トレイト、イテレータを使い、型で不正な状態を減らします。その後に共有所有、スレッド、非同期処理へ進みます。コンパイルエラーの理由を説明できることを重視します。
読み上げと実習の使い分け
まず文章で処理の意味をつかみ、机に戻ったら例を保存して実行します。Yomiageではコードブロックが読み上げ本文から省略されるため、文章中にも期待結果を記しています。コードは各回の前提どおりのファイルへ置き、別の回の断片を無条件に混ぜないようにしてください。
一回目は動かし、二回目は入力を変え、三回目は記事を閉じて再実装します。練習問題は答えを見る前に試し、失敗した入力と理由を短くメモします。読了数より、自分で説明できる操作を増やします。
基礎から動かす
- Rust実践講座 01:Cargoで作成・実行・検査する
- Rust実践講座 02:型・mut・式・数値の境界
- Rust実践講座 03:関数・制御フロー・パターン
- Rust実践講座 04:所有権・Move・Copy・Clone
型とデータを使いこなす
- Rust実践講座 05:借用・スライス・ライフタイム
- Rust実践講座 06:struct・enum・matchで状態を表す
- Rust実践講座 07:Option・Result・疑問符で失敗を伝える
- Rust実践講座 08:Vec・HashMap・StringとUTF-8
- Rust実践講座 09:トレイト・ジェネリクス・動的ディスパッチ
- Rust実践講座 10:クロージャとイテレータで変換する
テスト・保存・通信へ進む
- Rust実践講座 11:モジュール・クレート・依存管理
- Rust実践講座 12:単体テスト・統合テスト・診断
- Rust実践講座 13:ファイル・Serde・JSONの検証
- Rust実践講座 14:Box・Rc・RefCell・Arcの役割
- Rust実践講座 15:スレッド・チャネル・共有状態
- Rust実践講座 16:async・awaitと通信の期限
アプリを完成させる
- Rust実践講座 17:総合演習・タスクの不変条件を型へ集める
- Rust実践講座 18:総合演習・保存とCLIを完成させる
- Rust実践講座 19:総合演習・回帰テストとリリースビルド
- Rust実践講座 20:卒業課題・借用と失敗を説明して改修する
節目で確認すること
第04回までで、入力と出力、型、分岐、反復を説明します。第10回までで、データの共有・変換・不在の扱いを説明します。第16回までで、テスト、外部データ、待ちや失敗への対処を確認します。第17〜19回でタスク管理CLIを完成させ、第20回の追加要求を自力で実装します。
手を動かすときの約束
実習用の新しいフォルダとデータを使います。教材が作る一時ファイルの削除は実習の後始末です。自分の大切なファイルへ保存先を変更しないでください。外部サービスへ接続する前に、ローカルの例で契約を確かめます。ライブラリの固定版は教材の再現用であり、将来の運用では保守状況を確認して更新します。
学習が進んだ証拠
「文法を見たことがある」から「要求を小さく分け、入力を検査し、失敗時にデータを守り、テストで変更を確かめられる」へ進むことが狙いです。読んだだけで経験を代替できるわけではないので、最後の卒業課題を提出物として仕上げてください。
3言語の全体ロードマップから他の講座へ移れます。次に調べる資料はThe Rust Programming Languageです。