읽기 쉬운 코드는 생산성을 크게 올려주기에, 읽기 어려운 코드에 적극적으로 리팩토링을 도입해야 한다. 그렇다면 뭐가 읽기 어려운 코드일까? 지금부터 "코드 냄새"라고 불리는 아래 내용들을 하나씩 짚어볼 것이다.기이한 이름중복 코드긴 함수긴 매개변수 목록전역 데이터가변 데이터뒤엉킨 변경산탄총 수술기능 편애데이터 뭉치기본형 집착반복되는 switch문반복문성의 없는 요소추측성 일반화임시 필드메시지 체인중개자내부자 거래거대한 클래스서로 다른 인터페이스의 대안 클래스들데이터 클래스상속 포기주석기이한 이름'컴퓨터 과학에서 어려운 건 딱 두 가지, 캐시 무효화와 이름 짓기다.'이름이 이상하면, 코드를 이해하기 어렵다.코드는 단순하고 명료하게.마땅한 이름이 떠오르지 않는다면 설계에 더 근본적인 문제가 숨어 있을 가능성..