| 0104
[공부한 내용]
- 포트폴리오 멘토님 리뷰
- 코딩 테스트 공부
- 백준 9461번(재풀이)
- 백준 2630번(재풀이)
- 백준 7662번
- 오브젝트 책 1장 객체, 설계 공부
- 캡슐화와 응집도
- 불필요한 의존성을 제거하여 결합도를 낮춰야 한다.
- 각 객체들의 역할과 책임을 내부로 감춰 캡슐화를 할 수 있다. 이를 통해 객체의 자율성은 높이고, 결합도는 낮추고, 응집도는 높일 수 있도록 해야 한다.
- 절차지향과 객체지향
- 책임의 이동
- 책임이 어느 한 객체에 집중되어있지 않도록 하는 것이 중요하다.
- 책임이 한 쪽에 치우쳐져 있으면 프로그램은 실행이 되더라도, 리팩토링 및 가독성 측면에서 좋지 않다.
- 그러므로, 객체가 지고 있는 책임 및 역할에 대해 고민을 해야 한다.
- 이를 위해, 현재 객체들이 수행하는 로직이 수동적이지 않은지 확인을 해야 한다.
- 하지만, 항상 정답인 설계는 없다. 적절한 트레이드오프를 통해서 결과물을 만들어 내야 한다.
- 책의 예제
- 동일한 기능, 동일한 상황일 때 결합도를 만족시켜야 하는가, 객체의 자율성을 만족시켜야 하는가에 대한 상황이 놓여져 있다. 이럴 때 어떤 것을 우선시 해야 하는가? 어떤 트레이드 오프가 적절한 것인가? 에 대한 개발팀의 회의를 통한 균형을 설정해야한다.
- 책의 예제
- 캡슐화와 응집도
[하루 정리]
- 오늘은 멘토님이 내 블로그와 작성한 포트폴리오에 대해 리뷰를 해주셨다. 확실히 알았다. 그리고 내가 그동안 가지고 있던 우려나 걱정이 해결이 되었다. 해결된 부분에 대해서 이야기를 짧게 해보겠다.
- 첫째, 내가 잘 하는 것과 부족한 것에 대해 확실히 구분을 짓고 그것을 포트폴리오에 담았다. 흔히 메타인지라고 이야기한다. 내가 아는 것과 모르는 것에 대한 개념이 정리가 되어있어야지 부족한 부분에 대해서도 보완할 수 있다고 생각한다. 그래서, 내용이 너무 부족하지 않은가? 이 내용 하나 더 있으면 낫지 않을까? 하던 생각들을 모두 깔끔하게 정리했다.
- 두번째, 원래 내가 TIL을 작성하는 것에 대해서 고민이 많았다. 처음 작성할 때는 그 날 공부한 모든 것을 TIL에 작성하고 하루 정리 내용도 막 쓸려다 보니, 쉽지 않았다. 또한 길게 쓰다보니 TIL의 의미와는 맞지 않은가? 라는 생각도 들었다. 하지만 지금부터는 그렇지 않다. 길게 쓸 내용이 있을 때는 길게, 짧게 쓸 때는 짧게 날마다 자유롭게 작성할 것이다. 생각해보니 너무 형식에 얽매인 것 같다는 생각도 들었다. 멘토님의 리뷰를 받고 나니 어떠한 방향성을 가져야 할지도 확실히 알 수 있었다.
- 이외에도 받았던 리뷰들을 곧 포트폴리오에 적용도 해보고, 보완할 계획이다.
- 프로그래머스에서 같이 팀을 이뤘던 동생의 추천으로 오브젝트라는 책을 읽기 시작했다. 날마다 한 챕터씩 읽을 계획이다. 오늘은 1장을 읽었는데 정말 재밌다. 그리고 이해하기도 쉽다. 객체지향적인 설계를 하는데 어떻게 해야할지 글이 아닌 코드로 예시를 들어 설명을 해주니 이해하는데 도움이 된다.
(이래서, 개발자들은 글이 아니라 코드로 봐야하는..건가?)
'Memo > 22년 TIL' 카테고리의 다른 글
0106 TIL (오늘 하루 정리하기) (0) | 2022.01.07 |
---|---|
0105 TIL (오늘 하루 정리하기) (0) | 2022.01.05 |
0103 TIL (오늘 하루 정리하기) (0) | 2022.01.03 |
0102 TIL (오늘 하루 정리하기) (0) | 2022.01.02 |
0101 TIL (오늘 하루 정리하기) (0) | 2022.01.02 |