김시용
1. 📌 핵심 개념 정리
✅ 요약하기
각자 해당 챕터에서 중요하다고 느낀 개념이나 아이디어를 간략하게 정리하고 개선 전, 후에 대한 예시 코드를 비교하며 개념을 설명합니다.
- 캡슐화
클래스 내 선언된 변수, 함수 등은 외부에서 접근 못하게 private 선언으로 숨기는 것을 의미.
테스트 코드 등을 이유로 같은 패키지에서 접근이 가능하도록 protected로 선언하여 접근 가능하게 하기도 함.
단, 비공개 상태를 유지할 온갖 방법을 강구한 후에 캡슐화를 풀어주는 결정을 최후의 수단으로 사용
- SRP
단일 책임 원칙을 의미하며, 클래스는 작아야하는데 그 '작다'의 척도를 클래스가 맡은 책임을 세는 것으로 한다.
즉, 메서드 갯수가 적다고 클래스가 작은 것이 아니라 책임이 1개여야 작은 클래스라 할 수 있다.
책임이란 클래스가 변경할 이유가 하나여야 한다를 의미한다. 변경할 의미를 파악하려 애쓰다 보면 코드를 추상화하기도 쉬워진다.
-> 작은 클래스 많이 두기 큰 서랍 몇 개에 모두 던져 넣기보다는 작은 서랍 많이 두고 쓸모에 맞게 정리하여 넣기
- 응집도
클래스 내의 인스턴스 변수를 클래스 메서드가 많이 사용할수록 메서드와 클래스의 응집도가 높다.
즉, 응집도란 클래스와 클래스 메서드간의 연관도를 의마한다.
응집도를 유지하면 작은 클래스 여럿이 나온다.
->
2. 🤔 이해가 어려운 부분
🔍 질문하기
책을 읽으며 이해하기 어려웠던 개념이나 명확하지 않았던 내용을 정리합니다.
- 개념 또는 원칙의 이름
- 어려웠던 부분
해당 개념이 헷갈리거나 명확하지 않았던 점을 구체적으로 설명합니다. - 궁금한 점
해당 개념이 어떤 원리로 동작하는지, 실무에서 어떻게 활용되는지 등을 질문 형태로 정리합니다.
- 어려웠던 부분
- 개념 또는 원칙의 이름
- 어려웠던 부분
. - 궁금한 점
.
- 어려웠던 부분
- 개념 또는 원칙의 이름
- 어려웠던 부분
. - 궁금한 점
.
- 어려웠던 부분
3. 📚 참고 사항
📢 논의하기
관련된 자료가 있다면 공유하고, 더 깊이 논의하고 싶은 아이디어나 의견을 정리합니다.
- 관련 자료 공유
- 추가 자료
관련 블로그 글이나 공식 문서 링크를 제공합니다.
- 추가 자료
- 논의하고 싶은 주제
- 주제
논의하고 싶은 내용을 간략히 정리합니다. - 설명
논의하고 싶은 이유를 작성합니다.
- 주제