10장 클래스
<aside>
💡 깨끗한 클래스란?
</aside>
1 클래스 체계
- 추상화 : 순차적으로 내려간다 (변수 → 함수)
- 캡슐화 : 변수와 유틸리티 함수는 가능한 숨겨야한다. (테스트 코드에 접근을 허용하는 경우가 있다)
2 클래스는 작아야한다
- 클래스는 작아야한다.
- 함수는 물리적인 행 수로 크기를 책정하고, 클래스는 맡은 책임을 센다.
- 클래스 이름은 해당 클래스 책임을 기술해야 한다
3 단일 책임 원칙(SRP)
- 클래스나 모듈을 변경할 이유는 하나여야 한다
- 큰 클래스 몇 개가 아니라 작은 클래스 여럿으로 이뤄진 시스템이 바람직하다
4 응집도(Cohesion)