最終曎新:

【2026幎版】Rustの始め方 — 安党で高速なプログラミングの第䞀歩


Rust 孊習パス STEP 1 rustup Install STEP 2 所有暩 Ownership STEP 3 Cargo ビルドツヌル STEP 4 ゚ラヌ凊理 Result/Option STEP 5 実践 Projects 所有暩の3぀のルヌル 1 所有者は垞に1぀だけ 2 Move で所有暩が移動 3 Borrow で䞀時的に貞出 Cargo 基本コマンド cargo new cargo build cargo run cargo test + crates.io で䟝存管理
Rust孊習パスのむメヌゞ
🎚 難易床 ★★★ 䞊玚者向け
⏱ 孊習時間の目安 読むだけ15分、所有暩の抂念を理解するたで数日〜数週間
📚 前提知識 C・Go・Pythonなど他のプログラミング蚀語の経隓
✅ このガむドで孊べるこず
  • rustupでのむンストヌルずcargoの䜿い方
  • 所有暩・借甚・ラむフタむムの抂念を理解する
  • ゚ラヌハンドリングResult/Option
  • cratesによる䟝存管理

セットアップ手順

# rustupでむンストヌル掚奚
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env

# バヌゞョン確認
rustc --version
cargo --version

# 新芏プロゞェクト䜜成
cargo new myapp
cd myapp
cargo run

cargoコマンド早芋衚

cargo new プロゞェクト名   # 新芏䜜成
cargo build               # ビルドデバッグ
cargo build --release     # ビルド最適化
cargo run                 # 実行
cargo test                # テスト
cargo check               # 型チェックのみ速い
cargo add パッケヌゞ名     # 䟝存パッケヌゞ远加
cargo fmt                 # フォヌマット
cargo clippy              # リント

はじめおのコヌド所有暩の䟋

fn main() {
    // 所有暩の移動move
    let s1 = String::from("hello");
    let s2 = s1; // s1の所有暩がs2に移る
    // println!("{}", s1); // ゚ラヌs1はもう䜿えない

    // 借甚borrow
    let s3 = String::from("world");
    print_str(&s3); // 参照を枡す所有暩は移動しない
    println!("{}", s3); // ただ䜿える

    // ゚ラヌハンドリング
    let result: Result<i32, String> = Ok(42);
    match result {
        Ok(n) => println!("成功: {}", n),
        Err(e) => println!("倱敗: {}", e),
    }
}

fn print_str(s: &str) {
    println!("{}", s);
}

よくある詰たりポむント

Q: 所有暩゚ラヌが倚すぎお先に進めない → これはRust特有の壁で、倚くの孊習者が経隓したす。たずは clone() で回避しながら動くコヌドを䜜り、埐々に借甚・参照に眮き換えおいく方針が効果的です。

Q: lifetime ゚ラヌが難しすぎる → 最初はラむフタむムを明瀺的に曞かなくおも枈むコヌドラむフタむム省略芏則が適甚されるケヌスから始めたしょう。コンパむラの゚ラヌメッセヌゞが非垞に䞁寧なので、必ず読んでみおください。

Q: コンパむルが遅い → Rustはコンパむル時間が長めです。開発䞭は cargo check型チェックのみを䜿うず速く確認できたす。

ひよこ ひよこ

最近Rustっお名前をよく聞くんだけど、どんな蚀語なの

ペンギン先生 ペンギン先生

Rustはメモリ安党性ず高速性を䞡立したプログラミング蚀語だよ。普通、メモリを安党に管理するにはガベヌゞコレクションGCっおいう仕組みが必芁なんだけど、RustはGCなしで安党性を保蚌するんだ。C蚀語やC++䞊みに速いのに、メモリ関連のバグがコンパむル時に匟かれるから、安党で速い、たさにいいずこ取りの蚀語だね。

ひよこ ひよこ

GCなしで安党っお、どうやっお実珟しおるの

ペンギン先生 ペンギン先生

それが「所有暩ownership」っおいうRust独自の仕組みだよ。すべおの倀には「所有者」が1぀だけいお、所有者がスコヌプを抜けるずメモリが自動的に解攟されるんだ。倀を別の倉数に枡すず所有暩が「移動move」しお、元の倉数はもう䜿えなくなる。䞀時的に貞し出したいずきは「借甚borrow」を䜿う。このルヌルをコンパむラが厳密にチェックするから、実行時にメモリ関連のバグが起きないんだよ。

ひよこ ひよこ

なるほど で、Rustを始めるにはたず䜕をすればいいの

ペンギン先生 ペンギン先生

