Rust 15

Rust 강좌 1. Cargo와 crates.io

안녕하세요? Rust를 공부하고 싶어 복습차원에서 글로 남겨 봅니다. Rust를 좋아하지만, 아직 깊이 파고들고 있는 중이거든요. 첫 번째는 패키지 관리에 대해 간략하게 다뤄보겠습니다. Python, Ruby 또는 Node.js를 사용해 보신 분들은 어느 정도 익숙하실 수도 있습니다. C++에는 전용 패키지 관리자가 없기 때문에, 이 부분이 C++ 개발자들에게 Rust를 매력적으로 만드는 요소 중 하나가 될 수 있을 것입니다. CargoCargo는 Rust의 패키지 관리자입니다. rustup.sh 스크립트를 사용하여 컴파일러를 설치하면 Cargo도 함께 설치됩니다. Cargo는 코드를 빌드하고 의존성을 관리합니다. 또한 새 프로젝트를 시작할 때 기본적인 프로젝트 구조를 생성해 줍니다.$ cargo new..

Rust 2024.08.05

Serde를 활용한 다양한 JSON 열거형 처리 방법 및 주의점

Serde를 활용한 다양한 JSON 열거형 처리 방법 및 주의점열거형의 4가지 표현Externally tagged (기본값)코드 예시실제 동작 예시Internally tagged코드 예시실제 동작 예시Adjacently tagged코드 예시실제 동작 예시Untagged코드 예시실제 동작 예시Untagged 형식의 주의점serde의 다른 기능과의 조합other공통 부분을 별도의 구조체로 추출하기마무리하며JSON은 REST API 호출, 데이터 저장, 다국어 연동 등에 자주 사용된다. 하지만 JSON은 언어에서 지원하는 표현이 정수, 부동 소수점 수, 문자열, 배열, 객체, 그리고 null 정도로만 제한되며, 이보다 복잡한 표현은 이러한 기본 기능을 조합하여 표현해야 한다. 기능을 조합하는 방법에는 여러 가..

Rust 2024.05.19

Rust 난수 생성 완벽 가이드 - rand 크레이트 사용법

Rust 난수 생성 완벽 가이드 - rand 크레이트 사용법의사 난수 생성기 (Pseudo Random Number Generator, PRNG)주기암호학적 의사 난수 생성기rand 크레이트 사용하기Cargo.toml 설정기본 사용법다양한 타입의 난수 생성범위 지정 난수 생성특정 분포에 따른 난수 생성rand_core 크레이트결론이번 글에서는 Rust에서 난수를 생성하는 방법을 쉽게 설명해 드리려고 합니다.난수는 여러 가지 용도로 사용되는데요, 예를 들어 게임에서 무작위 이벤트를 만들거나, 보안 키를 생성하는 등 다양한 분야에서 활용됩니다.그럼, 어떻게 Rust에서 난수를 생성할 수 있는지 알아볼까요?의사 난수 생성기 (Pseudo Random Number Generator, PRNG)먼저, 의사 난수 ..

Rust 2024.05.17

Rust 모듈 사용법 - 크레이트 생성부터 모듈 공개까지 완벽 가이드

Rust 모듈 사용법 - 크레이트 생성부터 모듈 공개까지 완벽 가이드샘플 프로젝트 생성모듈과 크레이트모듈 생성 방법1. 인라인 모듈2. 파일로 모듈 생성디렉터리로 서브 모듈 생성2015 버전 모듈 구조의 유산형제 모듈 간 접근 제어모듈의 경로 이름서브 모듈과 접근 제어모듈의 이름 변경크레이트 외부에서 모듈 사용외부 크레이트 이름 변경extern crate와 모듈 리네이밍모듈을 공개하지 않고 서브 모듈만 공개하기크레이트 내에서만 공개하기lib.rs와 main.rs요약참고 문서샘플 프로젝트 생성Rust 프로젝트를 시작하려면 cargo를 사용하여 새로운 프로젝트를 생성합니다.$ cargo new rust_modulescargo new 명령은 기본적으로 바이너리 프로젝트를 생성합니다. Cargo.toml 파일과..

Rust 2024.05.17

Rust로 좋은 CLI 프로그램 작성하기

커맨드 라인 인터페이스(CLI) 프로그램은 터미널에서 실행되므로, 그래픽 인터페이스가 없는 비GUI 프로그램입니다. 실제로 우리는 매일 ls, ps, top 등과 같은 CLI를 사용하고 있습니다. awesome-cli-apps에는 많은 훌륭한 CLI 프로그램들이 모여 있으니 참고하세요. 저는 러스트로 작성된 ls의 현대적 버전인 exa를 추천합니다.CLI 프로그램 형태CLI 프로그램은 다음과 같은 모습일 것입니다:$ ./program_name [arguments] [flags] [options] 보통 -h 또는 --help를 통해 사용 정보를 확인할 수 있습니다. 예를 들어 cargo 프로그램을 살펴봅시다:$ cargo -hRust's package managerUSAGE: cargo [OPTION..

Rust 2024.03.30