Sử Dụng Rust
ServBay cung cấp bộ công cụ phát triển Rust tiện lợi dành cho các lập trình viên muốn phát triển với Rust trên macOS. Thông qua hệ thống quản lý gói phần mềm của ServBay, bạn có thể dễ dàng cài đặt và quản lý môi trường biên dịch Rust, bao gồm trình biên dịch rustc
và hệ thống xây dựng kiêm quản lý gói cargo
.
Tổng Quan
Giới Thiệu Ngôn Ngữ Rust
Rust là một ngôn ngữ lập trình hệ thống hiện đại tập trung vào hiệu năng, an toàn bộ nhớ và khả năng song song. Ngôn ngữ này do Graydon Hoare tại Mozilla Research phát triển lần đầu và công bố vào năm 2010; phiên bản ổn định 1.0 ra mắt năm 2015. Rust được thiết kế để mang lại hiệu năng và mức kiểm soát như C++, đồng thời đảm bảo an toàn bộ nhớ nhờ hệ thống ownership (sở hữu) và borrowing (mượn) sáng tạo, giúp phát hiện lỗi tại thời điểm biên dịch. Điều này giúp loại bỏ được các lỗi phổ biến của C/C++ như con trỏ null, con trỏ treo và tranh chấp dữ liệu, mà không cần đến bộ gom rác.
Nhờ sự an toàn, tốc độ và khả năng xử lý đồng thời mạnh mẽ, Rust nhanh chóng phổ biến trong cộng đồng lập trình và nhiều năm liền được bình chọn là “ngôn ngữ lập trình được yêu thích nhất” trên khảo sát Stack Overflow. Rust được sử dụng rộng rãi trong phát triển hệ thống, dịch vụ web back-end (như Actix Web, Rocket), WebAssembly, công cụ dòng lệnh, engine game, hệ nhúng, v.v.
Hỗ Trợ Rust Trên ServBay
ServBay quản lý bộ công cụ Rust như một gói phần mềm độc lập. Điều này mang lại các lợi ích:
- Cài đặt dễ dàng: Không cần tải gói thủ công hay phải cấu hình phức tạp với
rustup
, bạn có thể cài đặt chỉ với một cú nhấp trong giao diện đồ họa của ServBay. - Tích hợp môi trường: Sau khi cài đặt, các lệnh
rustc
vàcargo
sẽ được tích hợp tự động vào môi trường terminal do ServBay quản lý. - Quản lý tập trung: Bạn có thể quản lý Rust cùng các ngôn ngữ, hệ quản trị cơ sở dữ liệu và công cụ khác trên cùng giao diện của ServBay.
Điều này tạo một khởi đầu thuận tiện cho các lập trình viên muốn lập trình hệ thống, phát triển WebAssembly, xây dựng dịch vụ web hiệu năng cao hoặc viết các ứng dụng khác với Rust.
Truy Cập Gói Rust
- Mở ứng dụng ServBay.
- Ở thanh điều hướng bên trái, chọn
Gói phần mềm (Packages)
. - Trên trang
Gói phần mềm
, cuộn xuống hoặc chọn từ danh sách phân loại bên trái:Languages
->Rust
. - Vùng bên phải sẽ hiển thị các gói Rust có sẵn. Thông thường ServBay cung cấp ít nhất một phiên bản ổn định của bộ công cụ Rust.
Cài Đặt Rust
Danh sách gói phần mềm sẽ hiển thị trạng thái bộ công cụ Rust:
- Tên gói: Ví dụ
Rust
. - Phiên bản: Số phiên bản của bộ công cụ Rust trong gói (ví dụ 1.86.0).
- Trạng thái: Hiển thị là
Installed
(Đã cài đặt) hoặcNot Installed
(Chưa cài đặt). - Điều khiển: Nút thao tác tương ứng.
Cách cài đặt bộ công cụ Rust:
- Đảm bảo trạng thái là
Not Installed
. - Nhấp vào biểu tượng Tải xuống/Cài đặt (Download/Install) ở ngoài cùng bên phải (thường là mũi tên xuống).
- ServBay sẽ bắt đầu tải về và cài đặt Rust.
- Khi cài đặt thành công, trạng thái sẽ đổi sang
Installed
, và biểu tượng chuyển thành Gỡ cài đặt (Uninstall) (hình thùng rác).
Quản Lý Rust Đã Cài Đặt
- Xem phiên bản đã cài đặt: Trạng thái
Installed
và số phiên bản trong danh sách xác nhận phiên bản Rust bạn đang sử dụng. - Gỡ Rust: Nếu không còn cần đến môi trường Rust do ServBay quản lý, chỉ cần nhấp biểu tượng Gỡ cài đặt (Uninstall) (hình thùng rác) tương ứng và xác nhận thao tác.
Sử Dụng Rust (Cargo & rustc)
Sau khi cài đặt xong, bạn có thể sử dụng các lệnh cargo
và rustc
trong terminal đã được kích hoạt môi trường ServBay.
Một số lệnh thường dùng:
Kiểm tra phiên bản trình biên dịch Rust:
bashrustc --version
1Kiểm tra phiên bản Cargo:
bashcargo --version
1Tạo dự án Rust mới (dùng Cargo): Cargo là công cụ biên dịch và quản lý gói chính thức của Rust, được khuyến nghị để tạo và vận hành dự án.
bash# Tạo một dự án nhị phân mới tên hello_servbay cargo new hello_servbay --bin cd hello_servbay
1
2
3Lệnh này sẽ tạo cấu trúc dự án chuẩn:
Cargo.toml
: Tệp cấu hình dự án (metadata, phụ thuộc...).src/main.rs
: Điểm vào mã nguồn của dự án.
Xem nội dung mặc định của
src/main.rs
:rustfn main() { println!("Hello, world!"); }
1
2
3Biên dịch & chạy dự án:
bash# Cargo sẽ biên dịch mã nguồn, tạo file chạy ở thư mục target/debug, và khởi chạy cargo run
1
2Bạn sẽ thấy thông báo
Hello, world!
trên terminal.Chỉ biên dịch dự án (chế độ Debug):
bashcargo build
1File thực thi nằm tại
./target/debug/hello_servbay
.Biên dịch dự án (chế độ tối ưu Release):
bashcargo build --release
1File thực thi tối ưu sẽ nằm tại
./target/release/hello_servbay
.Thêm gói phụ thuộc: Chỉnh sửa file
Cargo.toml
, thêm thư viện cần thiết vào phần[dependencies]
(các thư viện này gọi là "crate"), ví dụ thêm framework web phổ biếnactix-web
:toml[dependencies] actix-web = "4" # Chỉ định phiên bản mong muốn
1
2Sau đó chỉ cần chạy
cargo build
hoặccargo run
, Cargo sẽ tự động tải và biên dịch các phụ thuộc cần thiết.
Tích Hợp Web Server (Triển Khai Ứng Dụng Web Rust)
Ứng dụng web viết bằng Rust (với các framework như Actix Web, Rocket, Axum, Tokio,...) thường sẽ được biên dịch thành file thực thi riêng biệt với hiệu suất cao.
Bạn có thể chạy trực tiếp file thực thi này từ terminal. Để truy cập bằng các cổng tiêu chuẩn (80/443) và tận dụng quản lý tên miền cùng SSL của ServBay, cách làm khuyên dùng là:
- Tạo một Website cho ứng dụng web Rust trong ServBay.
- Cấu hình web server (Nginx, Caddy, Apache) của ServBay làm reverse proxy, chuyển tiếp các yêu cầu tới tên miền website sang cổng nội bộ nơi ứng dụng Rust đang lắng nghe (ví dụ
http://127.0.0.1:8080
).
Tổng Kết
ServBay giúp đơn giản hóa việc cài đặt và quản lý gói Rust trên macOS, hạ thấp rào cản bắt đầu với Rust. Bộ công cụ rustc
và cargo
mạnh mẽ giúp bạn tập trung viết mã Rust hiệu năng cao, đáng tin cậy. Kết hợp với chức năng reverse proxy của ServBay, việc triển khai dịch vụ web Rust local cũng trở nên tiện lợi hơn rất nhiều.