728x90
반응형
😀 책에서 기억하고 싶은 내용을 써보세요.
- 켄트 벡이 제시한 단순한 설계 규칙 네 가지(중요도 순)
- 모든 테스트를 실행한다.
- 중복을 없앤다.
- 프로그래머 의도를 표현한다.
- 클래스와 메서드 수를 최소로 줄인다.
- 테스트를 철저히 거쳐 모든 테스트 케이스를 통과하는 시스템은 '테스트가 가능한 시스템'이다.
- TEMPLATE METHOD 패턴은 고차원 중복을 제거할 목적으로 자주 사용하는 기법이다.
- 자신이 이해하는 코드를 짜기는 쉽다.
=> 하지만 나중에 유지보수할 사람이 코드를 짜는 사람만큼이나 문제를 깊이 이해할 가능성은 희박하다.
🤔 오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요.
- 켄트 벡이 제시한 설계는 결국 지금까지 읽은 클린코드 내용을 지키는 것
- 테스트 코드의 중요성
=> 테스트가 불가능한 시스템은 검증도 불가능하다.
=> SRP를 준수하는 클래스는 테스트가 훨씬 더 쉽다.
=> 테스트 케이스를 만들기 쉬운 코드는 결국 객체 지향의 목표를 저절로 도달하게 된다.
🔎 궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
- TEMPLATE METHOD 패턴
- 전체적으로는 동일하면서 부분적으로는 다른 구문으로 구성된 메서드의 코드 중복을 최소화 할 때 유용하다.
- 상속을 통해 슈퍼클래스의 기능을 확장할 때 사용하는 가장 대표적인 방법. 변하지 않는 기능은 슈퍼클래스에
만들어두고 자주 변경되며 확장할 기능은 서브클래스에서 만들도록 한다. - 토비의 스프링 3.1
- 창발성이란?
- 창발성이란 단순한 결합이 복잡한 결과를 나타내는 것을 의미.
- 각각의 개미는 집을 지을 능력이 없지만, 작은 개미들의 상호작용을 통해 집이라는 결과물이 나온다.
- 이처럼 작은 요소들의 상호작용의 반복이 전체 구조에 영향을 미친다.
👀 소감 3줄 요약
- 테스트 코드 그리고 테스트 코드
- 리팩터링을 통한 중복 제거로 객체 지향적 프로그래밍
- 내가 이해하는 코드로만 짜면 결국 나중에 나도 못 알아볼 수 있다.
반응형
'독서 > 클린코드_노개북' 카테고리의 다른 글
[노개북] 클린코드 27일차 - 노마드 코더 (0) | 2022.02.19 |
---|---|
[노개북] 클린코드 26일차 - 노마드 코더 (0) | 2022.02.19 |
[노개북] 클린코드 24일차 - 노마드 코더 (0) | 2022.02.17 |
[노개북] 클린코드 23일차 - 노마드 코더 (0) | 2022.02.16 |
[노개북] 클린코드 22일차 - 노마드 코더 (0) | 2022.02.12 |