たずはrustupっおいう公匏のむンストヌラを䜿うよ。公匏サむト rustup.rs にアクセスしお、衚瀺されるコマンドを実行するだけ。rustupはRustのバヌゞョン管理ツヌルも兌ねおいお、安定版・ベヌタ版・ナむトリヌ版を簡単に切り替えられるんだ。むンストヌルが終わったら「rustc --version」で確認しおみおね。

ペンギン先生 ペンギン先生

ここで「cargo new hello-rust」→「cd hello-rust」→「cargo run」を実行しおみおね。「Hello, world!」ず衚瀺されれば環境構築は完璧だよsrc/main.rsを開いおコヌドを少し倉えお再床「cargo run」しおみるず、コンパむルの流れが䜓隓できるよ。

ひよこ ひよこ

むンストヌルできたら、次はどうやっおプロゞェクトを䜜るの

ペンギン先生 ペンギン先生

Rustにはcargoっおいう超䟿利なビルドツヌル兌パッケヌゞマネヌゞャが付いおくるよ。「cargo new my-project」で新しいプロゞェクトを䜜成、「cargo build」でビルド、「cargo run」で実行、「cargo test」でテスト実行。この4぀のコマンドだけで基本的な開発サむクルが回せるんだ。䟝存ラむブラリの管理もCargo.tomlっおいうファむルに曞くだけで自動的にダりンロヌド・ビルドしおくれるよ。

ひよこ ひよこ

゚ラヌ凊理っおどうするの他の蚀語だず䟋倖を䜿うけど 

ペンギン先生 ペンギン先生

Rustには䟋倖がないんだ。代わりにResultずOptionっおいう型を䜿うよ。Resultは「成功Okか倱敗Errか」を衚す型で、ファむル読み蟌みやネットワヌク通信みたいに倱敗しうる凊理に䜿う。Optionは「倀があるSomeかないNoneか」を衚す型で、nullの代わりになるんだ。どちらもコンパむラが「ちゃんず゚ラヌケヌスを凊理したか」をチェックしおくれるから、゚ラヌの芋萜ずしが激枛するよ。

ひよこ ひよこ

ラむブラリずかはどこで探せばいいの

ペンギン先生 ペンギン先生

crates.ioっおいう公匏のパッケヌゞレゞストリがあるよ。Webフレヌムワヌクのactix-webやaxum、非同期ランタむムのtokio、シリアラむズのserdeなど、豊富なラむブラリRustではcrateず呌ぶが揃っおる。Cargo.tomlに名前ずバヌゞョンを曞くだけで䜿えるんだ。npmやpipず同じ感芚だね。

ひよこ ひよこ

Rustでどんなものが䜜れるの

ペンギン先生 ペンギン先生

実はかなり幅広いよ。CLIツヌル、WebAssembly、Webサヌバヌ、ゲヌム゚ンゞン、組み蟌みシステムたで䜕でもいける。最近だずWebAssemblyずの盞性が特に泚目されおいお、ブラりザ䞊で高速に動くアプリを䜜れるんだ。孊習リ゜ヌスずしおは、公匏の「The Rust Programming Language」通称The Rust Bookが無料で読めお、これが䞀番おすすめ。日本語蚳もあるよ。

ひよこ ひよこ

Rustっお難しいっお聞くけど、具䜓的にどのあたりが倧倉なの

ペンギン先生 ペンギン先生

䞀番぀たずきやすいのはラむフタむムlifetimeの抂念だね。借甚した参照がい぀たで有効かをコンパむラに教える仕組みなんだけど、耇雑なデヌタ構造を扱うず頭を悩たせるこずがある。あず、非同期凊理もRust独特のクセがあっお、async関数の戻り倀がFutureトレむトを実装した型になるから、トレむト境界の指定が耇雑になりがちなんだ。ただ、最近のRustぱラヌメッセヌゞがずおも芪切だから、コンパむラの指瀺に埓えば倧䜓解決できるよ。

ひよこ ひよこ

RustがLinuxカヌネルに採甚されたっお本圓

ペンギン先生 ペンギン先生

本圓だよ。Linux 6.12022幎末からRustがカヌネルのサポヌト蚀語ずしお正匏に採甚されたんだ。カヌネルのようなシステムプログラミングの䞖界では、メモリ安党性のバグが深刻なセキュリティ脆匱性に぀ながるから、Rustの所有暩システムは倧きな歊噚になる。組み蟌みRustEmbedded Rustの分野も成長しおいお、マむコン䞊でもRustの安党性を掻かした開発ができるようになっおきおいる。C蚀語が長幎独占しおきた領域にRustが食い蟌んでいる、たさに歎史的な転換期だね。

次に孊ぶなら