최종시험
- 일시 : 2021.12.18(토) 13시 ~ 18시
- 난이도 : 3주차보다 약간 쉬웠던 수준
3주차 과제를 쉽게 변형시켜낼 것이라는 예상과 다르게 아예 새로운 문제가 나왔습니다.
상심할 시간도 없이 문제 이해하고, 설계하고, 기능목록을 작성했습니다.
최종시험 보기전까지 탑다운 방식으로 개발하는 것을 연습했기 때문에 연습한 대로 진행했습니다.
스트림 사용법도 공부해서 바로 실전에 적용했습니다.
시작하자마자 당황했던건 파일입력을 받아야하는 것이었습니다.
파일입력을 직접 구글링하며 방법을 찾고 적용해야했는데, 여기서 시간을 굉장히 많이 썼습니다.
생각보다 Enum 클래스를 만들어서 사용할 일이 많았는데 지난 프리코스 3주차동안 enum은 문제에서 제공해준 Coin enum만 사용해봤기 때문에 익숙하지가 않았습니다. 그래도 enum을 계속 사용하며 클래스끼리 관계 맺는 코드에 집중했습니다.
연습한대로 탑다운방식으로 기능목록을 차례로 하나씩 만들어갔고, 제일 복잡한 기능빼고 다른 기능들은 어느정도 구현을 완료했습니다.
시험 막바지로 흘러가 어느새 30분이 남은 시점에서 집중력도 흐트러지고 멘탈도 흔들려서 자꾸 추가한 기능이 작동이 안되었습니다.
그래서 일단 제출해놓고 구현하자 생각해서 제출하려는데 푸시가 안됩니다. 갑자기..
구글에 에러메세지를 검색해보니 하필 오늘 깃허브 토큰이 만료되어서 다시 토큰을 발급해야하는 상황이었고, 급하게 발급했습니다.
근데 계속 푸시가 안되었습니다. 시간은 거의 끝나가고 푸시가 안되어서 5시간동안 구현한 것이 거의 물거품이 되기 직전이었습니다.
와 근데 fork를 안하고 remote에 push를 하고 있었습니다.
없는 레포지토리에 푸시하려니까 당연히 거부가 뜬것이었습니다.
다시 fork하고 push하니까 됐습니다.. 시간은 10분정도 남긴 상황이었고 일단 PR날리고 제출사이트에도 제출한 뒤에 남은 기능을 구현했고 어느정도 돌아가는 것 같아 푸시했습니다.
시험이 끝나고 녹초가 되어 오픈카톡방을 보는데 사람들이 어려웠다고, 테케 통과도 못했다고 하는걸 보고 식겁했습니다.
왜냐면 저는 테스트가 있다는 것을 까먹고 돌려보지도 않았기 때문입니다...(절망)
테케를 한번도 돌리지 않고 다 통과하는건 거의 불가능이기 때문에 테케 불통이라 생각하고있다가 혹시나해서 테케 돌려봤습니다.
근데 모든테케 다 파란불 뜨는거 보고 진짜 다행이다 생각하며 안도의 한숨을 쉬었네요.
지금 다시 코드를 보며 글을 작성중인데 이게 어떻게 합격했을까 싶을정도로 코드가 엉망입니다.
컨트롤러는 이미 가독성 제로이고, 시간이 부족해 하드코딩 한 부분을 수정하지 못한 것도 많았습니다.
다시한번 최종미션을 리팩토링해보며 복습을 다시 해야할 것 같습니다.
최종심사결과
이게 되네요..
팁이라면, 계속 내가 부족한 부분이 무엇인지 찾고 개선하려는 노력을 해야한다는 것 밖에 없는 것 같습니다.
'Web > Java' 카테고리의 다른 글
[Java] for-loop 와 stream.forEach() 는 다르다. (6) | 2022.03.04 |
---|---|
[Java] java.lang.String의 isEmpty() vs isBlank() (3) | 2022.02.18 |
[우테코 프리코스] 3주차: 자판기 (2) | 2021.12.11 |
[우테코 프리코스] 2주차: 자동차 경주 게임 (0) | 2021.12.01 |
[우테코 프리코스] 1주차: 숫자 야구 게임 (2) | 2021.11.25 |