Rust 학습 No.1~Hello World~
개요
이것은 문외한이 프로그래밍 언어인 Rust를 배웠다는 보도이다.
러스트 쓰면 멋있죠?이런 동기로 공부하고 있다.
기본적으로 자기를 향한 기사여서 별로 친절하지 않다.
학습용 창고
전제 조건
$ sw_vers
ProductName: macOS
ProductVersion: 11.2.2
BuildVersion: 20D80
$ brew -v
Homebrew 3.0.7
Homebrew/homebrew-core (git revision 9077fcaeec; last commit 2021-03-20)
Homebrew/homebrew-cask (git revision 6a506eefa6; last commit 2021-03-20)
환경 구조
Rust 설치
brew install rust
버전 확인
$ rustc --version
rustc 1.50.0
$ cargo --version
cargo 1.50.0
※ 홈brew를 사용하지 않을 경우
curl https://sh.rustup.rs -sSf | sh
프로젝트 작성
생성 명령 실행
각 디렉토리를 생성할 때
cargo new hello
디렉토리를 Rust의 항목으로 설정한 경우cargo init
왠지 npm 같네요.결실
명령을 실행한 후 다음 파일을 생성합니다.
~/w/m/study-rust ❯❯❯ tree
.
├── Cargo.lock
├── Cargo.toml
├── README.md
└── src
└── main.rs
1 directory, 4 files
Cargo.toml
이것은 대략 패키지입니다.덜렁이
Cargo.toml
[package]
name = "study-rust"
version = "0.1.0"
authors = ["MasahikoJinno <[email protected]>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
Cargo.lock
이것은 아마도 야른일 것이다.lock 및 package-lock.덜렁이
Cargo.lock
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
[[package]]
name = "study-rust"
version = "0.1.0"
src/main.rs
원본 파일.
컴파일러 언어를 오랫동안 쓰지 않았기 때문에 이런main 파일식이 그립다.
Hello World까지 자동으로 생성됩니다.
src/main.rs
fn main() {
println!("Hello, world!");
}
실행하다
cargo run
다음 명령을 실행하면build이 진행됩니다.
개발과 학습에 편리하다.
$ cargo run
cargo build
build 전용 명령
$ cargo build
성과물
build에서 성과물은
target/
의 부하로 출력됩니다.tree target
target
├── CACHEDIR.TAG
└── debug
├── build
├── deps
│ ├── study_rust
│ ├── study_rust.d
│ └── study_rust.dSYM
│ └── Contents
│ ├── Info.plist
│ └── Resources
│ └── DWARF
│ └── study_rust
├── examples
├── incremental
│ └── study_rust-i4przhxy7ffj
│ ├── s-fwxjnfzrit-1i3edt1-3t7sykxlxqd6f
│ │ ├── 1h7getjdrqwg6tlu.o
│ │ ├── 1vw2akw1crbzv8ck.o
│ │ ├── 28t2rupsrdt1y5j6.o
│ │ ├── 2pdqpu4d1nj7th54.o
│ │ ├── 2uq22bc1ond0s23k.o
│ │ ├── 36jrlkyjl494ka2w.o
│ │ ├── 3s8quisig1bfe1e2.o
│ │ ├── 5ethmr3ni1xkflzz.o
│ │ ├── dep-graph.bin
│ │ ├── query-cache.bin
│ │ └── work-products.bin
│ └── s-fwxjnfzrit-1i3edt1.lock
├── study-rust
├── study-rust.d
└── study-rust.dSYM -> deps/study_rust.dSYM
12 directories, 19 files
상기 상황에서target/debug/study-rust
는 실행 파일이기 때문에 아래 명령을 사용하여 실행할 수 있다.$ target/debug/study-rust
Hello, world!
명령
rustc 명령을 사용하여build을 진행할 수도 있습니다.
카고 명령을 사용하면 여러 파일을 한꺼번에 컴파일할 수 있다
파일 하나만 대상으로 하려면rustc 명령을 사용할 수도 있습니다.
$ rustc src/main.rs
pwd에서 main
라는 실행 파일을 생성합니다.$ .main
Hello, world!
코드를 빨리 써서 빨리 사용하려면 편리합니다.※ evcxr_리플이라는 리플이라는 크레인도 있어요.
감상
아직 아무것도 하지 않았지만 헬로 월드까지 문턱은 그리 높지 않다.
※ 최소한 3개 지령을 수행하면 헬로월드가 터미널에 표시됩니다.
Hello World의build가 느리다는 것을 느끼지 못했다.
※ 어떤 언어는 build이 느린 것 같다
npm의 카고가 있기 때문에 자바스크립트를 쓰는 사람도 손쉽게 쓸 수 있다고 생각합니다.
Go와 비교하기 쉬워(※) 나도 Go를 만져보고 싶다
※ 컴파일러 언어, 단일 바이너리 등 공통점이 많은 것 같아요.사용법과는 다르지만(그냥 생각하고 있을 수도 있다)
PS
Rust의 컴파일 오류가 아주 친절하네요.
Reference
이 문제에 관하여(Rust 학습 No.1~Hello World~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/mjinno/articles/4db0f1d37e85ee0828f5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)