Làm việc với các gói của bên thứ ba trong Rust With Cargo và Crate
Các gói của bên thứ ba là một phần thiết yếu của quá trình phát triển phần mềm hiện đại. Các gói của bên thứ ba giúp tiết kiệm thời gian và tăng năng suất vì bạn đang sử dụng lại mã đã viết sẵn và đã kiểm tra.
Rust cung cấp hỗ trợ tuyệt vời để làm việc với các gói của bên thứ ba. Hệ sinh thái Rust là nơi chứa nhiều gói của bên thứ ba mà bạn có thể sử dụng để tăng tốc quy trình phát triển của mình.
Với công cụ quản lý gói tích hợp sẵn của Rust, chở hàngbạn có thể cài đặt, quản lý và gỡ cài đặt các gói của bên thứ ba.
Cargo là một công cụ quản lý gói dòng lệnh có sẵn trong Rust—ngôn ngữ lập trình mới thú vị nhất. Nó tương tự như các trình quản lý gói khác như npm cho Node.js và pip cho Python, cho phép các nhà phát triển Rust tải xuống, biên dịch và quản lý các phần phụ thuộc cho các gói Rust. Cargo cũng cung cấp chức năng xây dựng và phân phối gói.
Ngoài ra, Cargo là trình quản lý phụ thuộc, hệ thống xây dựng, khung thử nghiệm và công cụ tạo tài liệu của Rust.
Công cụ Cargo CLI là giao diện chính để sử dụng Cargo. Sau khi cài đặt Rust, bạn có thể chạy giúp chở hàng để xem các chức năng khác nhau mà Cargo cung cấp.
cargo help
Lệnh đưa ra hướng dẫn sử dụng cho công cụ Cargo CLI.
Ngoài ra, bạn có thể thêm một lệnh làm đối số cho giúp đỡ lệnh để xem hướng dẫn sử dụng cho một lệnh cụ thể.
cargo help new
Các giúp mới lệnh xuất ra các hướng dẫn sử dụng cho mới lệnh chịu trách nhiệm tạo các dự án Rust mới.
Sử dụng trong đó lệnh, bạn có thể tạo một gói hàng hóa mới trong một thư mục hiện có.
cargo init
Ngoài ra, bạn có thể sử dụng chạy, xây dựngVà cài đặt các lệnh để chạy, xây dựng và cài đặt các chương trình Rust của bạn.
// executes projects immediately
cargo run// builds projects and outputs executables
cargo build
// installs packages as executables in the /bin directory
cargo install
Các chạy lệnh thực thi gói. Các xây dựng lệnh biên dịch gói và cài đặt lệnh cài đặt nhị phân Rust.
Mục Lục
Làm việc với thùng
Thùng là một phần quan trọng trong hệ thống mô-đun của Rust, cho phép tạo mã mô-đun và có thể tái sử dụng. Với Hàng hóa và thùng, bạn có thể dễ dàng xây dựng và xuất bản các gói hàng.
Crate chỉ đơn giản là một đơn vị đóng gói mã. Crate có thể là thư viện hoặc tệp thực thi chứa tất cả mã, tài liệu và siêu dữ liệu cần thiết để trình biên dịch Rust xây dựng và thực thi mã.
Crate là một hộp chứa tất cả các công cụ và vật liệu cần thiết để hoàn thành một dự án. Các thùng là khép kín và bạn có thể sử dụng chúng một cách độc lập hoặc kết hợp với các Thùng khác để xây dựng một ứng dụng phức tạp hơn.
Cargo giúp dễ dàng tìm và sử dụng các thùng của bên thứ ba cho ứng dụng của bạn bằng cách kết nối với cơ quan đăng ký trung tâm (crates.io) lưu trữ các thùng nguồn mở.
Bạn có thể tìm kiếm các thùng với tìm kiếm hàng hóa lệnh theo sau là tên của thùng.
cargo search serde
Lệnh sẽ trả về danh sách các thùng khớp với cụm từ tìm kiếm.
Khi bạn đã tìm thấy thùng mình cần, bạn có thể thêm thùng vào các phần phụ thuộc của mình trong Cargo.toml tài liệu.
Ngoài ra, bạn có thể xuất bản các thùng của mình trên Crates.io từ thiết bị đầu cuối của bạn với Cargo. Bạn sẽ cần phải tạo một tài khoản trên trang web và đăng nhập bằng đăng nhập hàng hóa lệnh sẽ nhắc bạn dán Mã thông báo API từ trang web. Sau đó, bạn có thể xuất bản thùng của mình với công bố yêu cầu.
cargo publish
Lệnh tải thùng của bạn lên trang web nơi các nhà phát triển Rust khác có thể cài đặt và sử dụng nó trong các dự án của họ.
Quản lý phụ thuộc với hàng hóa
Quản lý phụ thuộc là rất quan trọng để đảm bảo mã của bạn được cập nhật, an toàn và đáng tin cậy. Bạn sẽ cần cập nhật các phụ thuộc để sửa lỗi, cải thiện hiệu suất hoặc thêm các tính năng mới, nếu không, bạn có nguy cơ sử dụng các thư viện lỗi thời hoặc không an toàn có thể gây hại cho dự án của mình.
Quản lý phụ thuộc cũng cho phép bạn kiểm soát các phiên bản của thư viện, tránh xung đột giữa các thư viện và giảm kích thước cơ sở mã của bạn bằng cách sử dụng chức năng dựng sẵn.
Tìm kiếm và cài đặt các gói của bên thứ ba
Cargo tự động tìm kiếm, cài đặt và cập nhật các thư viện cho dự án của bạn, đảm bảo rằng các phụ thuộc của bạn tương thích và cập nhật bằng cách sử dụng Cargo.toml tệp liệt kê tất cả các phụ thuộc của dự án và các phiên bản của chúng.
Sau khi bạn đã tìm thấy gói của bên thứ ba cho ứng dụng của mình với tìm kiếm hàng hóa lệnh, bạn có thể cài đặt gói dưới dạng phụ thuộc với cài đặt hàng hóa yêu cầu.
cargo install <package_name>
Khi chạy lệnh, Cargo sẽ tải xuống gói và các phần phụ thuộc của nó và cài đặt chúng trên máy của bạn.
Thêm phụ thuộc vào Cargo.toml
Bạn có thể thêm các phụ thuộc vào Cargo.toml để cài đặt chúng bằng cách thêm tên gói và phiên bản vào [dependencies] phần của Cargo.toml tài liệu.
[dependencies]
package_name = "1.0.0"
Đây là một ví dụ về cách bạn có thể thêm phổ biến bánh mì gói dưới dạng phần phụ thuộc trong tệp Cargo.toml của bạn trong khi chỉ định phiên bản và tính năng.
[dependencies]
serde = { version = "1.0.154", features = ["derive"] }
Điều này chỉ định rằng bạn muốn cài đặt phiên bản 1.0.154 sau đó bánh mì gói với lấy được tính năng.
Sau khi cài đặt gói, bạn có thể tiến hành nhập gói vào tệp Rust của mình.
use serde::{Serialize, Deserialize};
Báo cáo nhập khẩu với sử dụng từ khóa mang lại tuần tự hóa Và khử lưu huỳnh các đặc điểm vào phạm vi hiện tại, cho phép bạn sử dụng chúng để triển khai tuần tự hóa và giải tuần tự hóa cho các loại dữ liệu Rust của mình.
Bạn cũng có thể chỉ định phạm vi phiên bản bằng ký hiệu dấu mũ (^).
[dependencies]
serde = { version = "^1.0.154", features = ["derive"] }
Tuyên bố xác định rằng bạn muốn sử dụng bánh mì phiên bản gói tương thích với phiên bản 1.0.154.
Cập nhật phụ thuộc
Bạn có thể cập nhật các phụ thuộc với cập nhật yêu cầu. Các cập nhật lệnh kiểm tra các bản cập nhật cho phần phụ thuộc của bạn và tải xuống cũng như cài đặt chúng nếu có.
cargo update
Loại bỏ phụ thuộc
Cuối cùng, bạn có thể xóa một gói khỏi dự án của mình bằng cách xóa tên và phiên bản khỏi Cargo.toml phần phụ thuộc của tệp hoặc gỡ cài đặt các gói bằng gỡ cài đặt yêu cầu.
cargo uninstall <third-party package name here>
Lệnh gỡ cài đặt gói và loại bỏ các phụ thuộc dư thừa. Điều này rất hữu ích để giải phóng dung lượng ổ đĩa và giữ cho môi trường phát triển của bạn sạch sẽ. Gỡ cài đặt gói sẽ không xóa mã hoặc dữ liệu được liên kết với gói khỏi dự án Rust của bạn. Bạn sẽ phải làm điều đó bằng tay.
Sắp xếp Rust Code của bạn để đạt hiệu quả
Các gói của bên thứ ba là yếu tố thay đổi cuộc chơi khi xây dựng các ứng dụng phức tạp và thật đáng kinh ngạc khi bạn có thể nhanh chóng đi từ con số 0 trở thành anh hùng với các gói của bên thứ ba có sẵn trong sổ đăng ký gói của Cargo.
Bạn phải tổ chức mã của mình trong quá trình phát triển để tối đa hóa hiệu quả và khả năng bảo trì. Sắp xếp mã Rust bao gồm sử dụng các mô-đun, phân tách mối quan tâm, tuân theo các quy ước đặt tên và giữ cho mã của bạn KHÔ (Không lặp lại chính mình).