[우테코] 우아한 테크 코스 5기 프리코스 3주차 회고

Subin·2022년 11월 16일
0
post-thumbnail

1. 로또 게임

미션 바로가기

이번주차 미션은 로또 게임이었다. 문제만 달랐지 이전주차와 같은 유형의 미션이었다. TDD를 처음 접해보고 어려워했던 나로서는 다른 문제로 다시 학습해 볼 수 있는 좋은 기회였다.

TDD 란?

1주차 때는 미션이 잘 안풀리면 다른 분들의 코드를 참고하였는데 이렇게는 내 실력이 늘지 않다고 생각해 2주차에선 막히는 부분이 있어도 다른 분들의 코드를 참고하지도 않고 따로 공부도하지 않아 만족스러운 결과를 얻지 못했었다. 이번에는 막히는 부분이 있으면 찾고 공부하면서 구현하였다. 특히 TDD에 대해 공부하였고 이번 미션에 적용하였다.

  1. 실패하는 테스트 코드를 먼저 작성한다.
  2. 테스트 코드를 성공시키기 위한 실제 코드를 작성한다.
  3. 중복 코드 제거, 일반화 등의 리팩토링을 수행한다.

위의 순서대로 반복하는 것을 최대한 지키려고 했지만 1번의 실패하는 테스트 코드를 먼저 작성하는 것이 미션을 진행함에 있어서 순조롭게 진행되지 않아 실제 코드를 먼저 작성한 후 테스트 코드를 작성하는 순서로 진행했다. 자세한 설명은 아래의 개발 진행 방식에서 서술하겠다.

개발 진행 방식

1. 기능 목록 작성

2. 테스트 목록 작성

3. 기능 목록 중 1개 기능 코드 작성

4. 작성한 기능에 해당하는 테스트 코드 작성

jest의 테스트 코드

하나의 기능을 만들었으면 예외 처리에 관해 테스트 처리가 있는지 생각 후 테스트 코드 작성

실제 코드에 적용할 예외 처리

테스트 코드가 다 성공했으면 실제 코드에도 적용

5. 리팩토링 (1개의 함수에는 1개의 기능, 이름짓기 등)

2. 앞으로 개선할 점과 느낀 점

개선할 점

  • discussions의 피어 리뷰를 활용해서 내 코드를 개선하고 다른 사람의 코드를 보며 배우는 시간을 갖자
  • 테스트 개발 위주로 신경 써서 그런지 객체 형식으로 개발하는 방법을 신경을 쓰지 못하였고 사용법도 잘 몰랐었다 공부해서 이후에라도 코드를 개선하자
  • 기능 구현에 집중한 나머지 코드 가독성에 집중하지 못하였고 기능을 다 구현하면 끝이라는 생각을 가지고 있었다.
  • 내가 짠 코드가 별로라는 생각을 가지고 개선점을 계속 찾고 다른 구현 방법이 있는지 찾는다.

느낀 점

남들과 비교하면 볼품없지만 프리코스를 진행하기 전의 나랑 현재의 나를 비교하면 엄청나게 성장했다고 생각한다. 컨벤션, 여러 요구사항, 클린 코드, 글쓰기, 같은 미션을 진행하는 사람들과의 소통 등등... 혼자 공부했던 이전과 다르게 자기만의 코드 세상에서 빠져나와 즉 우물 밖에 나온 기분이다. 앞으로 마지막 미션이 남았는데 프리코스를 마치고 나서 더 성장할 내가 기대된다.

profile
고양이가 세상을 지배한다.

0개의 댓글