การใช้งาน Rust
ServBay มอบการสนับสนุนเครื่องมือสำหรับนักพัฒนาที่ต้องการพัฒนา Rust บน macOS ได้อย่างสะดวก ด้วยระบบจัดการแพ็กเกจของ ServBay คุณสามารถติดตั้งและจัดการสภาพแวดล้อม Rust compiler อย่าง rustc
และระบบสร้างโค้ดและจัดการแพ็กเกจ cargo
ได้อย่างง่ายดาย
ภาพรวม
แนะนำภาษา Rust
Rust เป็นภาษาโปรแกรมระบบรุ่นใหม่ที่เน้นเรื่องประสิทธิภาพ ความปลอดภัยของหน่วยความจำ และการประมวลผลพร้อมกัน ออกแบบโดย Graydon Hoare แห่ง Mozilla Research และเปิดตัวต่อสาธารณชนครั้งแรกในปี 2010 โดย Rust รุ่นเสถียร 1.0 ออกในปี 2015 จุดเด่นของ Rust คือ การให้ประสิทธิภาพและการควบคุมเทียบเท่า C++ พร้อมกลไกระบบความเป็นเจ้าของ (Ownership) และการยืมใช้ (Borrowing) อันล้ำสมัยที่ตรวจสอบความปลอดภัยหน่วยความจำตั้งแต่ขั้นคอมไพล์ ช่วยหลีกเลี่ยงข้อผิดพลาดประเภท pointer ที่พบบ่อยในภาษา C/C++ เช่น null pointer, dangling pointer และ data race โดยไม่ต้องใช้ garbage collector
ด้วยคุณสมบัติด้านความปลอดภัย ความเร็ว และการรองรับ parallelism ที่ยอดเยี่ยม ทำให้ Rust กลายเป็นที่นิยมอย่างรวดเร็วในกลุ่มนักพัฒนา และมักได้รับคะแนน “ภาษาโปรแกรมที่นักพัฒนารักที่สุด” ใน Stack Overflow ทุกปี Rust ถูกนำไปใช้หลากหลาย ไม่ว่าจะสร้างระบบระดับล่าง, เว็บ backend (เช่น Actix Web, Rocket), WebAssembly, เครื่องมือ command-line, เกม engine, ระบบฝังตัว และอื่น ๆ
การสนับสนุน Rust ใน ServBay
ServBay จัดการ Rust toolchain เป็นแพ็กเกจแยกเฉพาะ ซึ่งหมายความว่า:
- ติดตั้งง่าย: ไม่ต้องดาวน์โหลดไฟล์ติดตั้งหรือกำหนดค่า
rustup
ให้ยุ่งยาก เพียงคลิกเดียวผ่านหน้าจอกราฟิกของ ServBay - ผสานเข้ากับสภาพแวดล้อม: เมื่อติดตั้งเสร็จ คำสั่ง
rustc
และcargo
จะถูกผสานเข้าในเทอร์มินัลที่ควบคุมโดย ServBay - จัดการรวมศูนย์: จัดการภาษา Rust และเครื่องมืออื่น ๆ ฐานข้อมูล หรือภาษาอื่น ๆ ได้ในหน้ารวมของ ServBay
สิ่งนี้จึงเหมาะสำหรับนักพัฒนาสายระบบ การทำ WebAssembly สร้างเว็บประสิทธิภาพสูง หรือพัฒนาโครงการ Rust ทั่วไป เริ่มต้นได้อย่างรวดเร็วและง่ายดาย
การเข้าถึงแพ็กเกจ Rust
- เปิดแอปพลิเคชัน ServBay
- ที่แถบเมนูด้านซ้าย ให้คลิกที่
แพ็กเกจ (Packages)
- ที่หน้าต่าง
แพ็กเกจ
เลื่อนลงหรือเลือกLanguages
->Rust
- ด้านขวาจะปรากฏแพ็กเกจ Rust ที่มีให้เลือก โดยปกติ ServBay จะให้ toolchain Rust รุ่นเสถียรล่าสุด
การติดตั้ง Rust
หน้ารายการแพ็กเกจจะแสดงสถานะของ Rust toolchain ดังนี้:
- ชื่อแพ็กเกจ: เช่น
Rust
- เวอร์ชัน: หมายเลขเวอร์ชันของ Rust toolchain (ตัวอย่างเช่น 1.86.0)
- สถานะ: แสดง
Installed
(ติดตั้งแล้ว) หรือNot Installed
(ยังไม่ได้ติดตั้ง) - ควบคุม: ปุ่มสำหรับดำเนินการต่าง ๆ
ขั้นตอนติดตั้ง Rust toolchain:
- ตรวจสอบว่าขึ้นสถานะ
Not Installed
- คลิกไอคอน ดาวน์โหลด/ติดตั้ง (Download/Install) ทางขวาสุดของแถว (มักเป็นรูปลูกศรชี้ลง)
- ServBay จะเริ่มดาวน์โหลดและติดตั้ง Rust ให้อัตโนมัติ
- เมื่อติดตั้งสำเร็จ สถานะจะเปลี่ยนเป็น
Installed
และปุ่มควบคุมจะกลายเป็นไอคอน ถอนการติดตั้ง (Uninstall) (รูปถังขยะ)
การจัดการ Rust ที่ติดตั้งแล้ว
- ดูเวอร์ชันที่ติดตั้ง: ตรวจสอบสถานะ
Installed
และหมายเลขเวอร์ชันในรายการ - ถอนการติดตั้ง Rust: หากไม่ต้องการใช้ Rust ที่ถูกจัดการโดย ServBay อีกต่อไป ให้คลิกที่ไอคอน ถอนการติดตั้ง (Uninstall) (รูปถังขยะ) และยืนยันการดำเนินการ
การใช้งาน Rust (Cargo & rustc)
เมื่อติดตั้งแล้ว คุณสามารถใช้คำสั่ง cargo
และ rustc
ในเทอร์มินัลที่เปิดใช้งาน ServBay ได้ทันที
ตัวอย่างคำสั่งที่ใช้บ่อย:
ตรวจสอบเวอร์ชันของ Rust compiler:
bashrustc --version
1ตรวจสอบเวอร์ชันของ Cargo:
bashcargo --version
1สร้างโปรเจกต์ Rust ใหม่ (ด้วย Cargo): Cargo คือเครื่องมือ build และตัวจัดการแพ็กเกจอย่างเป็นทางการของ Rust แนะนำให้ใช้สร้างและจัดการโปรเจกต์เสมอ
bash# สร้างโปรเจกต์ไบนารีชื่อ hello_servbay cargo new hello_servbay --bin cd hello_servbay
1
2
3โครงสร้างโปรเจกต์ที่ได้จะเป็นมาตรฐาน:
Cargo.toml
: ไฟล์ตั้งค่าหลักของโปรเจกต์ (metadata และ dependencies ฯลฯ)src/main.rs
: จุดเริ่มต้นของซอร์สโค้ด
ดู
src/main.rs
(เนื้อหาเริ่มต้น):rustfn main() { println!("Hello, world!"); }
1
2
3คอมไพล์และรันโปรเจกต์:
bash# Cargo จะคอมไพล์โค้ดไปไว้ที่ target/debug และรัน executable ให้อัตโนมัติ cargo run
1
2คุณจะเห็นข้อความ
Hello, world!
บนหน้าจอเทอร์มินัลคอมไพล์อย่างเดียว (โหมด Debug):
bashcargo build
1ไฟล์ executable จะอยู่ที่
./target/debug/hello_servbay
คอมไพล์แบบ Release (โหมดเพิ่มประสิทธิภาพ):
bashcargo build --release
1Executable ที่ได้รับการ optimize จะอยู่ที่
./target/release/hello_servbay
เพิ่ม dependencies: แก้ไขไฟล์
Cargo.toml
ที่ส่วน[dependencies]
เพื่อเพิ่มไลบรารี (หรือ "crates") ที่ต้องการ เช่น เพิ่มเฟรมเวิร์กเว็บที่ได้รับความนิยมactix-web
:toml[dependencies] actix-web = "4" # ระบุเวอร์ชันที่ต้องการ
1
2จากนั้นรัน
cargo build
หรือcargo run
Cargo จะดาวน์โหลดและคอมไพล์ dependencies ให้อัตโนมัติ
การรวมเว็บเซิร์ฟเวอร์ (Deploy Rust Web Application)
Web application ที่พัฒนาด้วย Rust (เช่นด้วยเฟรมเวิร์ก Actix Web, Rocket, Axum, Tokio ฯลฯ) เมื่อคอมไพล์แล้วจะได้ executable ประสิทธิภาพสูงแยกต่างหาก
คุณสามารถรัน binary เหล่านี้ผ่าน terminal ได้โดยตรง เพื่อให้สามารถเข้าถึงผ่านพอร์ตมาตรฐาน (80/443) และใช้ประโยชน์จากการจัดการโดเมนและ SSL ของ ServBay ให้ทำดังนี้:
- สร้างเว็บไซต์ (Website) สำหรับแอป Rust ของคุณใน ServBay
- กำหนดค่าเว็บเซิร์ฟเวอร์ของ ServBay (Nginx, Caddy, Apache) ให้เป็นreverse proxy รับส่งคำร้องจากโดเมนไปยังพอร์ตที่ Rust ฟังอยู่ (เช่น
http://127.0.0.1:8080
)
สรุป
ServBay ช่วยให้การเริ่มต้นพัฒนา Rust บน macOS สะดวกด้วยแพ็กเกจที่ติดตั้งและจัดการได้ง่าย พร้อม compiler rustc
และเครื่องมือ build อันทรงพลัง cargo
ให้คุณโฟกัสกับการเขียนโค้ด Rust ที่มีประสิทธิภาพและเชื่อถือได้ พร้อมการผนวก reverse proxy ของ ServBay คุณยัง deploy เว็บ Rust ได้อย่างราบรื่นบนเครื่องอีกด้วย