오르막길
[CleanCode] 9일차 - 6장 TIL 본문
6장
객체와 자료구조
책에서 기억하고 싶은 내용
- 자료 추상화
- 추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료의 핵심을 조작할 수 있어야 진정한 클래스다
- 자료를 세세하게 공개하기 보다는 추상적인 개념으로 표현하는 것이 좋다.
- 자료/객체 비대칭
- 객체지향코드에서 어려운 변경은 절차적코드에서 쉬우며, 절차적코드에서 어려운 변경은 객체지향코드에서 쉽다
- 디미터 법칙
- 모듈은 자신이 조작하는 객체의 속사정을 몰라야 한다.
- 잡종 구조
- 절반은 객체, 절반은 자료 구조인 잡종 구조 탄생
- 자료 전달 객체
- 공개 변수만 있고 함수만 없는 클래스 => 자료 구조체의 전형적 형태
객체는 동작을 공개하고 자료를 숨긴다.
오늘 읽은 소감
여지껏 읽은 내용중에 제일 어려워서 여러번 읽었다.
사실 추상화라는게 개념적으로만 이해하고 제대로 적용해볼 기회가 없었던 것 같다.
그래서 내가 해낸 추상화는 대부분 잡종구조 이지 않았을까? 반성하게 된다.
하지만 이 한줄은 꼭 지키려고 노력해볼 것이다. " 객체는 동작을 공개하고 자료를 숨긴다. "
궁금하거나 더 공부해야할 내용
bean구조 : 자바 (Java) 언어에서 사용되는 용어. 데이터 또는 비즈니스 로직을 캡슐화하는 간단한 Java 객체를 의미. 여러 가지 프로퍼티를 가지며, 이 프로퍼티들은 보통 getter와 setter 메서드를 통해 접근하고 수정 가능
'학습 기록하기 > 클린코드 챌린지' 카테고리의 다른 글
[CleanCode] 14~15일차 - 9장 TIL (1) | 2024.09.06 |
---|---|
[CleanCode] 12~13일차 - 7장 TIL (1) | 2024.09.03 |
[CleanCode] 6~7일차 - 4장 TIL (4) | 2024.08.29 |
[CleanCode] 4~5일차 - 3장 TIL (1) | 2024.08.27 |
[CleanCode] 3일차 - 2장 TIL (0) | 2024.08.25 |