このチュートリアルについて

「Bitterless Rust」へようこそ.

Rustのチュートリアルには,初心者にとって不要な説明が多すぎる. 所有権,ライフタイム,借用チェッカー,ゼロコスト抽象化……. これらは確かにRustの重要な概念だけど,最初から全部理解する必要はない.

このチュートリアルでは,そういった「苦い」部分を徹底的に排除する.

重要な注意: このチュートリアルの説明にはかなりの語弊がある.意図的にそうしている.正確さよりも「とりあえず書けるようになること」を優先している.ここで学んだ後に,公式ドキュメントやThe Rust Programming Language (通称The Book)で正確な知識を補完することを強く推奨する.

このチュートリアルのルール

  1. コンパイラに怒られたら .clone() する — 理由は聞かない

  2. 参照(&)はなるべく使わない — メソッドの &selfだけ例外

  3. 数値型は3つだけ覚えるi32, usize, f64

  4. 動けば正義

何を学ぶか

  • Cargo(Rustのビルドツール)の使い方

  • 変数,型,関数,制御フロー

  • 構造体(struct)と列挙型(enum)

  • VecとString(動的なやつら)

  • OptionとResult(エラーの扱い方)

  • 実践: 四則演算の電卓を作る(Lexer → Parser → Eval)

何を学ばないか

  • 所有権の正確な仕組み

  • ライフタイム

  • 借用チェッカーの詳細

  • トレイト(ちょっとだけ触れる)

  • 非同期処理(async/await)

  • マクロ

  • unsafe

前提知識

何かしらのプログラミング言語を触ったことがある人を対象としている. 変数,関数,if文,ループといった基本的なプログラミングの概念は知っている前提で進める.

環境構築

rustupをインストールする.ターミナルで以下を実行:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

インストールが終わったら確認:

rustc --version
cargo --version

バージョンが表示されればOK.次に進もう.