\(@^0^@)/
[BOOK] 노개북 클린코드, 6장 객체와 자료 구조 본문
728x90
오늘 읽은 범위 : 6장, 객체와 자료 구조 (p. 118 ~128)
< 책에서 기억하고 싶은 내용 >
- 객체 지향 코드에서 어려운 변경은 절차적인 코드에서 쉬우며, 절차적인 코드에서 어려운 변경은 객체 지향 코드에서 쉽다.
- 새로운 자료 타입이 필요한 경우에는 클래스와 객체 지향 기법이 가장 적합하다.
- 새로운 함수가 필요한 경우에는 절차적인 코드와 자료 구조가 좀 더 적합하다.
- 디미터 법칙 : 휴리스틱으로, 모듈은 자신이 조작하는 객체의 속사정을 몰라야 한다는 법칙.
- 잡종 구조는 중요한 기능을 수행하는 함수도 있고 공개 변수나 공개 조회/설정 함수도 있다.
- 잡종 구조는 새로운 함수는 물론이고 새로운 자료 구조도 추가하기 어렵다.
- 자료 전달 객체
- 자료 구조체의 전형적인 형태는 공개 변수만 있고 함수가 없는 클래스다.
- 자료 구조체를 때로는 자료 전달 객체(Data Transfer Object, DTO)라 한다.
- 객체는 동작을 공개하고 자료를 숨긴다.
- 그래서 기존 자료 구조에 새 동작을 추가하기는 쉬우나, 기존 함수에 새 자료 구조를 추가하기는 어렵다.
- 새로운 자료 타입을 추가하는 유연성이 필요하면 객체가 더 적합하다.
- 새로운 동작을 추가하는 유연성이 필요하면 자료 구조와 절차적인 코드가 더 적합하다.
< 오늘 읽은 소감? 떠오르는 생각을 가볍게 적어보기 >
클린 코드가 java를 예시로 들고 있기 때문에, 100% 이해가 되지 않는다..
이번에는 흐름만 파악하고 다음에 이 책을 모두 읽고, js버전으로 공부할 때 제대로 학습해봐야 할 것 같다.
< 소감 3줄 요약 >
- 기존 자료 구조에 새 동작을 추가하기는 쉬우나, 기존 함수에 새 자료 구조를 추가하기는 어렵다.
- 새로운 자료 타입을 추가하는 유연성이 필요하면 객체가 더 적합하다.
- 새로운 동작을 추가하는 유연성이 필요하면 자료 구조와 절차적인 코드가 더 적합하다.
[ 출처 : 클린 코드 ]
728x90
'BOOKS > 클린 코드' 카테고리의 다른 글
[BOOK] 노개북 클린코드, 8장 경계 (0) | 2022.03.27 |
---|---|
[BOOK] 노개북 클린코드, 7장 오류 처리 (0) | 2022.03.22 |
[BOOK] 클린코드, 5장 형식 맞추기 (0) | 2022.03.10 |
[BOOK] 클린코드, 4장 주석 (0) | 2022.03.07 |
[BOOK] 클린코드, 3장 함수 (0) | 2022.03.03 |