업무 · 리만코리아 · 엔더스
소비자몰 주문·결제
주문과 결제 흐름을 구현하고, 거대한 단일 컴포넌트를 기능별로 나눠 유지보수 범위를 명확하게 했습니다.
주요 성과
약 4,000줄 결제 파일 → 기능별 300줄 이내 컴포넌트
주문 정보·상품 정보·가격 계산·결제의 책임을 나누고 Pinia 상태도 모듈화해 변경 범위를 기능 단위로 구분할 수 있게 했습니다.
신용카드·간편결제를 소비자몰 주문 흐름에 연결
PayTag를 연동해 신용카드·카카오페이·페이코 결제 기능을 구현하고 주문·결제 파트의 설계와 유지보수를 담당했습니다.
파일 분리 기준을 기능의 책임으로 잡기
약 4,000줄의 결제 파일에 주문 정보·상품·가격 계산·결제 수단이 함께 있었습니다. 작은 변경에도 넓은 파일에서 영향을 받는 상태와 계산을 찾아야 했기 때문에, 줄 수보다 수정 범위를 명확히 하는 것이 필요했습니다.
주문 정보·상품 정보·가격 계산·결제를 기능별 컴포넌트로 나눴습니다. 각 컴포넌트를 300줄 이내로 유지하면서 어떤 기능을 바꿀 때 어디를 수정해야 하는지 구분할 수 있게 했습니다.
화면을 나눠도 공유 상태가 섞이면 변경 범위가 줄지 않기
컴포넌트를 분리한 뒤에도 장바구니·결제 수단·주문 정보가 같은 상태 관리에 묶여 있으면 책임 경계가 흐려질 수 있었습니다. 화면과 상태를 같은 기능 경계로 정리해야 했습니다.
Pinia 스토어를 모듈화해 각 로직을 독립적으로 다뤘습니다. PayTag로 신용카드와 간편결제를 연동하는 주문·결제 흐름도 이 기능 경계 안에서 개발하고 유지보수했습니다.