คู่มือติดตั้ง Rust ฉบับเข้าใจง่าย

คู่มือติดตั้ง Rust ฉบับเข้าใจง่าย

Dev Team · IT ·

คู่มือติดตั้ง Rust ฉบับเข้าใจง่าย

Rust เป็นภาษาโปรแกรมที่เน้นความปลอดภัยของหน่วยความจำ ความเร็ว และ concurrency


ทำไมต้องใช้ Rust?

ข้อดีหลัก:

  1. Memory Safety - ไม่มี null pointers, data races
  2. Zero-cost Abstractions - abstractions ไม่ทำให้ช้าลง
  3. Fearless Concurrency - thread safety ตรวจสอบตอน compile
  4. Modern Tooling - Cargo, rustfmt, clippy
  5. Active Community - ชุมชนใหญ่และเป็นมิตร

การติดตั้งด้วย rustup

rustup เป็นเครื่องมือหลักสำหรับจัดการ Rust versions


การติดตั้งบน Linux และ macOS

ขั้นตอนที่ 1: รันคำสั่งติดตั้ง

เปิด Terminal แล้วรัน:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

ขั้นตอนที่ 2: เลือกตัวเลือก

จะมี prompt ขึ้นมา:

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation

เลือก 1 แล้วกด Enter


ขั้นตอนที่ 3: Configure Shell

รันคำสั่งนี้:

source $HOME/.cargo/env

หรือเพิ่มใน shell config:

สำหรับ Bash:

echo 'source $HOME/.cargo/env' >> ~/.bashrc
source ~/.bashrc

สำหรับ Zsh:

echo 'source $HOME/.cargo/env' >> ~/.zshrc
source ~/.zshrc

การติดตั้งบน Windows

ข้อกำหนดเบื้องต้น

ต้องติดตั้ง Microsoft C++ Build Tools ก่อน:

ขั้นตอนที่ 1: ดาวน์โหลด

ไปที่: https://visualstudio.microsoft.com/visual-cpp-build-tools/

ขั้นตอนที่ 2: ติดตั้ง

  • รัน installer
  • เลือก “Desktop development with C++”
  • กด Install

ติดตั้ง Rust

ขั้นตอนที่ 1: ดาวน์โหลด rustup

ไปที่ https://rustup.rs/

ดาวน์โหลด rustup-init.exe

ขั้นตอนที่ 2: รัน installer

  • รัน rustup-init.exe
  • เลือก 1 (default installation)

ขั้นตอนที่ 3: ตรวจสอบ

เปิด PowerShell:

rustc --version
cargo --version

ตรวจสอบการติดตั้ง

1. ตรวจสอบเวอร์ชัน

rustc --version

ผลลัพธ์:

rustc 1.78.0

2. ตรวจสอบ Cargo

cargo --version

ผลลัพธ์:

cargo 1.78.0

3. ตรวจสอบ installed components

rustup show

การ Update Rust

อัปเดตเป็นเวอร์ชันล่าสุด:

rustup update

เครื่องมือสำคัญ

1. Cargo - Package Manager

Cargo ติดตั้งมาพร้อมกับ Rust แล้ว

คำสั่งที่ใช้บ่อย:

# สร้างโปรเจกต์ใหม่
cargo new my_project

# Build โปรเจกต์
cargo build

# Build แบบ release (optimized)
cargo build --release

# รันโปรเจกต์
cargo run

# รัน tests
cargo test

2. rustfmt - Code Formatter

Format โค้ดให้สวยงาม:

# Format ทั้งโปรเจกต์
cargo fmt

# ตรวจสอบโดยไม่แก้ไข
cargo fmt -- --check

3. Clippy - Linter

ติดตั้ง:

rustup component add clippy

ใช้งาน:

cargo clippy

4. rust-analyzer - IDE Support

สำหรับ VS Code:

code --install-extension rust-lang.rust-analyzer

การตั้งค่า IDE

1. Visual Studio Code (แนะนำ)

ติดตั้ง extensions:

# Rust analyzer (ต้องมี)
code --install-extension rust-lang.rust-analyzer

# Debugger
code --install-extension vadimcn.vscode-lldb

# TOML support
code --install-extension bungcip.better-toml

2. IntelliJ IDEA / CLion

  • Preferences → Plugins
  • ค้นหา “Rust”
  • Install

3. Vim/Neovim

ใช้ coc.nvim:

:CocInstall coc-rust-analyzer

โครงสร้างโปรเจกต์ Rust

my-rust-project/
├── Cargo.toml         # Project manifest
├── Cargo.lock         # Dependency lock
├── src/
│   ├── main.rs        # Entry point
│   └── lib.rs         # Library root
├── tests/             # Integration tests
├── benches/           # Benchmarks
└── examples/          # Examples

ตัวอย่าง Cargo.toml

[package]
name = "my_project"
version = "0.1.0"
edition = "2021"

[dependencies]
serde = { version = "1.0", features = ["derive"] }
tokio = { version = "1.0", features = ["full"] }

[dev-dependencies]
criterion = "0.5"

โปรแกรมแรกของคุณ

สร้างโปรเจกต์ใหม่

cargo new hello_rust
cd hello_rust

โค้ดใน src/main.rs

fn main() {
    println!("Hello, Rust!");
}

รันโปรแกรม

cargo run

ผลลัพธ์:

Hello, Rust!

การจัดการ Rust Versions

ติดตั้ง version เฉพาะ

# เวอร์ชัน specific
rustup install 1.77.0

# Nightly
rustup install nightly

เปลี่ยน version

# เปลี่ยน default
rustup default stable

# เปลี่ยนเฉพาะโปรเจกต์
rustup override set nightly

การใช้งาน Crates.io

ค้นหา crate

cargo search serde

เพิ่ม dependency

cargo add serde
cargo add tokio --features full

อัปเดต dependencies

cargo update

ขั้นตอนถัดไป

1. เรียนรู้พื้นฐาน

  • Variables และ Data Types
  • Functions และ Control Flow
  • Ownership และ Borrowing
  • Structs และ Enums

2. ศึกษา Advanced Topics

  • Lifetimes
  • Traits และ Generics
  • Error Handling
  • Closures และ Iterators

3. สร้างโปรเจกต์

  • CLI Tools
  • Web APIs (Actix-web, Axum)
  • WebAssembly
  • Embedded Systems

แหล่งเรียนรู้

Official:


Happy Coding with Rust!