개발자 99% 커뮤니티에서 수다 떨어요!
오늘 TIL 3줄 요약
클래스는 작아야 한다.
클래스는 응집력이 높아야 한다.
클래스는 추상화에 의존해야 한다.
TIL (Today I Learned) 날짜
2022.03.09
오늘 읽은 범위
10장. 클래스
책에서 기억하고 싶은 내용을 써보세요.
변수 목록 다음에는 공개 함수가 나온다. 비공개 함수는 자신을 호출하는 공개 함수 직후에 넣는다. 즉, 추상화 단계가 순차적으로 내려간다. - p172
캡슐화를 풀어주는 결정은 언제나 최후의 수단이다. - p172
클래스는 작아야 한다. - p172
클래스가 맡은 책임을 센다. - p173
간결한 이름이 떠오르지 않는다면 필경 클래스 크기가 너무 커서 그렇다. 클래스 이름이 모호하다면 필경 클래스 책임이 너무 많아서다. - p175
문제는 우리들 대다수가 프로그램이 돌아가면 일이 끝났다고 여기는 데 있다. - p176
새 기능을 추가하거나 기존 기능을 변경할 때 건드릴 코드가 최소인 시스템 구조가 바람직하다. - p188
상세한 구현에 의존하는 클라이언트 클래스는 구현이 바뀌면 위험에 빠진다. - p189
테스트가 가능할 정도로 시스템의 결합도를 낮추면 유연성과 재사용성도 더욱 높아진다. - p190
본질적으로 DIP는 클래스가 상세한 구현이 아니라 추상화에 의존해야 한다는 원칙이다. - p190
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
클래스도 함수와 마찬가지이다. 클래스는 가능한 적은 책임을 지녀야 한다. 함수가 한 가지 기능만을 수행해야 하듯이.
상속을 적극 활용하여 클래스를 잘게 쪼개자. 새로운 기능을 추가해야 한다면 새로운 클래스를 상속해주면 간편하다.
클래스의 응집도를 높이고 시스템의 결합도를 낮추자. 예를 들어 외부 인터페이스와의 경계를 분리하면 테스트도 용이해진다.
오늘 읽은 다른사람의 TIL
내용과 관련 개념을 유기적으로 정리하여 작성하셔서 이해에 큰 도움이 되었다.