Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back

클린코드: 6장 객체와 자료구조

#clean_code
1년 전
208

TIL

  • 변수를 private으로 설정하더라도 각 값마다 get, set 함수를 제공한다면 구현을 외부로 노출하는 셈이다.

  • 변수 사이에 함수라는 계층을 넣는다고 구현이 저절로 감춰지지는 않는다. 구현을 감추려면 추상화가 필요하다.

  • 객체에게는 뭐라고 하라고 말해야지 속을 드러내라고 말하면 안 된다.

일자

2024.02.04

오늘 읽은 범위

6장 객체와 자료구조

책에서 기억하고 싶은 내용

  • 변수를 프라이빗으로 설정하더라도 각 값마다 get, set 함수를 제공한다면 구현을 외부로 노출하는 셈이다. 119

  • 변수 사이에 함수라는 계층을 넣는다고 구현이 저절로 감춰지지는 않는다. 구현을 감추려면 추상화가 필요하다! 119

  • 개발자는 객체가 포함하는 자료를 표현할 가장 좋은 방법을 심각하게 고민해야한다.119

  • 디미터 법칙은 잘 알려진 휴리스틱으로, 모듈은 자신이 조작하는 객체의 속사정을 몰라야 한다는 법칙이다. 123

  • 자료구조는 무조건 함수 없이 공개 변수만 포함하고 객체는 비공개 변수와 공개 함수를 포함한다면, 문제는 훨씬 간단하리라. 123

  • 객체에게는 뭐라고 하라고 말해야지 속을 드러내라고 말하면 안 된다. 125

  • 어떤 시스템을 구현할 때, 새로운 자료 타입을 추가하는 유연성이 필요하면 객체가 더 적합하다. 다른 경우로 새로운 동작을 추가하는 유연성이 필요하면 자료 구조와 절차적인 코드가 더 적합하다. 우수한 소프트웨어 개발자는 편견 없이 이 사실을 이해해 직면한 문제에 최적인 해결책을 선택한다. 128

오늘의 소감

객체와 자료구조의 적절한 쓰임새를 알 수 있었다. 지금까지는 (무지해서) 난잡하게 코드를 작성해왔던 것 같다. 조금 더 각 쓰임새에 맞게 작성하는 습관을 들여야겠다.

궁금하거나 잘 이해되지 않는 내용