책에서 기억하고 싶은 내용을 써보세요.
- 클래스 체계에서 추상화 단계는 순차적으로 내려간다.
- 캡슐화를 풀어주는 결정은 언제나 최후의 수단이다.
- 클래스는 작아야한다.
- 함수가 물리적인 행 수 크기를 측정했다면 클래스는 클래스가 맡은 책임을 센다.
- 클래스 이름은 해당 클래스 책임을 기술해야 한다.
- 단일 책임 원칙(Single Responsibility Principle). 클래스나 모듈을 변경할 이유는 하나뿐이어야 한다.
- 응집도를 높인다.
- 클래스에 속한 메서드와 변수가 서로 의존하며 논리적인 단위로 묶일 수록 응집도가 높아진다.
- 큰 함수를 작은 함수 여럿으로 쪼개면서 작은 클래스 여럿으로 쪼개며 응집도를 높인다.
- 클래스는 확장에 개방적이고 수정에 폐쇄적이어야 한다.
- OCP(Open Closed Principle)
- 변경으로부터 격리시킨다.
- 각 시스템 요소를 다른 요소로부터 그리고 변경으로부터 잘 격리시킨다. (결합도가 낮다.)
- 클래스는 상세한 구현이 아니라 추상회에 의존해야 한다. DIP(Dependency Inversion Principle)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
클래스에서 사용하는 인터페이스나 추상화를 어떻게 사용해야하는지, 또 왜 사용하는지 궁금할 떄가 많았다. 실제로 내가 근무하는 회사에서는 인터페이스나 추상화를 제대로 쓰지 않아서 제대로 알 기회가 없었다. 이번 장을 통해서 인터페이스나 추상화를 사용하는 법. 그리고 이를 통해 좀 더 제대로 된 객체지향 프로그래밍을 알 수 있었다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
@Before, @Test 어노테에션
'독서' 카테고리의 다른 글
[클린코드] 6장 객체와 자료구조 (0) | 2022.03.02 |
---|---|
[클린코드] 5장 형식 맞추기 (0) | 2022.02.28 |
[클린코드] 4장 주석 (0) | 2022.02.26 |
[클린코드] 3장 함수 (0) | 2022.02.24 |
[클린코드] 2장 의미있는 이름 (0) | 2022.02.20 |
댓글