
Cargo & Ecosystem
Cargo コマンド、依存関係、feature、build script、workspace、crates.io、ドキュメント
18 面接問題·
Mid-Level
1最終的な実行ファイルを作成せずにプロジェクトをコンパイルする Cargo コマンドはどれですか?
1
最終的な実行ファイルを作成せずにプロジェクトをコンパイルする Cargo コマンドはどれですか?
回答
cargo check コマンドは、最終的なバイナリを生成せずにコードをコンパイルしてエラーを検証します。このコマンドはマシンコード生成のステップを省略するため、cargo build よりはるかに高速です。開発中にコードが正しくコンパイルされるかを素早く検証するのに最適です。
2Cargo.toml で最小バージョン 1.2.0 かつ 2.0.0 未満の依存関係を指定するにはどうすればよいですか?
2
Cargo.toml で最小バージョン 1.2.0 かつ 2.0.0 未満の依存関係を指定するにはどうすればよいですか?
回答
serde = "1.2" という構文は Cargo のデフォルトのセマンティックバージョニングを使用します。これは Cargo が 1.2.0 と互換性のある任意のバージョン、つまり >= 1.2.0 かつ < 2.0.0 を受け入れることを意味します。この記法は serde = "^1.2" と同等であり、Rust で依存関係を指定する慣用的な方法です。
3Rust プロジェクトにおける Cargo.lock ファイルの役割は何ですか?
3
Rust プロジェクトにおける Cargo.lock ファイルの役割は何ですか?
回答
Cargo.lock ファイルは、直近の成功したコンパイル時に使用されたすべての依存関係の正確なバージョンを記録します。これにより、異なるマシン間でまったく同じバージョンを使用することで再現可能なビルドが保証されます。ライブラリの場合、このファイルは通常 git で無視されますが、バイナリやアプリケーションの場合はバージョン管理すべきです。
4
Cargo.toml でオプションの feature を定義するにはどうすればよいですか?
5
Cargo プロジェクトのルートにある build.rs ファイルの目的は何ですか?
+15 面接問題
その他のRust面接トピック
Rustの基礎
Junior
25問Ownership & Borrowing
Junior
22問Structs & Enums
Junior
20問エラー処理
Junior
18問コレクション
Junior
20問モジュールとパッケージ
Junior
18問Traits
Mid-Level
22問Generics
Mid-Level
20問Lifetimes
Mid-Level
20問Iterators & Closures
Mid-Level
22問Smart Pointers
Mid-Level
22問Concurrency Basics
Mid-Level
20問async/await
Mid-Level
22問Testing
Mid-Level
18問Pattern Matching
Mid-Level
18問マクロ
Mid-Level
20問Serde とシリアライゼーション
Mid-Level
20問Unsafe Rust
Senior
20問高度なトレイト
Senior
22問高度な lifetime
Senior
20問Type System
Senior
20問Tokio & Async I/O
Senior
22問パフォーマンス最適化
Senior
20問Memory Management
Senior
20問Web Frameworks
Senior
22問Database Integration
Senior
20問Rust デザインパターン
Senior
20問