Rust, Hello world! 예제 만들어 실행하기
글. 수알치 오상문
(1) 커맨드 창에서 다음처럼 입력하여 프로젝트 기본 폴더를 만들고 이동합니다.
(탐색기에서 폴더를 만든 후에 이동해도 됩니다.)
C:\Users\USER>cd \
C:\>md project_rust
C:\>cd project_rust
C:\project_rust>
(2) 이제 Rust Hello 프로젝트를 만듭니다.
cargo new hello <엔터>
Created binary (application) `hello` package
(3) src/main.rs 파일을 찾아봅니다.
hello/src 폴더에 main.rs 파일이 존재합니다.
(4) 텍스트 편집기를 열고, 해당 파일을 엽니다.
이미 헬로우 예제가 작성되어 있는데 C 언어 main 함수 구조와 비슷하면서도 뭔가 다릅니다.
fn main() {
println!("Hello, world!");
}
(5) 커맨드창에서 다음처럼 입력합니다.
cargo run
그러면 컴파일/빌드 작업이 진행되고 실행 결과가 화면에 나타납니다.
C:\project_rust\hello\src>cargo run
Compiling hello v0.1.0 (C:\project_rust\hello)
Finished dev [unoptimized + debuginfo] target(s) in 1.01s
Running `C:\project_rust\hello\target\debug\hello.exe`
Hello, world!
(6) 실제로 만들어진 실행 파일을 찾아서 실행해봅시다.
기본으로 아래 경로에 가면 hello.exe 실행파일을 찾을 수 있습니다.
hello\target\debug
그곳에 있는 hello.exe를 실행하면 잘 동작하는 것을 볼 수 있습니다.
참고로 Rust에서 만든 실행 파일과 DevC++에서 C 언어 hello 실행 파일의 크기를 비교하니 Rust가 10% 정도 더 크지만 큰 의미는 없을 것 같습니다. 실행 코드 안정성에서는 Rust가 더 뛰어나다고 합니다.
Rust는 C 언어처럼 가비지 컬렉터(메모리 쓰레기 청소 기능)를 제공하지 않습니다. (자바나 Go 언어는 가비지 컬렉터 기능이 있기에 메모리 쓰레기 관리가 수월하고 안전한 편이지만 대신에 실행 속도에서 손해입니다.)
그렇다고 Rust가 C 언어처럼 메모리 관리를 방치하진 않습니다. Rust는 메모리 소유권 개념을 통해 C 언어보다 메모리를 더 안전하게 다룰 수 있게 해줍니다. 메모리 소유권은 독특한 개념이라 처음 Rust 프로그래밍을 접한다면 혼란스러울 수 있습니다. 하지만 Rust 컴파일러는 문제 코드에 대한 자세한 디버깅 정보를 제시하므로 너무 걱정할 필요는 없습니다(여전히 메모리 소유권에 대한 개념은 알고 있어야 합니다만).
<이상>
'Rust, Zig' 카테고리의 다른 글
C/C++ 대체 언어, Zig (0) | 2024.04.07 |
---|---|
C++ vs. 러스트 경험기, 옥찬호 개발자 (0) | 2024.03.29 |
Rust 다운로드 및 설치 (0) | 2022.05.25 |
Rust 언어 공식 사이트 (0) | 2022.05.25 |
저수준 고급 프로그래밍 언어 Rust 소개 (0) | 2022.05.25 |