Rust 입문

전지현·2024년 7월 31일

Rust

목록 보기
3/17

https://doc.rust-kr.org/title-page.html
몰랐는데 여기에 rust에 대해서 너무 잘 설명되어 있다.

    println!("Hello, world!");
  1. 러스트에서는 탭 대신 스페이스 4칸을 사용하다.
  2. println!는 러스트의 매크로 호출 코드. 이 코드가 함수 호출 코드였다면 ! 없이 println이라고 되어 있었을 것. !가 붙으면 함수가 아니라 매크로 호출 코드이고, 매크로는 함수와 항상 같은 규칙을 따르지는 않는다.
  • 러스트는 AOT(ahead-of-time-compiled) 언어로, 컴파일과 실행이 별개인 대신 프로그램을 컴파일하여 만든 실행 파일을 러스트가 설치되지 않은 곳에서도 실행할 수 있다는 장점이 있다.

컴파일

$ rustc main.rs

실행

$ ./main # Windows에서는 .\main.exe



Cargo

프로젝트 생성 시 카고를 사용하지 않았어도, Cargo.toml 파일을 알맞게 작성하고 프로젝트 코드를 src 디렉터리로 옮기면, 카고를 사용하는 프로젝트로 변경이 가능합니다.

  • cargo run : 컴파일과 실행을 한 번에 진행. cargo run을 사용하면 cargo build 실행 후 바이너리 경로를 입력해서 실행하는 것보다 편리하므로, 대부분의 개발자들이 cargo run을 이용

  • cargo check : 실행 파일은 생성하지 않고 작성한 소스가 문제없이 컴파일되는지만 빠르게 확인하는 명령어

대부분 주기적으로 cargo check 실행해 코드에서 컴파일 문제가 발생하지 않는지 확인하고, 실행 파일이 필요할 경우에만 cargo build를 사용



  • cargo new로 새 프로젝트 생성.
  • cargo build 명령으로 프로젝트 빌드.
  • cargo run 명령어는 한 번에 프로젝트를 빌드하고 실행할 수 있다.
  • cargo check 명령으로 바이너리를 생성하지 않고 프로젝트의 에러를 체크할 수 있다.
  • 빌드로 만들어진 파일은 작성한 소스 코드와 뒤섞이지 않도록 target/debug 디렉터리에 저장됩니다.

기존에 있던 러스트 프로젝트를 Git으로 가져와서, 해당 디렉터리로 이동하고, 빌드하는 과정은 다음과 같은 명령을 이용

$ git clone someurl.com/someproject
$ cd someproject
$ cargo build



  • 크레이트란?
    Rust의 기본 패키지, 혹은 라이브러리

러스트에서 pakage는 크레이트(Crate) 라고 부릅니다. 컴파일 해서 실행 가능한 것은 binary crate. rand와 같은 다른 프로그램에서 사용되기 위한 라이브러리는 library crate.




추가 참고하면 좋은 사이트:
https://zerotomastery.io/cheatsheets/rust-cheat-sheet/

0개의 댓글