Study/object
[엘레강트 오브젝트] 3-1장 5개 이하의 public 메서드만 노출하세요.
에디개발자
2021. 9. 14. 22:46
반응형
이 글은 엘레강트 오브젝트 새로운 관점에서 바라본 객체지향 도서를 보며 스터디한 글입니다.
책에서 주장하는 내용을 정리하였으며 예제들은 모두 코틀린 코드로 변환하여 작성하였습니다.
목차
- 작은 객체 정의
작은 객체 정의
우아하고 유지보수가 가능하고 응집력이 높고 테스트하기가 용이한 객체는 작은 객체입니다.
작은 객체에 대한 자세한 정의는 적은 public메서드를 갖는 것입니다. 하나의 객체가 하나의 public 메서드와 20개의 private 메서드를 갖는다면 이 객체는 작은 객체로 분류합니다. 이 책에서 주장하는 public 메서드의 개수는 5개 이하로 주장하고 있습니다. ( 하지만 정확하게 5개로 주장하지 않는다 대체로 이정도? )
public | private | |
큰 객체 | 10 | 0 |
작은 객체 | 1 | 20 |
클래스가 작으면 메서드와 프로퍼티가 더 가까이 있을 수 있습니다. 각각의 메서드가 클래스의 모든 속성을 사용합니다. 즉, 높은 응집력을 가지게 됩니다. 만약에 메서드에서 모든 속상값을 사용하지 않는다면 응집력이 낮은 경우입니다. 이럴경우 많은 메서드를 선언하게 되고 결과 좋치 못한 코드를 작성할 수 있습니다.
이번 장은 한 장뿐이라 내용이 적네..
반응형