더 심층적인 통찰력을 향한 리팩터링은 다양한 특성과 요소를 포함하는 과정임. 이쯤에서 잠깐 멈춰서서 핵심사항을 통합해보는 것이 도움. 초점을 맞춰야 하는 세가지 사항을 나열한 것

  1. 활동의 근거지를 도메인으로 삼음
  2. 현상과 사물을 다른 방식으로 바라보도록 노력함
  3. 도메인 전문가와 지속적으로 대화함

도메인에 리팩터링 시나리오는 한두 명의 개발자가 키보드 앞에 나란히 앉아 개선의 여지가 있는 코드를 발견하고는 즉석에서 해당 코드를 변경하는 것.

→ 이는 리팩터링의 전부는 아님.

시작


더 심층적인 통찰력을 향한 리팩터링을 시작하는 방식은 다양할 수 있음.

전통적인 관점의 리팩터링과는 차이가 있지만 도메인 전문가가 이해하지 못하는 언어를 사용해서 모델이 작성돼 있거나 새로운 요구사항을 자연스럽게 수용할 수 없다면 코드가 깔끔해보여도 이와 유사한 느낌을 받을 수 있음.

리팩터링은 도메인을 더욱 심층적으로 이해한 개발자가 더 명쾌하고 유용한 모델로 개선할 수 있는 여지를 발견하는 과정에서 얻게 된 학습의 결과임

문제를 발견하고 나면 체계적으로 적절한 새로운 모델 요소를 찾아낼 수 있음.

조사팀