본문 바로가기

볼링게임3

볼링게임 TDD [3] 볼링게임 TDD[3] 을 끝으로 볼링게임 TDD를 마무리하려고 한다. 우선 남은 할 일 목록을 정리해보자. [] 볼링 점수 계산기를 만든다. (스트라이크, 스페어를 고려한다.) [] 투구(pitch) 후 쓰러진 pin은 BowlingScore에 전달되어야 한다. [] 볼링을 상속받는 객체로는 볼링 플레이어와 볼링 점수 계산기가 존재한다. (플레이어와 점수 계산기는 1 : 1 관계를 갖는다.) [] 점수 계산기를 통해 계산된 점수는 점수 표출기를 통해 점수를 볼 수 있어야 한다. 잘 못된 할 일 목록과 불 필요한 목록은 정리하고 볼링게임을 완성하기 위한 할 일 만 남겨두도록 하겠다. [] 스트라이크, 스페어등 볼링 룰을 적용한다. [] 점수 계산기를 통해 최종 점수를 계산해야 한다. [] 최종 점수는 점수.. 2020. 10. 3.
볼링게임 TDD [2] [v] 실패하는 테스트를 만들고 스텁으로 우선 빠르게 테스트를 작성할 것 이다. [v] 볼링 객체를 만든다. [v] 볼링 객체는 10개의 핀을 가지고 있고 21번의 투구 기회가 있다. [v] 볼링의 프레임은 총 10 프레임이고 한 프레임이 끝나면 핀의 갯수는 10개로 초기화된다. [v] 투구 2번 끝나면 한 프레임도 끝낸다. 단 마지막 프레임은 3번의 투구가 필요하다. [v] 볼링의 프레임과 핀은 점수 계산기와 연관이 있는데 이것은 나중에 생각해본다. [] 볼링을 상속받는 객체로는 볼링 플레이어와 볼링 점수 계산기가 존재한다. (플레이어와 점수 계산기는 1 : 1 관계를 갖는다.) [] 점수 계산기를 통해 계산된 점수는 점수 표출기를 통해 점수를 볼 수 있어야 한다. [] 투구(pitch)는 Bowlin.. 2020. 10. 2.
볼링게임 TDD [1] TDD를 공부하면서 TDD를 활용한 볼링게임을 구현해보기로 하였다. 아래의 할 일 목록 은 구현에 앞서 생각해본 볼링게임을 객체지향적으로 나태 내기 위한 방법이다. 이 방법이 정답은 아니지만 할 일 목록을 생각하면서 내가 어떤 구현을 해나갈지 명확해졌다. 다만 아직은 할 일을 작은 단위로 나누지 못한 것 같아서 우선 할 수 있는 것부터 하기로 했다. 할 일 목록 [ ] 볼링 객체를 만든다. [ ] 볼링의 하위 객체로는 볼링 플레이어와 볼링 점수 계산기가 존재한다. (플레이어와 점수 계산기는 1 : 1 관계를 갖는다.) [ ] 점수 계산기를 통해 계산된 점수는 점수 표출기를 통해 점수를 볼 수 있어야 한다. [ ] 볼링의 프레임과 핀은 점수 계산기와 연관이 있는데 이것은 나중에 생각해본다. [ ] 실패하는.. 2020. 9. 30.