Dispensables
Dispensable은 무의미하고 불필요한 것으로, 이를 제거하면 코드가 더 깔끔하고 효율적이며, 이해하기 쉬워진다.
주석 (Comments)
메서드에 각종 설명이 담긴 주석으로 가득한 경우
중복 코드 (Duplicate Code)
두 코드 조각이 거의 동일하게 보이는 경우
레이지 클래스 (Lazy Class)
클래스에 대해 이해하고 유지보수하는 것은 항상 시간과 돈을 소모한다. 그러므로, 클래스가 더 이상 불필요하다고 판단하면, 제거해야 한다.
데이터 클래스 (Data Class)
데이터 클래스는 오직 필드와, 필드에 액세스하기 위한 조잡한 메서드(Get/Set)만이 존재하는 클래스를 의미한다. 이는 다른 클래스에서 사용하는 데이터를 담기 위한 컨테이너로 쓰일 뿐이며, 이러한 클래스들은 추가적인 기능을 포함하지 않고, 소유한 데이터에 대해 독립적으로 작업할 수 없다.
죽은 코드 (Dead Code)
(기존에는 사용되었던) 어떤 변수, 파라미터, 필드, 메서드 또는 클래스가 변경 이후에 더 이상 사용되지 않는 경우
추론적 일반성 (Speculative Generality)
(미래를 위해서) 만약을 대비해 생성했으나, 사용하지 않는 클래스, 메서드, 필드 또는 매개변수가 존재하는 경우