27년 된 리팩터링 책을 AI 코딩 시대에 다시 읽어야 하는 이유: 변경이 쉬운 코드와 응집성·결합도
세상에 나온 지 27년 된 책 '리팩터링'을 다시 펼치는 이유
1999년 출간된 마틴 파울러의 『리팩터링』은 2018년 2판이 나왔고, 기사 필자는 AI 코딩 에이전트가 보편화된 지금도 동작하는 코드를 고치며 배우는 일이 중요하다고 주장한다. 좋은 코드의 기준을 ‘변경이 쉬운 코드’로 보고, 높은 응집성과 느슨한 결합도를 그 목표로 제시한다. 기사는 좋은 코드를 가늠하는 확실한 방법이 ‘수정하기 쉬운 정도’라는 『리팩터링』의 관점을 소개한다. 코드 베이스가 커지면 사람이 전체를 인지하기 어려워 복잡성이 생기고, 이를 다루기 위해 함수·클래스·패키지 단위로 코드를 덩이 짓고 이름을 붙여 덩이 안의 상호작용은 늘리고 덩이 사이의 상호작용은 줄이는 방식을 설명한다. 이것이 곧 높은 응집성과 느슨한 결합도다. 필자는 AI 코딩 에이전트에 “높은 응집성과 느슨한 결합도로 만들어줘”라고 지시하는 것만으로는 충분하지 않다고 본다. 생성된 코드의 응집성과 결합도를 검증하려면 개발자 자신이 그 차이를 구분할 지식을 갖춰야 하며, 그렇지 않으면 초보자가 전문가를 이끄는 역전된 학습과 인지적 부채만 쌓인다고 지적한다. 기사는 SI 프로젝트에서 이전 코드를 다시 작성하며 배우는 개발자의 사례와 『리팩터링』·켄트 벡의 『Tidy First?』가 구체적인 코드 개선 예시로 가득하다는 점을 들어, 이런 역량은 추상적 설명이 아니라 직접 코드를 고치는 경험에서 생긴다고 정리한다.
AI 코딩 에이전트가 생성한 코드를 검토하려면 『리팩터링』이 제시한 응집성과 결합도의 기준을 직접 적용할 수 있어야 한다.
원문 출처
요즘IT (Yozm IT)