타입스크립트로 잘못된 상태 막기
런타임에서야 터지는 버그의 상당수는 애초에 타입이 그 상태를 표현하도록 허락했기 때문에 생깁니다. 상태 공간을 좁혀 잘못된 상태를 컴파일 단계에서 봉쇄하는 설계 원칙 'make illegal states unrepresentable'을, 태그 유니온·브랜디드 타입·parse don't validate 세 축으로 풀어봅니다.
런타임에서야 터지는 버그의 상당수는 애초에 타입이 그 상태를 표현하도록 허락했기 때문에 생깁니다. 상태 공간을 좁혀 잘못된 상태를 컴파일 단계에서 봉쇄하는 설계 원칙 'make illegal states unrepresentable'을, 태그 유니온·브랜디드 타입·parse don't validate 세 축으로 풀어봅니다.