Logs/학습 log
프로그램 시나리오로부터 구현 기능 목록 도출
Surin Lee
2023. 10. 23. 12:42
- 기능 도출
1. 출력 메서드(파라미터 : 문자열 / return : X)
- 파라미터로 전달받은 문자열을 터미널에 출력한다.
- (게임 시작, 피드백, 재시작혹은 종료 시 사용자에게 알리기 위함)
2. 랜덤 수 선택 메서드(파라미터 : X / return : int(3자리 정수))
- 랜덤한 3자리 숫자 정수를 반환한다.
- camp.nextstep.edu.missionutils.Randoms의 pickNumberInRange()를 활용
- 각 자리 숫자는 중복을 허용하지 않는다.
3. 입력 유효성 검사 메서드 (파라미터 : 문자열 / return : null 혹은 exception)
- 사용자가 입력한 값의 유효성을 검사한다.
- 2종류의 입력이 유효하다.
(게임 도중 : 3자리 숫자 정수로 변환가능한 문자열)
(한 게임 종료 후 : 1 or 2)
- 앞뒤로 공백 혹은 그에 상응하는 문자(White space)는 무시한 후 입력 유효성 검사를 한다.
4. 사용자 입력과 랜덤 수 매칭 판단 메서드(파라미터 : 2개의 int / return bool)
- 사용자 입력과 랜덤 수 매칭 시 true 반환
- 불 일치시 false 반환
5. 피드백 메서드 (파라미터 : 2개의 문자열(int에서 문자열로 변환) / return : 문자열)
- 4번 메서드가 false를 반환할 시 실행되는 메서드
- 불일치 하는 두 문자열의 유사도를 판별한다.
- 유사도에 따라 사용자에게 줄 피드백 메세지를 반환한다.
6. 유사도 판별 메서드 (파라미터 2개의 문자열 / return : int(문자열 배열의 인덱스))
- 5번 메서드가 호출하는 시스템 메서드
- 5번 메서드 내부에 반환할 문자열을 배열로 만들어져있다고 가정하고, 해당 피드백의 인덱스를 반환한다.
7. 프로그램 종료 메서드
- 프로그램을 종료한다.
- 프로그램 종료시 System.exit()를 호출하지 않는다.
구현기능 목록을 메서드 별로 작성했다. 조금 더 '기능'에 초첨을 두고 만들어도 좋지 않을까 생각한다.