LISTORY
코드 리팩토링 [ 데이터 클래스 / 방치된 상속물 / 불필요한 주석 ] 본문
1. 데이터 클래스
데이터 클래스는 필드와 필드 읽기 또는 쓰기 메서드만 들어있는 클래스이다. 이러한 클래스는 데이터 보관만을 담당한다.
이렇게 데이터를 보관하는 클래스는 반드시 캡슐화를 진행해야 한다. 또한, 변경되지 않아야 하는 필드의 경우에는 외부에서 쓸 수 없도록 쓰기 메서드 제거를 해야한다.
만일, 다른 클래스에서 데이터를 읽거나 쓰는 부분이 있다면 그 메서드는 데이터 클래스의 메서드로 이동시켜주어야 한다.
2. 방치된 상속물
하위클래스는 부모 클래스의 매서드와 데이터를 상속받는다.
하지만 이 상속받은 데이터나 메서드를 더이상 쓰지 않을 때에는 어떻게 해야 할까?
이럴 경우에는 새 대등 클래스를 작성하여 사용하지 않는 모든 메서드를 넣어주어야 한다.
3. 불필요한 주석
이는 주석을 쓰지 말라는 소리가 아니다. 코드가 구린것을 주석으로 감추지 말아야 한다는 것이다.
어떤 코드 구간의 기능을 설명할 주석이 필요할 경우에는 그 코드 구간을 메서드 추출해야한다.
추출했음에도 주석이 필요하다면 메서드 이름을 변경하여 메서드의 기능을 분명히 하는 이름을 정해주어야 한다.
시스템의 필수적인 상태에 관해 규칙을 설명해야 한가면 어설션 넣기를 실시한다.
즉 주석은 무슨 작업을 해야 좋을지 모를 때, 혹은 어떤 코드를 넣은 이유를 메모할 때 적는 것이 좋다.
'IT > 리팩토링' 카테고리의 다른 글
코드 리팩토링 [ 테스트 작성의 필요성 ] (0) | 2018.04.29 |
---|---|
코드 리팩토링 [ 지나친 관여 / 인터페이스가 다른 대용 클래스 / 미흡한 라이브러리 클래스 ] (0) | 2018.04.22 |
코드 리팩토링 [ 강박적 기본 타입 사용 / switch 문 ] (0) | 2018.04.01 |
코드 리팩토링 [ 잘못된 소속 / 데이터 뭉치 ] (0) | 2018.04.01 |
코드 리팩토링 [ 기능의 산재 ] (0) | 2018.04.01 |
Comments