채널톡 아이콘

우아한 Rust 중급 (4) - 패턴 매칭

match의 분기가 늘어날수록 값의 구조를 어떻게 확인하고 필요한 부분만 꺼내야 할지 헷갈리기 쉽습니다. 이 강의에서는 튜플·구조체·열거형·슬라이스를 직접 분해해 보고, if let, let else, 매치 가드까지 활용해 조건을 간결하고 정확하게 표현하는 방법을 배웁니다. 참조를 패턴으로 다룰 때 값이 이동하는지 빌려지는지도 예제로 확인합니다.

1명 이 수강하고 있어요.

난이도 중급이상

수강기한 무제한

실습 중심
실습 중심
패턴매칭
패턴매칭
실습 중심
실습 중심
패턴매칭
패턴매칭

수강 후 이런걸 얻을 수 있어요

  • match와 구조 분해 패턴으로 여러 형태의 값을 빠짐없이 처리할 수 있습니다.

  • if let, let else, while let 중 상황에 맞는 문법을 선택할 수 있습니다.

  • 참조 패턴을 읽고 값의 이동과 빌림을 구분할 수 있습니다.

값의 모양을 읽고 필요한 부분을 꺼내는 패턴 문법

Rust에서 match는 값에 따라 코드를 나누는 데서 그치지 않습니다. 튜플·구조체·열거형의 내부 값을 꺼내 이름을 붙이고, 처리하지 않은 경우가 없는지도 확인해 줍니다. 이 강의에서는 짧은 예제를 직접 실행하며 패턴의 기본 규칙부터 조건을 조합하는 방법까지 차근차근 배웁니다.

이런 내용을 배워요

match와 구조 분해

패턴에 따라 값을 분기하고, 모든 경우를 빠짐없이 다루는 방법을 익힙니다. 튜플·구조체·열거형·슬라이스를 분해하면서 필요한 값에만 이름을 붙여 봅니다. let에 쓸 수 있는 패턴과 매칭에 실패할 수 있는 패턴도 구분합니다.

매치 가드 판단 순서

상황에 맞는 패턴 표현

if let, let else, while let으로 한 가지 경우에 집중하는 코드를 작성합니다. OR 패턴·범위·매치 가드·@ 바인딩으로 조건을 표현하고, 참조를 분해할 때 값이 이동하는지 빌려지는지 확인합니다. 마지막에는 배운 문법을 작은 명령 처리 실습에 적용합니다.

슬라이스 패턴

종합 실습: 명령을 해석하는 코드 작성

문자열로 전달된 명령을 패턴으로 구분하고, 필요한 값을 꺼내 처리하는 함수를 작성합니다. 여러 경우를 빠짐없이 다루는지 테스트로 확인하며, 앞에서 배운 구조 분해와 분기 문법을 실제 코드에 적용해 봅니다.

수강 전 참고 사항

실습 환경

  • 운영 체제 및 버전(OS): Windows, macOS, Linux 등

  • 사용 도구: rustup, cargo, VS Code

  • PC 사양: 별도의 고사양은 필요치 않음

학습 자료

  • 온라인 학습 교재

  • 깃허브 소스 코드

선수 지식 및 유의사항

  • 우아한 프로그래밍 언어 러스트 입문 및 활용 강의 수강 권장

  • 우아한 러스트 중급 시리즈 강의 중 일부임

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • Rust의 기본 문법은 익혔지만 복잡한 match 표현식을 읽거나 작성하기 어려운 분

  • 열거형과 구조체의 값을 다루면서 반복되는 조건 검사 코드를 줄이고 싶은 분

  • 패턴에서 ref, &, 매치 가드가 어떻게 동작하는지 예제로 확인하고 싶은 분

선수 지식,
필요할까요?

  • Rust 메모리 소유권 모델에 대한 이해

  • Rust 기초 문법 이해

안녕하세요
김대현입니다.

커리어인증

2,187

수강생

171

수강평

27

답변

4.7

강의 평점

10

강의

함수형 프로그래밍에 관심이 많은 백엔드 개발자입니다. 카카오 개발팀장, NHN 수석, LINE+ 리드를 지내며 개발팀 리딩을 했고, 디노티시아라는 AI스타트업에서 개발팀장으로 일하며 Rust로 프로젝트를 진행했습니다.

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!

김대현님의 다른 강의

지식공유자님의 다른 강의를 만나보세요!

비슷한 강의

같은 분야의 다른 강의를 만나보세요!

얼리버드 할인 중

₩6

37%

₩11,000

평생교육이용권 지원 강의