더 심층적인 통찰력을 향한 리팩터링은 다양한 특성과 요소를 포함하는 과정임. 이쯤에서 잠깐 멈춰서서 핵심사항을 통합해보는 것이 도움. 초점을 맞춰야 하는 세가지 사항을 나열한 것
도메인에 리팩터링 시나리오는 한두 명의 개발자가 키보드 앞에 나란히 앉아 개선의 여지가 있는 코드를 발견하고는 즉석에서 해당 코드를 변경하는 것.
→ 이는 리팩터링의 전부는 아님.
더 심층적인 통찰력을 향한 리팩터링을 시작하는 방식은 다양할 수 있음.
전통적인 관점의 리팩터링과는 차이가 있지만 도메인 전문가가 이해하지 못하는 언어를 사용해서 모델이 작성돼 있거나 새로운 요구사항을 자연스럽게 수용할 수 없다면 코드가 깔끔해보여도 이와 유사한 느낌을 받을 수 있음.
리팩터링은 도메인을 더욱 심층적으로 이해한 개발자가 더 명쾌하고 유용한 모델로 개선할 수 있는 여지를 발견하는 과정에서 얻게 된 학습의 결과임
문제를 발견하고 나면 체계적으로 적절한 새로운 모델 요소를 찾아낼 수 있음.