728x90
2개 이상의 인스턴스 변수를 가진 클래스를 쓰지 않는다.
이번 규칙은 3번 규칙과 비슷한 의미를 가진다.
Class Name {
String first;
String middle;
String last;
}
Class Name {
Surname family;
GivenNames given;
}
Class Surname{
String first;
}
Class GivenNames{
List<String> names;
}
GivenNames 클래스에 이름 목록을 만들면, middle, last 또 추가되는 이름값을 받을 수 있게된다.
기존에 3개의 인스턴스를 관리했지만 GivenNames을 만듬으로써 2개의 인스턴스를 관리할 수 있게 되었다.
사실 예제가 이름이라 크게 변화된게 없는데 차로 예를 들면 계층 구조를 가지며 인스턴스를 관리하게 된다.
출처 : https://www.fun-coding.org/PL&OOP1-2.html
이는 객체지향 특징중 상속과 다형성에 해당하게 된다.
이러한 리팩토링 과정을 통해 좋은 객체지향 설계로 이어지게 된다.
728x90
'OOP' 카테고리의 다른 글
[객체지향 생활체조 원칙] 규칙 9. getter/setter/프로퍼티를 쓰지 않는다. (0) | 2022.11.07 |
---|---|
[객체지향 생활체조 원칙] 규칙 8. 일급 컬렉션을 쓴다. (0) | 2022.11.07 |
[객체지향 생활체조 원칙] 규칙 6. 모든 엔티티를 작게 유지한다 (0) | 2022.11.07 |
[객체지향 생활체조 원칙] 규칙 5. 줄여 쓰지 않는다(축약 금지). (0) | 2022.11.07 |
[객체지향 생활체조 원칙] 규칙 4. 한 줄에 점을 하나만 찍는다. (0) | 2022.11.07 |
댓글