1주차 온보딩 리뷰

·2022년 11월 3일
0
post-thumbnail

목표

git, Java, 미션 사이클 익숙해지기

신경 썼던 점 & 배운 점

  • else 최대한 안 쓰기
  • 요구 사항에서 불변 사항들 상수화(final) 하기
  • 하나의 기능만 하는 함수들로 분리해서 구현하기
  • Angular Js Commit Convention
  • 메소드, 변수, 인자 등등 의도를 드러내는 네이밍
  • 기능 명세 작성 후 기능 별 커밋

Review

  • 요구 사항이 애매하면 현실 세계에서 경우의 수를 생각해본다.
    • 바뀔 가능성이 있는 부분에 대해서는 Class -> Interface 의존
    • UserRepositoryImpl implements UserRepository
  • opened PR의 경우 추가 commit은 자동 반영된다.
  • 의미 있는 commit message
    • 단순히 Convention을 지키는 것 + 읽는 사람이 파악하기 쉽도록 한다.
  • 반복문에서 i, j, k 등의 네이밍 사용을 지양한다.
    • for (int i : integers) -> for (int integer : integers)

느낀 점 & 생각

  • 문제 자체의 난이도는 쉬웠다. (프로그래머스 레벨 1~2 정도)
  • 얼마나 세세하게 커밋을 해야 할 지, 커밋 메세지는 어떻게 쓸 지 등에 대해 감이 없다.
    • Intellij의 Command + Option + L 로 코드 정렬한 것도 커밋 해야 하는가?
    • 다음 작업 때에 끼워 넣거나 같은 스코프의 이전 커밋에 합치는 게 낫지 않은가?
  • Solution 클래스 또한 네이밍을 보아 로직을 포함해도 된다고 생각해서 모든 것을 함수화 하지는 않았다.
  • Stream을 사용하는 것이 가독성이 좋을 때가 많은 것 같다.
    • Stream API 특성 상 여러 로직(sorted, map, filter)을 반영할 때가 많은데 SRP에 어긋나지 않는가?
profile
渽晛

0개의 댓글