Course Structure
このページは講師用です。
Rust Fundamentals
The first four days make up Rust Fundamentals. The days are fast paced and we cover a lot of ground!
Course schedule:
- Day 1 Morning (3 hours, including breaks)
Segment | Duration |
---|---|
Welcome | 5 minutes |
Hello, World | 20 minutes |
Types and Values | 1 hour and 5 minutes |
制御フロー | 1 hour |
- Day 1 Afternoon (2 hours and 55 minutes, including breaks)
Segment | Duration |
---|---|
Tuples and Arrays | 1 hour |
References | 50 minutes |
User-Defined Types | 50 minutes |
- Day 2 Morning (3 hours and 5 minutes, including breaks)
Segment | Duration |
---|---|
Welcome | 3 minutes |
パターンマッチング | 50 minutes |
ReadとWrite | 55 minutes |
ジェネリクス(generics) | 45 minutes |
- Day 2 Afternoon (3 hours, including breaks)
Segment | Duration |
---|---|
標準ライブラリ | 1 hour and 10 minutes |
標準ライブラリ | 1 hour and 40 minutes |
- Day 3 Morning (2 hours and 15 minutes, including breaks)
Segment | Duration |
---|---|
Welcome | 3 minutes |
メモリ管理 | 1 hour and 10 minutes |
Smart Pointers | 45 minutes |
- Day 3 Afternoon (2 hours and 20 minutes, including breaks)
Segment | Duration |
---|---|
借用 | 1 hour |
ライフタイム | 1 hour and 10 minutes |
- Day 4 Morning (3 hours and 5 minutes, including breaks)
Segment | Duration |
---|---|
Welcome | 3 minutes |
Iterators | 45 minutes |
モジュール | 40 minutes |
テスト | 1 hour and 5 minutes |
- Day 4 Afternoon (2 hours, including breaks)
Segment | Duration |
---|---|
エラー処理 | 45 minutes |
Unsafe Rust | 1 hour and 5 minutes |
専門的なトピック
In addition to the 4-day class on Rust Fundamentals, we cover some more specialized topics:
Rust in Android
The Rust in Android deep dive is a half-day course on using Rust for Android platform development. This includes interoperability with C, C++, and Java.
AOSPのチェックアウトが必要です。同じ端末から講座のリポジトリをチェックアウトし、src/android/
ディレクトリをAOSPチェックアウトのルートに移動してください。これにより、Androidビルドシステムがsrc/android/
内のAndroid.bp
を確認できるようになります。
エミュレータまたは実際のデバイスでadb sync
が機能する事を確認し、src/android/build_all.sh
を使用して全てのAndroidの例を事前にビルドしてください。スクリプトを読んで実行コマンドを確認し、手動で実行した際に正常に動作する事を確認してください。
Rust in Chromium
The Rust in Chromium deep dive is a half-day course on using Rust as part of the Chromium browser. It includes using Rust in Chromium’s gn
build system, bringing in third-party libraries (“crates”) and C++ interoperability.
You will need to be able to build Chromium — a debug, component build is recommended for speed but any build will work. Ensure that you can run the Chromium browser that you’ve built.
Bare-Metal Rust
The Bare-Metal Rust deep dive is a full day class on using Rust for bare-metal (embedded) development. Both microcontrollers and application processors are covered.
マイクロコントローラの章では、事前にBBCmicro:bitv2開発ボードを購入する必要があります。また、welcomeページで説明されているように、複数のパッケージをインストールする必要があります。
Concurrency in Rust
The Concurrency in Rust deep dive is a full day class on classical as well as async
/await
concurrency.
新規クレートの作成と、依存関係(dependencies)のダウンロードが必要です。その後、例をsrc/main.rs
にコピペして実行する事ができます:
cargo init concurrency
cd concurrency
cargo add tokio --features full
cargo run
フォーマット
本講座はインタラクティブな形式で行います。積極的に質問して、Rustへの理解を深めてください!