[우테코 5기 프리코스] 3주차 회고록

BBIYAC·2022년 11월 14일
0
post-thumbnail

3주차 과제 설명
3주차의 미션은 로또이다. 2022.11.15(화) 23:59 까지 문제를 해결한 후 PR(Pull Request)를 보내고, 우아한테크코스 지원 사이트에서 내 지원 현황에 제출까지 해야 3주차 미션을 해결한 것으로 처리된다.

회고록

이번 3주차 '로또' 미션을 진행하면서 클래스를 분리하고, 내보내고, 불러오는 방식에 대해서 많이 배웠다.

처음에는 클래스를 내보냈지만 불러오는 방식을 몰라 몇 시간을 헤매다가 JavaScript 클래스 import 방법에 대해 찾아보니 다른 클래스의 함수를 바로 불러올 수 있는 것이 아니라 현재 클래스에서 생성자에서 다른 클래스의 객체를 생성해 사용해야한다는 사실을 알게되었다.

2주차에는 App.js에 모든 함수를 한 번에 구현했었지만, 클래스 사용 방법을 익힌 후 어플리케이션에서 입력을 요구하는 부분은 App.js, 로또 번호를 관리하는 부분은 Lotto.js, 사용자의 구입 금액에 따른 랜덤 숫자 관리하는 부분은 Generator.js로 나누어 각각 담당하는 함수를 분리하여 작성하니 훨씬 가독성이 좋았다.

구현 중에 시간을 많이 쏟은 부분이 한 군데 더 있는데, MissionUtils 라이브러리를 사용하는 부분이다.

라이브러리를 제대로 이해하지 않고 사용하다보니 app.play()를 직접 실행했을 때는 문제가 없었지만 ApplicationTest 테스트를 통과하지 못하는 상황이 발생했다. jest의 spyOn에서 MissionUtils의 print 내용을 불러오지 못하는 것이었습니다. 원인을 찾아본 결과 라이브러리를 잘못된 방식으로 불러오고 있었다.

'로또' 미션을 진행하면서 클래스에 대한 기본적인 지식과 라이브러리에 대한 이해도가 부족함을 느꼈다. 무작정 코드를 사용하는 것이 아니라 코드를 이해하고 사용해야 빠르게 에러를 잡고, 관리할 수 있다는 것을 깨달았고, 몰랐던 개념을 배우고 적용하면 에러들이 하나씩 해결되는 것을 보고 뿌듯함을 느끼며 더 공부해보고 싶다는 생각이 들었다.

profile
어제의 나보다 성장한 사람이 되자 :)

0개의 댓글