본문 바로가기
Language & Framework

AI 시대, 더욱 중요해진 클린 코드 - 백기선의 리팩토링 강의 후기

by Jordy-torvalds 2025. 8. 18.

8년차 백엔드 엔지니어로서 AI 시대를 맞이하며 느끼는 것이 있다. 많은 개발자들이 "이제 AI가 코드를 다 짜주니까 코드 품질은 중요하지 않다"고 생각하는데, 오히려 반대다. AI도 결국 사람과 같이 사고하고, 좋은 이름과 명확한 구조가 있어야 맥락 파악이 쉽기 때문이다.

그런 차에 백기선님의 리팩토링 강의를 듣게 되었는데, 정말 시의적절한 강의였다.

왜 지금 리팩토링이 더 중요한가?

네이버, 아마존, 마이크로소프트를 거친 백기선님의 실무 경험이 고스란히 녹아있는 이 강의에서 가장 인상 깊었던 부분은, 리팩토링이 단순히 코드를 예쁘게 만드는 게 아니라는 점이었다.

예를 들어, 강의에서 나온 이런 메시지 체인을 보자:

this.member.getCredit().getLevel().getDescription()

이런 코드는 AI가 읽기에도 복잡하다. 체인 중 하나라도 바뀌면 클라이언트 코드를 모두 수정해야 하고, AI도 이런 의존성을 파악하는 데 어려움을 겪는다.

하지만 "위임 숨기기" 리팩토링을 적용해 member.getDescription()으로 바꾸면? AI도, 사람도 훨씬 이해하기 쉬워진다.

실무에 바로 적용 가능한 구체적인 예시들

강의의 가장 큰 장점은 예시를 통해 설명해줘서 이해가 쉬웠다는 점이다. 마틴 파울러의 원서는 자바스크립트로 되어 있어 자바 개발자에게는 아쉬웠는데, 백기선님이 자바로 실제 IDE에서 리팩토링하는 과정을 보여주니 바로 이해가 됐다.

특히 "냄새" 중심으로 접근한 것이 좋았다:

1. 이해하기 힘든 이름 (Mysterious Name)

// 나쁜 예
public void processData(List<String> d) { ... }

// 좋은 예  
public void validateCustomerEmails(List<String> customerEmails) { ... }

AI가 코드를 분석할 때도 함수명과 변수명이 명확해야 정확한 개선안을 제시할 수 있다.

2. 긴 함수 (Long Function)

하나의 함수가 여러 일을 하면 AI도 그 함수의 목적을 파악하기 어렵다. "함수 추출하기"로 의도를 명확히 분리하면, AI도 각각의 함수 역할을 정확히 이해할 수 있다.

3. 데이터 뭉치 (Data Clumps)

// 개선 전
public void processOrder(String customerName, String address, String phone) { ... }

// 개선 후
public void processOrder(Customer customer) { ... }

AI가 코드를 수정하거나 테스트를 생성할 때, 매개변수가 객체로 묶여있으면 훨씬 정확한 작업을 할 수 있다.

AI 시대에 더욱 빛나는 리팩토링의 가치

현업에서 AI 도구들을 사용하다 보니 확실히 느끼는 것이 있다. 클린한 코드일수록 AI의 제안도 더 정확하고 유용하다.

  • 코드리뷰 AI는 명확한 함수명과 구조를 가진 코드에서 더 정확한 피드백을 준다
  • 테스트 생성 AI는 단일 책임을 가진 함수에서 더 의미있는 테스트를 만들어낸다
  • 리팩토링 제안 AI는 이미 어느 정도 구조화된 코드에서 더 나은 개선안을 제시한다

실무진의 관점에서 본 강의의 강점

백기선님의 네이버/아마존/마이크로소프트 경험이 느껴지는 부분들이 많았다. 특히 "언제 리팩토링을 멈춰야 하는가"에 대한 실무적 조언이나, 성능과 가독성 사이의 트레이드오프에 대한 언급들이 그렇다.

또한 IDE의 리팩토링 도구를 적극 활용하는 방법도 보여줘서, 이론만이 아닌 실제 개발 워크플로우에 바로 적용할 수 있었다.

마무리: 미래를 준비하는 투자

AI 시대라고 해서 코드 품질이 덜 중요해진 게 아니다. 오히려 AI와 협업하기 위해서라도 더 명확하고 이해하기 쉬운 코드가 필요하다.

백기선님의 리팩토링 강의는 그런 관점에서 정말 시의적절한 강의였다. 마틴 파울러의 고전을 현대적이고 실용적으로 재해석한, 모든 개발자에게 추천하는 강의다.

👉 백기선의 리팩토링 강의 바로가기


8년차 백엔드 엔지니어가 AI 시대를 대비하며 정리한 리팩토링 학습 후기였습니다. 여러분도 미래를 준비하는 투자, 한번 고려해보세요.