/java-baseball

숫자 야구게임 미션을 위한 저장소

Primary LanguageJava

숫자 야구 게임

진행 방법

  • 숫자 야구 게임 요구사항을 파악한다.
  • 요구사항에 대한 구현을 완료한 후 자신의 github 아이디에 해당하는 브랜치에 Pull Request(이하 PR)를 통해 과제를 제출한다.

과제 제출 과정


기능 목록

  • 게임을 시작(종료)하는 기능
  • 랜덤 숫자(컴퓨터의 수)를 생성하는 기능
    • 3자리 수 자체를 의미하는 별도의 클래스(Numbers)를 만들고, 랜덤으로 생성한 숫자를 사용하여 객체 생성
  • 플레이어의 입력을 받는 기능
    • 플레이어의 입력값을 사용하여 Numbers 객체 생성
      • 생성자에서 입력값에 대한 유효성 검사를 수행(1~9의 수로 구성된 3자리 수인지), 필요 시 예외 발생
    • 입력을 받을 수 있는 방법은 여러가지가 있지 않을까? (요구사항 변경 가능성 고려)
  • BallCount 객체의 기능
    • 플레이어의 수와 컴퓨터의 수를 비교하여, 볼카운트를 판단하는 기능(ex. 1볼 1스트라이크, 낫싱, 3스트라이크, ...)
    • 볼카운트를 콘솔에 출력
    • 3개의 숫자를 모두 맞췄는지의 여부(boolean)를 리턴
  • 결과(볼카운트)를 출력하는 기능

목표

  • 객체 간의 책임을 명확하게 분리하자
  • 미래에 요구사항이 변경될 가능성을 고려하면서 설계하자(인터페이스 사용 등)
  • 테스트 코드를 최대한 꼼꼼히 짜보자
  • 처음부터 너무 완벽하게 하려고 하지 말자