노마드코더 개발자북클럽 Clean code TIL 6 : 6장. 객체와 자료구조
오늘 TIL 3줄 요약
구현을 감추려면 추상화가 필요하다.
객체 지향 코드에서 어려운 변경은
절차적인 코드에서 쉽다.
절차적인 코드에서 어려운 변경은
객체 지향 코드에서 쉽다.모듈은 자신이 조작하는 객체의 속사정을 몰라야한다.
-> 특히 기차 충돌 코드를 피하라.
TIL (Today I Learned) 날짜
2025. 06.01
오늘 읽은 범위
5장. 형식 맞추기
기억하고 싶은 내용을 써보세요.
- 도형 클래스는 간단한 자료구조로,
도형 동작 방식은 Geometry 클래스에서 구현한다. - 객체라면 내부 구조를 감춰야 한다.
정확히는,
1. 동작을 공개하고
2. 자료를 숨겨라. - 함수나 타입을 보호할지 공개할지에 대한 확신이 부족할 때
잡종 구조가 생긴다. - DTO = 자료 전달 객체
db, 통신을 위한 소켓에서 받은 메시지의 구문을 분석하여
db의 raw data를 애플리케이션의 객체로 변환할 때 유용. - 새로운 자료 타입을 추가하는 유연성이 필요하면 객체가 더 적합하다.
- 새로운 동작을 추가하는 유연성이 필요하다면,
자료구조와 절차적인 코드가 더 적합하다. - 활성 레코드는 자료로 취급하며
비즈니스 규칙를 담고
내부자료(높은 확률로 활성 레코드 인스턴스)를 숨기는 객체는 따로 생성한다.
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
잡종 구조 !!
내가 최근에 구현한 클래스 인 것 같다.
다시 리팩토링 할 까?한 때는 이론적인 책이구나라고 생각했는데,
이 챕터를 읽고 생각이 바뀌었다.
아주 좋은 실례를 다루고 있어서 고개를 끄덕이면서 읽게 되었다.
특히, 활성 레코드의 취급에 대한 부분이 명쾌했다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
댓글
댓글 쓰기