Struct Refactor

구조체 리팩터링은 위치 기반 값을 이름 있는 필드로 바꾼다

width와 height처럼 의미가 있는 값은 튜플보다 구조체 필드로 표현할 때 읽기와 변경이 안전해진다.

의미 부여 흐름

named fields

튜플 단계

값을 묶을 수는 있지만 0번째, 1번째가 무엇인지 계속 기억해야 한다.

구조체 단계

필드 이름이 문서 역할을 해 면적 계산 같은 로직이 더 읽기 쉬워진다.

트레이트 파생

Debug 같은 파생으로 구조체 상태를 테스트와 출력에서 확인하기 쉬워진다.

튜플필드 이름구조체메서드
필드 의미

구조체는 데이터를 더 많이 감싸는 문법이 아니라, 값 사이의 의미 관계를 타입 이름과 필드 이름으로 남기는 방법이다.