유효한 조합이 컴파일 타임에 없을 때
·
<frontend>/타입 | 도메인
들어가며저는 불가능한 상태를 타입으로 못 만들게 하는 걸 좋아합니다. 태그드 유니온으로 케이스를 닫아두면 컴파일러가 대신 지켜주니까요. 근데 조건끼리 서로 의존하는 조합 상품 카탈로그 타입을 설계하다가 이게 안 먹히는 경우를 만났습니다. 저희 유전변이해석 도메인은 낯서니까 매우 비슷한 애플스토어 맥북 카탈로그로 재구성했습니다. 상품 주문 화면에서 모듈간 의존이 놀랍도록 유사한 레퍼런스더라구요상품이 조합으로 무한정 늘어난다애플은 "맥북"이라는 한 덩어리로 팔지 않습니다. 네오, 에어, 프로 세 라인이 있고, 같은 라인 안에서도 화면 크기·칩·메모리·저장장치·색상이 다르면 다른 상품입니다. 견적 내면서 하나씩 고르는 그 조합마다 가격이 따로 붙으니까요. 구성 단위로 파는 만큼 상품 가짓수는 곱셈으로 늘어납니..