03 : 코드에서 나는 악취




이 장에서는 어떤 코드가 악취가 나는 코드인지 (당장 리팩터링 해야하는..!) 를 리스트로 나열해준다.

각각의 악취의 해결법은 뒤에 내용에서 더 자세히 다뤄지니, 간단하게 리스트 파악만 하고 넘어가자🤨


악취의 종류

  • 기이한 이름
    • 코드를 명료하게 표현하는데 가장 중요한 요소중 하나이다.
    • 이름만 보고도 각각이 무슨 일을 하고, 어떻게 사용해야 하는지 명확히 알 수 있도록 엄청 신경 쓰자.
  • 중복 코드
  • 긴 함수
  • 긴 매개변수 목록
  • 전역 데이터
  • 가변 데이터
  • 뒤엉킨 변경
  • 산탕총 수술
  • 기능 편애
  • 데이터 뭉치
  • 기본형 집착
  • 반복되는 switch 문
  • 반복문
  • 성의없는 요소
  • 추측성 일반화
  • 임시 필드
  • 메시지 체인
  • 중개자
  • 내부자 거래
  • 거대한 클래스
  • 서로 다른 인터페이스의 대안 클래스들
  • 데이터 클래스
  • 상속 포기
  • 주석


나의 회고🤔

총 24가지의 악취 종류를 나열하고, 간단한 정의 및 해결법을 알려주는 장이었다.

해결방법에서 저자가 정의한 리팩터링 기법명들이 나오는데(함수 추출하기, 함수 선언 바꾸기 등), 뒷 장에서 자세히 다뤄질 내용이라서 아직 잘 모르기 때문에 상당히 지루한 파트였다.

몇가지는 나도 이미 느낀 악취의 종류였고, 어떤 것은 생각해보지 못한 악취도 많았다.

오늘은 “앞으로 이 악취들을 해결해 갈 수 있겠다” 라는 기대감을 가지며, 공부를 마치겠다👍