Option Enum

Option 분기 강제

null 대신 Some과 None을 쓰면 값이 없을 가능성을 match나 if let에서 반드시 다루게 된다.

널 대체 흐름

빠짐없는 점검

enum variant

서로 다른 상태를 하나의 타입 안에 명확히 이름 붙여 담는다.

Option<T>

값이 없을 수 있다는 사실을 타입 시그니처에서 바로 드러낸다.

안전한 분기

match는 Some과 None을 빠뜨리면 컴파일 단계에서 알려준다.

값 생성Some/Nonematch안전 처리
현재 동작

Option을 쓰면 실패 가능성을 문서나 주석에 숨기지 않고, 호출자가 코드로 처리해야 하는 계약으로 만든다.