forked from bark20/java-bridge
-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[java-bridge] gib.son(손수환) 미션 제출합니다. #2
Open
swandevson
wants to merge
77
commits into
Japring-Study:gib/java-bridge
Choose a base branch
from
swandevson:swandevson
base: gib/java-bridge
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- 프로그램 동작 방식 - 기능 목록 (예외사항 포함) - 클래스 설계 - 주의사항 체크 리스트
- 프로그램 동작 방식 - 기능 목록 (예외사항 포함) - 클래스 설계 - 주의사항 체크 리스트
- 빈 문자열, 숫자가 아닌 경우 IlleglArgumentException을 에러메세지와 함께 발생
- 문자열, 숫자 값으로 구성
- 범위를 벗어나는 사이즈일시 예외를 throw - 범위 내일 경우 게임에 사용할 다리를 생성
- bridge -> bridgeStates
- 다리와 플레이어를 필드로 설정 - 사이즈를 인자로 받는 생성자
- 다음에 갈 위치, 마지막 선택, 생존 여부를 멤버로 가짐 - getter와 setter 작성
- 선택한 다리 칸이 무너지는 경우 플레이어 사망 처리
- 사이즈, U/D을 잘못입력할 시 제대로 입력할 때 까지 반복 - 사이즈를 입력받고 BridgeGame을 생성 - U/D를 입력받고 사용자 상태 업데이트 - 다리를 모두 건너거나 사용자가 죽으면 일단은 종료하도록 구현 - 필요한 정보 및 업데이트를 BridgeGame의 getter/setter 메소드 구현
- 재시도 횟수 필드 추가 - 게임 승리 조건 수정
- InputView, OutputView를 정적 변수로 변경 - 게임 재실행을 위해 실행을 메소드로 분리
- 올바르지 않은 입력에 대한 검증 및 예외 throw
- View를 static으로 수정했으므로 인자로 넘겨줄 필요 X
- 게임을 이기거나 죽으면 게임 종료 - 죽었을 경우, 재시작할지 종료할지 입력받고 이를 처리 - 재시작할 경우, 다리는 그대로 두고 플레이어는 처음부터 다시 시작한다.
- 게임에서 이길 시 갱신 - 게임에서 재시도하거나 종료할 시 갱신
- 확장성을 위해 player가 아닌 지나간 칸 수를 인자로 넘김 - 의미 혼란을 막기 위한 메소드명 변경
- 변하면 치명적인 오류가 발생하는 멤버 final로 지정
- BridgeGame에서 게임 종료 여부를 확인 - run에서 재시작 처리 가능하도록 수정
- BridgeGame을 인자로 받아 player 생존 여부를 체크하는 것이 아닌, player 생존 여부만을 인자로 전달하도록 변경
- 멤버에 private 키워드 추가
- isPlayerDead -> playerDead
- 위/아래를 나타내는 숫자 1/0을 상수로 생성
- constructor를 제외한 불필요한 this 키워드 제거
- Collections.unmodifiable() 메소드를 사용해 최초 생성 후 값이 변경될 수 없도록 수정
- 최초 할당 후, 변경되어서는 안됨
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.