Rust

Rust開発環境のセットアップと基本文法ガイド【2024年版】

ⓘ本ページはプロモーションが含まれています

スポンサードリンク

開発環境のセットアップ

Rust のインストールとバージョン確認(安全に行う方法)

結論
公式ツール rustup を利用すれば、Rust 本体 (rustc) とパッケージマネージャ (cargo) が同時に導入 できます。インストール後は以下のコマンドで 最新の安定版(執筆時点:2024‑04‑15) を確認できます。

1️⃣ curl … | sh のみを実行しない理由

curl https://sh.rustup.rs -sSf | sh は手軽ですが、スクリプトの改ざんリスク が完全に排除できません。安全性を高めるために次の手順を推奨します。

手順 コマンド例 説明
(a) インストーラ本体とハッシュ値を取得 curl -sSfO https://static.rust-lang.org/rustup/dist/x86_64-unknown-linux-gnu/rustup-init
curl -sSfO https://static.rust-lang.org/rustup/rustup-init.sha256
公式サーバーから直接ダウンロード
(b) ハッシュを検証 sha256sum -c rustup-init.sha256 ダウンロードしたファイルの SHA‑256 が公式と一致するか確認
(c) GPG 署名が提供されている場合は検証(2024‑04‑15 時点では未提供) 将来的に提供されたら gpg --verify を実行
(d) 実行権限を付与しインストール chmod +x rustup-init && ./rustup-init -y -y で対話なしインストール(必要なら --no-modify-path

ポイント
LinuxmacOS のみならず、Windows でも公式サイトの MSI パッケージや winget install Rustlang.rustup が利用できます。パッケージマネージャ経由の場合は OS が提供する署名チェックが自動で走ります。

2️⃣ インストール後の環境変数設定

rustup$HOME/.cargo/bin をパスに追加します。シェル起動時に自動で読み込むよう、.profile.zshrc に上記行を追記しておくと便利です。

3️⃣ バージョン確認


VSCode と Rust Analyzer の設定

結論
VSCode に公式拡張機能 Rust Analyzer を導入すれば、コード補完・リアルタイムエラー表示・リファクタリング支援が即座に利用できます。

手順 操作
1️⃣ VSCode 起動 → 拡張機能パネル(左サイドバーの四角いアイコン)
2️⃣ 「Rust Analyzer」で検索し、rust-analyzer をインストール
3️⃣ 設定 (Ctrl+,) で rust-analyzer.cargo-watch.enable = true にチェック 保存時に自動ビルドが走ります
4️⃣ (任意)settings.json に以下を追記して快適化 json<br>{<br> "rust-analyzer.checkOnSave.command": "clippy",<br> "editor.formatOnSave": true<br>}<br>

補足:Qiita 記事のリンク切れについて

元記事で参照されていた 「超超初心者向けRustチュートリアル #Linux」Qiita, automation2025)は 2023 年に削除された可能性があります。代替として、公式の Rust 入門書「The Rust Programming Language」(通称 The Book)の日本語版が最も信頼できる情報源です。


Rust 基本文法と所有権入門

変数・データ型・制御フロー・関数定義

キーワード 用途
let 変数宣言(デフォルトでイミュータブル)
mut 可変性を付与
if / else 条件分岐
match パターンマッチング
for, while, loop ループ構文

ポイント
Rust の式は最後の行が暗黙的に return になるので、return キーワードは省略可能です(早期リターンが必要なときだけ明示します)。

所有権・借用・ライフタイム

用語 説明
所有権 (owner) 値がどこに属しているかを管理。スコープ抜けで自動的に drop される
ムーブ (move) 所有権の転送。元の変数は以後使用不可
借用 (borrow) &T(不変)または &mut T(可変)で所有権を保持したまま参照だけ取得
ライフタイム 参照が有効な範囲。コンパイラが自動推論するが、必要に応じて 'a のように明示

注意
同時に複数の可変参照は許されません(データ競合防止)。不変参照と可変参照も混在できない点に留意してください。


エラーハンドリングと標準ライブラリ活用

ResultOption の基本形

  • Result<T, E> は「成功 (Ok)」か「失敗 (Err)」の二択。
  • Option<T> は「値がある (Some)」か「無い (None)」の二択。
  • ? 演算子は Result / Option のエラープロパゲーションを簡潔に記述でき、早期リターンを自動化します。

標準入力から文字列を受け取り加工する例

  • read_line は改行コードも含むため、trim() で除去しています。
  • to_uppercase() は新しい String を生成し、所有権が戻ります。

Cargo でプロジェクト管理と依存クレート

プロジェクトの作成・ビルド・テスト

  • Cargo.toml[dependencies] にクレート名とバージョンを書くだけで、cargo build 時に自動取得します。
  • プロファイル ([profile.release]) を調整すればリリースビルドの最適化も簡単です。

代表的クレート serdeclap

CLI 引数のパース(clap

JSON 設定ファイルの読み込み(serde

実務的な組み合わせ例
clap で取得したコマンドラインオプションと、serde が読んだ設定ファイルをマージすれば、柔軟かつ型安全な CLI アプリが完成します。


実践ミニプロジェクトとテスト

ステップバイステップで作る「文字列大文字化」CLI ツール

  1. プロジェクト作成
    bash
    cargo new text_upcase --bin
    cd text_upcase

  2. 依存クレート追加(任意)
    clap を利用すれば引数オプションが簡単に実装できます。

  3. main.rs 実装

  1. ビルド・実行例

ユニットテストの書き方と cargo test の活用

コマンド

出力例(省略可能なテストは #[ignore] でスキップできます)。


参考リンク・補足情報

内容 URL
Rust 公式入門書 The Book(日本語版) https://doc.rust-jp.rs/book/
Rust By Example(実例中心) https://doc.rust-jp.rs/rust-by-example/
rustup の公式インストール手順とチェックサム情報 https://rust-lang.org/ja/tools/install
VSCode 用 Rust Analyzer 拡張ページ https://marketplace.visualstudio.com/items?itemName=matklad.rust-analyzer
Cargo の公式リファレンス https://doc.rust-lang.org/cargo/
clap ドキュメント(v4) https://docs.rs/clap/latest/clap/
serdeserde_json のクイックスタート https://serde.rs/

更新情報:本稿は 2024‑04‑15 に執筆されました。Rust の最新安定版は執筆時点で 1.78 系ですが、以降のリリースがあった場合は rustup update で自動的に取得できます。


まとめ

  • 安全なインストール:ハッシュ検証や GPG 署名(将来的に提供されたら)を行い、rustup による最新安定版導入を推奨。
  • IDE 環境:VSCode + Rust Analyzer が最も手軽かつフル機能。
  • 言語基礎:所有権・借用・ライフタイムはコンパイル時安全性の根幹。例示コードで感覚を掴んでください。
  • エラーハンドリングResult / Option + ? が標準的かつ推奨される書き方です。
  • プロジェクト管理:Cargo と代表クレート(serde, clap)を組み合わせれば、実務レベルの CLI が数十行で完成します。
  • テスト#[cfg(test)] にユニットテストを書くだけで回帰防止が容易に。

この流れを踏めば、Rust 初学者でも「安全・高速」なプログラムを書きつつ、実務で通用する開発スキルを身につけられます。

スポンサードリンク

-Rust
-, , , , , , , , ,