티스토리 뷰
Rust 는 안전하고 빠르며 동시성이 강한 시스템 프로그래밍 언어입니다. 이번 포스팅에선 Rust의 특징과 설치 방법, 간단한 예제까지 살펴보겠습니다.
1. Rust란?
Rust는 Mozilla에서 개발한 시스템 프로그래밍 언어로, 빠른 속도와 안전한 메모리 관리에 강점을 가지고 있습니다. C/C++의 성능을 유지하면서도 메모리 안전성을 보장하는 것이 가장 큰 특징입니다.
Rust의 주요 특징
- 메모리 안정성: 가비지 컬렉터 없이도 안전한 메모리 관리
- 빠른 성능: C/C++ 수준의 실행 속도
- 동시성 지원: 데이터 레이스 없는 멀티스레딩 제공
- 강력한 패키지 관리: cargo를 이용한 손쉬운 프로젝트 관리
2. Rust의 특징
1. 소유권(Ownership) 시스템
Rust는 소유권 시스템을 통해 Null 포인터, 댕글링 포인터, 데이터 레이스 같은 문제를 원천 차단합니다.
fn main() {
let s = String::from("Hello"); // s가 메모리를 소유
let t = s; // 소유권이 t로 이동, s는 더 이상 사용 불가
// println!("{}", s); // 컴파일 에러 발생
println!("{}", t); // 정상 실행
}
2. 빌드시스템 & 패키지 관리(cargo)
Rust의 패키지 관리 툴인 cargo를 사용하면 프로젝트 생성부터 빌드, 테스트까지 간편하게 관리할 수 있습니다.
# 프로젝트 생성
cargo new rust_project
cd rust_project
# 빌드 & 실행
cargo run
3. Windows에 Rust 설치
- Rust 공식 사이트(https://www.rust-lang.org/) 접속
- rustup-init.exe 다운로드 및 실행
- 설치 완료 후 터미널에서 Rust 버전 및 cargo 버전 확인
# Rust 버전 확인
rustc --version
# cargo 버전 확인
cargo --version
4. Rust 기본 예제
4.1. Rust 프로젝트 생성
cargo new rust_project
- cargo 를 이용하여 Rust 프로젝트를 생성합니다.
4.2. 기본 코드
# main.rs
fn main() {
println!("Hello, world!");
}
- fn main() {}: Rust의 기본 실행 함수
- println!(): Rust에서 문자열을 출력하는 매크로
# cargo 를 이용한 실행
cargo run
# 직접 컴파일 후 실행
rustc main.rs
./main
4.3. 변수와 데이터 타입
fn main() {
let x = 10; // 기본적으로 immutable
let mut y = 20; // mutable 변수
println!("x: {}, y: {}", x, y);
y = 30; // 변경 가능
println!("변경된 y: {}", y);
}
- Rust는 기본적으로 변수의 변경이 불가능(immutable) 하지만, mut 키워드를 사용하면 가변 변수 선언이 가능합니다.
4.4. 반복문과 조건문
fn main() {
let number = 7;
if number < 10 {
println!("10보다 작음!");
} else {
println!("10 이상!");
}
for i in 1..5 { // 1부터 4까지 반복
println!("i: {}", i);
}
}
- if, for, while 등의 제어문도 쉽게 사용할 수 있습니다.
이번 포스팅에선 Rust를 간단한 예제로 살펴봤습니다. Rust는 빠르고 안전한 프로그래밍 언어로 많은 분야에서 사용되고 있습니다. 감사합니다.
최근에 올라온 글
- Total
- Today
- Yesterday