복잡한 비즈니스 로직을 프론트엔드에서 효율적으로 다루기 위해 선택한 설계와 결과를 정리한 결
사이드 프로젝트에서 할인 규칙이 10가지가 넘는 주문 시스템의 프론트엔드를 맡았습니다. 조건문을 컴포넌트 안에 직접 뒀더니 규칙이 하나 바뀔 때마다 여러 컴포넌트를 찾아 수정해야 했고, 코드 리뷰에서도 파악이 어렵다는 피드백이 반복됐습니다. 비즈니스 규칙 레이어를 별도 모듈로 분리하고, 각 규칙을 함수 단위로 단독 테스트할 수 있게 구조를 바꿨습니다. 이후 규칙 변경이 생겼을 때 수정이 1곳으로 줄었고, 관련 버그 발생 횟수도 월 6건에서 1건으로 감소했습니다. UI와 로직을 분리해두면 요구사항 변경에 컴포넌트가 흔들리지 않는다는 것을 이 프로젝트에서 직접 확인했습니다.