[워밍업 클럽 스터디 2기::백엔드] 1주차 발자국

1주차 클럽 스터디 회고

이번주 학습 내용

추상화의 개념은

중요한 정보를 가려내고 덜 중요한 정보를 제거하여 도메인 내에서

명명한 항목을 보고 어떤 행위, 어떤 정보를 담고 있는지 파악 가능하도록 하는것

 

읽기 좋은 코드를 작성하기 위해서 신경써야 할 부분

추상화할 때, 하나의 책임으로 묶기 어려울 경우, 여러 부분으로 나눠야 한다.

어떤 항목의 이름을 지을때, 단수와 복수를 구분해서 사용하고, 이름을 줄이지 않으면서 명명해야 한다.

메소드의 이름을 지을 경우, 메소드 시그니처 (메소드 명 + 파라미터)를 통해 어떤 정보를 가지고 어떤 행위를 하는지

명확하게 표현할 수 있도록 해야한다.

** 한 파일 안에서, 추상화 레벨이 동등하게 (자연스럽게 읽으면서 지나갈 수 있도록) 구성해야 한다.

상수를 사용할 경우, 매직 넘버/스트링 과 같이 이름을 짓고 사용해야 한다.

Early return 을 사용해 else if/else 의 사용이 꼭 필요한 경우가 아닌 경우 지양해야 한다.

사용할 변수는 가깝게 선언해야 한다.

!사용을 피하고 반대되는 사항이 있을경우 반대되는 의미를 담도록 명명하고, 반대되는 의미가 여러개일 경우 부정어를 통해 명명하는 것이 좋다.

의도한 예외와 예상하지 못한 예외를 구분해서 관리해 예상하지 못한 예외를 분석을 통해 줄여가야한다.

객체지향 프로그래밍을 제대로 활용하기 위해 SOLID 원칙을 지켜가며 고민해가면서 설계해야 한다.

 

 

좋았던점 (Liked)

모든 강의를 들으면서 파악한 내용들을 Notion 에 기록했다.

회고록, 강의에 대한 과제를 진행하거나, 내가 내용을 정리할 때 내가 적은 내용을 보고 기억을 떠올리기 좋았다.

 

실무에 적용을 해보았다.

회사에서 진행하는 프로젝트에서, 한 도메인에서 호출하는 함수들이 자연스럽게 읽으면서 지나갈 수 있도록 메소드 명들을

변경해봤으며, 결과물을 보았을 때 뿌듯했다.

 

아쉬웠던 점 (Lacked)

스터디 일정에 맞추어 진행하지 못했다.

매번 과제 제출일이 기한 전날 저녁 6시를 넘어서 작업이 끝내서 겨우겨우 제출했다..

매일 시간을 더 할애해서 미리미리 준비하고, 여유있게 작업할 수 있도록 해야겠다!

 

SOLID, stream API 등 더 궁금한 부분이 있었지만 더 조사해보지 못했다.

매번 시간에 쫓겨서 하다보니 더 궁금하고 찾아보고 싶은 부분이 있었으나, 순간 기억하고 따로 기록하지 않아서

궁금했다가 까먹은 항목이 있다. 해당 부분들을 다시 강의를 들어보며 정리하는 시간을 가질 수 있도록 해야겠다.

 

배운 점 (Learned)

단축키의 장점을 배워가고 있다.

매번 마우스로 이리저리 옮겨가며 작업하던 부분을 단축키를 통해 훨씬 빨리 움직일 수 있음을 배웠다.

우빈님의 강의를 따라가기 위해서 기록 이외에 단축키를 통해 이동하실 때, 나는 마우스를 써서 못따라갈 경우가 많았는데,

메소드 추출, 생성자 호출(?) 등 점점 자연스럽게 단축키 사용이 익숙해져 가고 있다.

 

사고를 해야하는 방식 과 무엇을 더 고민해야할지 배우고 있는것 같다.

물론 아직까지 경험도 많이 없고 미흡하지만, 어느쪽으로 고민해야하고, 어떤 경우에 분리가 필요하고, 메소드를 언제 만들어 야 할지를 조금씩 깨달아 가는 것 같다. 코드를 따라하며 어느 부분은 더 신경을 써야겠다를 내가 먼저 생각한 떄도 한 두번 있 었는데, 그때마다 너무 신기하고 기분이 좋았다.

 

앞으로 바라는 점(Longed for)

공부시간을 늘리고, 기록을 좀더 자세하게 해야겠다.

보통 3시간 강의를 들을때 내가 정리해가며 강의를 들으면 5시간 이상 필요한 것 같다.. 이렇게 해도 가끔 놓히는 부분이

생겼었으니, 주말에 따라갈 수 있도록 궁금한 내용을 기록하고, 많은 것을 얻을 수 있도록 노력해야겠다!

 

 

 

댓글을 작성해보세요.

채널톡 아이콘