[moin-review] 2021-11-15

김_리트리버·2021년 11월 16일
0

Facts

  • 디자인 수정으로 인한 구조 변경 구상 및 회의

Findings

Goodbye, Clean Code — Overreacted

중복없고 잘 추상화된 code 는 만들 당시에는 괜찮을 수 있지만 비즈니스 환경이 변하면서 기능이 다양하게 추가되면 기존에 가정했던 상황, 전제조건이 깨지기 때문에 기능을 추가하거나 수정하기 힘들 수 있다.

무조건 code 의 중복이 없고 가독성 좋은 것이 좋은 것이 아닐 수 있다.

Feelings

Goodbye, Clean Code — Overreacted

기존 모인 웹의 송금단계는 송금금액 입력 → 송금방법선택 → 받는사람 정보 입력 → EDD( 강화된 고객 확인 ) 입력 최대 4단계를 거쳐 진행했다.

때문에 처음에 구조를 설정할 때 최대 4단계로 설정해서 react-rotuer 설정을 진행했다.

근데 오늘 갑자기 디자인팀에서 일본송금시 사진송금할 때만 단계를 추가해야 된다고 요청이 왔다.

결과적으로 원래 최대 4단계에 맞춰 설정한 구조를 변경할 수 밖에 없었다.

내가 공들여서 만들어놓은 구조를 저 하나의 기능 때문에 수정해야 한다는 게 짜증이 났지만

한편으로는 왜 애초에 처음부터 특정국가별, 송금방법별로 예외적인 상황이 있을 수 있다는 것을 설계에 반영하지 못했을 까 하는 아쉬움도 있다.

legacy code 가 너무 지저분하고 if 문으로 떡칠이 되어있어서 이번 송금 과정을 개편할 때

가독성 좋고 깔끔한 code 를 작성하려고 했다.

하지만 code 를 작성할 때의 비즈니스 환경이 앞으로도 유지될 수가 없기 때문에 병적으로 clean-code 에 집착하다가 오히려 달라진 비즈니스 환경에 빠르게 대응하지 못할 수 있겠다는 생각이 들었다.

clean-code 를 성경? 처럼 생각해 왔고 무조건 지켜야 한다고 생각했었지만 과도하게 중복을 제거하고 추상화한 code 는 이후 기능이 추가, 수정될 때 단점으로 작용할 수 있다는 것을 깨달았다.

profile
web-developer

0개의 댓글