Notes/주간회고

[주간회고] 2021-05-17 ~ 2021-05-23

humblEgo 2021. 5. 24. 00:49

5/17~5/23일간 작성한 일일회고

2021/5/17 월요일

2021/5/18 화요일

2021/5/19 수요일

2021/5/20 목요일

2021/5/21 금요일

2021/5/22 토요일

Facts (사실, 객관)

  • 코드숨 3주차 과제를 구현했다.
  • 42sparta 회의를 참석했다.
  • 사이드 프로젝트-페블을 시작했다.
  • 지원 기업에서 보내준 사전 질문지를 작성했다.

Feelings (느낌, 주관)

코드숨 3주차 과제를 구현하며 뿌듯했던 순간!

  • 코드숨 과제를 진행할 때나 기술 면접을 준비하며 나의 미숙함을 꽤나 느꼈다. 어서 한 몫하는 개발자가 되고 싶은데.. 좀 더 노력해야겠다.
  • 나와 같은 시기에 개발을 시작한 동료가 취업하는 것을 봤더니 초조함이 늘었다. 거기에 지원금이 늦게 들어와서 잔고 걱정을 해보니, 취업하고 싶다는 생각이 더욱 커졌다.
  • 시간을 빡빡하게 쓰고 있어서 아내에게 스트레스를 많이 준 것이 미안하고 이해해줘서 고맙다.
  • 이러나저러나 지금 이렇게 개발 공부를 할 수 있다는 것 자체가 감사하고 나름 행복하다. 욕심과 초조함 때문에 행복을 놓치지 말자.

Findings (배운 점)

  • JUnit, AssertJ 그리고 mockito 활용 방법을 학습했다.
  • 해시 코드 생성시 왜 31이 주로 쓰이는지 학습했다.
  • BDD에 대해서 학습했다. 구체적으로 'Describe-Context-It' 패턴을 적용하여 계층적으로 테스트를 구현하는 방법을 학습했다.
  • 테스트 대상 코드를 또 다른 테스트 대상 코드로 검증해야하는 상황에서 어떤 기준을 가지고 테스트 코드를 작성할 수 있을지 배웠다.
    • 충분히 테스트된 검증된 쪽을 기준으로 삼고 테스트를 준비한다. 검증된 코드로 다른 코드를 검증해나간다. (마치 수학 공식의 증명처럼)
    • 덜 망가지는 쪽을 기준으로 삼고, 망가질 우려가 큰 쪽을 테스트한다.
  • 주석도 관리해야할 코드의 일부라는 것을 체감하였다. 모든 것은 유지보수 비용을 낮추기 위해..!
    • 주석의 내용과 코드의 동작이 일치하도록 신경써야한다. 가령 @DisplayName으로 GET 요청을 보낸다면 이라는 Context를 기술한다면, 이 Context class scope에는 GET 요청을 보내는 동작이 구현되면 좋다. 가독성이 높아지고, 이후 scope에서의 코드 중복을 없애는데도 도움이 된다.
      한편 List를 반환하는데 배열을 반환한다고 하는 잘못된 정보를 전달하는 주석은 혼란의 씨앗이다..
    • 주석의 표현이 코드의 구현을 너무 상세하게 묘사하면, 코드의 구현에 의존하게 된다. 이것도 불필요한 비용이 될 수 있다.
  • Java를 쓸 때 쓰는 깨알 같은 팁들을 학습했다.
    • Abstract.SimpleEntry
    • AtomicInteger
  • notion API를 학습하였다.

Affimation (자기 선언)

  • 나는 아는 것을 정확하게 설명한다.
  • 나는 솔직한 내 감정을 잘 전달한다.
  • 나는 매일 나를 개선한다.