For Fun

[rust 공식 문서 14일 공부] 6일차

Jㅐ둥이 2024. 12. 14. 02:30
반응형

6.2. The match Control Flow Construct

rust의 강점 중 하나인 match를 알아볼 때네요. match는 바로 패턴 매칭을 할 때 사용됩니다.

패턴 매칭은 상수, 변수, 와일드카드 등 다양한 패턴을 다룰 수 있습니다.

  • 그리고 rust의 패턴 매칭은 모든 경우의 수를 전부 처리한 것인지 컴파일러가 검증해주기 때문에 더 안전하죠!

다음과 같이 간단한 사용 방법이 있습니다.

match의 간단한 사용 예시

살짝 심화 내용으로 넘어가면 값 추출과 Option 활용법이 있습니다.

enum에서 값을 추출하는 예시는 다음과 같습니다.

  • 컴파일 하려고 하니 lifetime 관련 에러가 발생해서 <'a>, &'a 이런 키워드가 추가되었습니다.

enum의 값 추출 사례

 

Option enum을 사용하는 방법도 간단합니다.

Option enum 예시

 

6.3. Concise Control Flow with if let

if let은 match와 동작 방식이 똑같지만 match처럼 모든 경우의 수를 검사하지 않다는 다른 점이 있습니다!

 

아직 rust를 이용해서 프로그래밍을 많이 안해봐서 크게 와닿는 것은 없네요.

 

7. Managing Growing Projects with Packages, Crates, and Modules

챕터 7은 rust를 이용해서 프로젝트를 개발하기 위해 필요한 개념과 지식들을 알려주는 챕터입니다.

 

7.1. Packages and Crates

crate는 rust 컴파일러가 한번에 다룰 수 있는 최소한의 단위입니다.

  • crate는 바이너리 형태, 라이브러리(소스 코드) 형태로 제공됩니다.
  • 라이브러리 crate는 main 함수가 없고 기능을 제공하는 역할만 합니다.

package는 한개 이상의 crate들을 모아서 만든 기능의 집합입니다.

  • cargo도 rust의 패키지 중 하나라네요!

7.2, 7.3, 7.4, 7.5도 모듈을 개발하기 위해 필요한 내용들인데 지금 공부하는 것보다는

나중에 필요할 때 내용을 찾아보는 것이 좋을 것 같습니다!

 

8. Common Collections

이제 rust에서 사용되는 데이터 타입들을 알아보려고 했는데 시간이 많이 늦었네요...

오늘은 여기까지로 마쳐보겠습니다!

 

 

 

 

 

반응형