# Cargo & Ecosystem (Rust) > Lệnh Cargo, dependency, feature, build script, workspace, crates.io, tài liệu - 18 câu hỏi phỏng vấn - Mid-Level - [Câu hỏi phỏng vấn: Rust](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van.md) ## 1. Lệnh Cargo nào biên dịch một dự án mà không tạo ra tệp thực thi cuối cùng? **Câu trả lời** Lệnh cargo check biên dịch mã để kiểm tra lỗi mà không tạo ra tệp nhị phân cuối cùng. Lệnh này nhanh hơn nhiều so với cargo build vì nó bỏ qua bước sinh mã máy. Nó lý tưởng trong quá trình phát triển để nhanh chóng xác nhận rằng mã biên dịch đúng. ## 2. Làm thế nào để chỉ định một dependency với phiên bản tối thiểu là 1.2.0 nhưng nhỏ hơn 2.0.0 trong Cargo.toml? **Câu trả lời** Cú pháp serde = "1.2" sử dụng phiên bản hóa ngữ nghĩa mặc định của Cargo. Nó có nghĩa là Cargo sẽ chấp nhận bất kỳ phiên bản nào tương thích với 1.2.0, tức là >= 1.2.0 và < 2.0.0. Ký hiệu này tương đương với serde = "^1.2" và là cách viết theo phong cách chuẩn để chỉ định dependency trong Rust. ## 3. Vai trò của tệp Cargo.lock trong một dự án Rust là gì? **Câu trả lời** Tệp Cargo.lock ghi lại các phiên bản chính xác của tất cả các dependency được sử dụng trong lần biên dịch thành công gần nhất. Điều này đảm bảo các bản build có thể tái tạo bằng cách sử dụng chính xác cùng một phiên bản trên các máy khác nhau. Đối với thư viện, tệp này thường được bỏ qua trong git, nhưng đối với tệp nhị phân và ứng dụng thì nên được đưa vào quản lý phiên bản. ## Còn 15 câu hỏi nữa - Làm thế nào để định nghĩa một feature tùy chọn trong Cargo.toml? - Tệp build.rs ở thư mục gốc của một dự án Cargo dùng để làm gì? Đăng ký miễn phí: https://sharpskill.dev/vi/login ## Các chủ đề phỏng vấn Rust khác - [Cơ bản về Rust](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/rust-basics.md): 25 câu hỏi, Junior - [Ownership & Borrowing](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/ownership-borrowing.md): 22 câu hỏi, Junior - [Structs & Enums](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/structs-enums.md): 20 câu hỏi, Junior - [Xử lý lỗi](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/error-handling.md): 18 câu hỏi, Junior - [Collections](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/collections.md): 20 câu hỏi, Junior - [Modules & Packages](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/modules-packages.md): 18 câu hỏi, Junior - [Traits](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/traits.md): 22 câu hỏi, Mid-Level - [Generics](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/generics.md): 20 câu hỏi, Mid-Level - [Lifetimes](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/lifetimes.md): 20 câu hỏi, Mid-Level - [Iterators & Closures](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/iterators-closures.md): 22 câu hỏi, Mid-Level - [Smart Pointers](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/smart-pointers.md): 22 câu hỏi, Mid-Level - [Concurrency Basics](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/concurrency-basics.md): 20 câu hỏi, Mid-Level - [async/await](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/async-await.md): 22 câu hỏi, Mid-Level - [Testing](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/testing.md): 18 câu hỏi, Mid-Level - [Pattern Matching](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/pattern-matching.md): 18 câu hỏi, Mid-Level - [Macro](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/macros.md): 20 câu hỏi, Mid-Level - [Serde & Serialization](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/serde-serialization.md): 20 câu hỏi, Mid-Level - [Unsafe Rust](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/unsafe-rust.md): 20 câu hỏi, Senior - [Trait nâng cao](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/advanced-traits.md): 22 câu hỏi, Senior - [Lifetime Nâng Cao](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/advanced-lifetimes.md): 20 câu hỏi, Senior - [Type System](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/type-system.md): 20 câu hỏi, Senior - [Tokio & Async I/O](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/tokio-async.md): 22 câu hỏi, Senior - [Tối ưu hóa Hiệu suất](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/performance-optimization.md): 20 câu hỏi, Senior - [Memory Management](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/memory-management.md): 20 câu hỏi, Senior - [Web Frameworks](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/web-frameworks.md): 22 câu hỏi, Senior - [Database Integration](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/database-integration.md): 20 câu hỏi, Senior - [Design Pattern trong Rust](https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/design-patterns.md): 20 câu hỏi, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/vi/technologies/rust/cau-hoi-phong-van/cargo-ecosystem