18.클래스 추출 Extract Class

두 개의 클래스가 해야 할 일을 하나의 클래스가 하고 있는 경우 새로운 클래스를 만들어서 관련 있는 필드와 메소드를 예전 클래스에서 새로운 클래스로 옮겨라.

클래스는 많은 메소드와 데이터를 가지고 있고 너무 커서 쉽게 이해할 수도 없다.
이제 우리는 그 클래스를 분리할 방법을 생각하고 클래스를 분리해야 한다.
데이터의 부분 집합과 메소드의 부분 집합이 같이 몰려다니는 것은 별도의 클래스로 분리할 수 있다는 좋은 신호이다.

extractClass.png