오르막길

[CleanCode] 9일차 - 6장 TIL 본문

학습 기록하기/클린코드 챌린지

[CleanCode] 9일차 - 6장 TIL

nanalyee 2024. 9. 1. 22:00
6장
객체와 자료구조

 

책에서 기억하고 싶은 내용
  • 자료 추상화
    • 추상 인터페이스를 제공해 사용자가 구현을 모른 채 자료의 핵심을 조작할 수 있어야 진정한 클래스다
    • 자료를 세세하게 공개하기 보다는 추상적인 개념으로 표현하는 것이 좋다.
  • 자료/객체 비대칭
    • 객체지향코드에서 어려운 변경은 절차적코드에서 쉬우며, 절차적코드에서 어려운 변경은 객체지향코드에서 쉽다
  • 디미터 법칙
    • 모듈은 자신이 조작하는 객체의 속사정을 몰라야 한다.
  • 잡종 구조
    • 절반은 객체, 절반은 자료 구조인 잡종 구조 탄생
  • 자료 전달 객체
    • 공개 변수만 있고 함수만 없는 클래스 => 자료 구조체의 전형적 형태

객체는 동작을 공개하고 자료를 숨긴다.

오늘 읽은 소감

여지껏 읽은 내용중에 제일 어려워서 여러번 읽었다.
사실 추상화라는게 개념적으로만 이해하고 제대로 적용해볼 기회가 없었던 것 같다.
그래서 내가 해낸 추상화는 대부분 잡종구조 이지 않았을까? 반성하게 된다.
하지만 이 한줄은 꼭 지키려고 노력해볼 것이다. " 객체는 동작을 공개하고 자료를 숨긴다. "

궁금하거나 더 공부해야할 내용

bean구조 : 자바 (Java) 언어에서 사용되는 용어. 데이터 또는 비즈니스 로직을 캡슐화하는 간단한 Java 객체를 의미. 여러 가지 프로퍼티를 가지며, 이 프로퍼티들은 보통 getter와 setter 메서드를 통해 접근하고 수정 가능