우테코 프리코스 2차

2차가 드디어 시작되었다. 수요일에 바로 올 줄 알았는데 수요일 오후 3 시쯔음 과제가 주어졌다. 수요일 과제를 기다리다 과제가 오지 않아서 괜히 내가 전 과제에서 무언가 실수했나? 생각에 괜히 마음이 불안했다. 어찌됐든! 이번 주제는 자동차 경주 게임이었다.

이번 기능 요구사항이었다.

그리고 프로그래밍 요구사항은 다음과 같았다.

확실히 클린코드를 향해 달려 나가는 과제인 것 같다.

구현할 기능부터 일단 적었다.

이번 과제에서는 생겼던 이슈가 많았다.

어떻게 랜덤 값으로 전진하는 차를 테스트할까?

레이스 클래스를 테스트하고 싶었지만 랜덤 방식으로 돌아가는 코드를 테스트하기에 불가능해 보였다. 최근에 공부하고 있는 디자인 패턴을 사용해 보았다.

맨 처음은 template method pattern을 사용해 보았다.

해결 시도 1. template method pattern