[워밍업 클럽 스터디 2기] 1주차 발자국
1주차 발자국 미션 정리
Readable Code: 읽기 좋은 코드(인프런, 박우빈)
- 한 주간 배운 내용 요약하기
- 추상: 추상이란 중요한 정보는 가려내어 남기고, 덜 중요한 정보는 생략하여 버린다는 것을 의미한다. 추상화의 과정에 있어 그 정도, 즉 추상화의 레벨이 일정해야 가독성이 있는 코드를 작성할 수 있다는 것을 배울 수 있었다.
- 논리, 사고의 흐름 : 개발자는 여러가지 정보들을 생각하면서 코드를 짜야한다. 계속 생각해야 하는 정보들을 가능한 한 줄이며 개발을 진행해야 추후 개발에 있어서 실수를 안하게 된다는 것을 배울 수 있었다.
- 객체 지향 패러다임 : 객체지향의 5대원칙이라고 불리는 SOLID에 대해 정리할 수 있었다. 또한 기존 코드를 리팩토링 하면서, 높은 응집도와 낮은 결합도를 어떻게 구현할 수 있는지 실습할 수 있어 좋은 시간이었던 것 같다.
- 객체지향의 적용하기 : 코드 레벨에서 객체지향 원칙을 지키기 위한 방법에 대해 학습했다. 예를 들면 상속과 조합, 일급 컬렉션, 다형성을 활용한 코드 리팩토링 등을 진행하였고, 코드를 바탕으로 학습한 내용을 적용해보니 더욱 좋았던 것 같다.
- 미션 해결 과정
day2 미션 : 강의 내용에서의 추상과 구체에 대한 나만의 예시를 생각하는 미션이었다. 최근에 카카오 로그인을 구현한 경험이 있어서 '카카오 로그인하기'라는 추상을 구현했던 과정을 바탕으로 구체적으로 작성하였다.
day4 미션: 제시된 코드를 강의에서 배운 내용대로 리팩토링하는 미션이었다. 불필요한 조건문이 보였고, 이를 수정하였고, 클래스를 따로 만들어서 데이터의 직접적인 접근을 해당 객체에 위임하였다. 그리고 추상화 레벨을 유지하면서 적절하게 메서드를 구성하였다.
- 회고
- 강의 : 많이 타이트 했던 것 같다. 하루에 2~3시간 분량의 진도표를 따라갔는데, 프로젝트와 병행하니 시간 분배가 어려웠다. 띄엄띄엄 수강하다보니 집중이 덜 되었기에 다음주부터는 최대한 시간을 확보하여 한 챕터를 온전하게 다 들을 수 있도록 하거나 해야할 것 같다.
- 미션 : 미션 해결 과정이 어려운 편은 아니었으나, 커뮤니티에 올라온 다른 분들의 다양한 접근 방법을 살펴볼 수 있어 좋았던 것 같다.
댓글을 작성해보세요.