- 등록된 지하철 노선도에서 경로를 조회하는 기능을 구현한다.
3차 미션까지 상태 데이터를 얻기 위해 데이터를 꺼내는 문제점을 고치지 못했습니다. 이번 시험에서는 객체의 상태를 알기 위해서는 객체에게 메시지를 보내는 형식으로 꼭 구현해보겠습니다.
- 제일 먼저 미션의 요구사항 대로 기능 목록 대략적 작성하여 필요한 기능 파악
- 커밋 시, 블로그에 정리한 커밋 컨벤션 지키기
- 블로그에 정리한 자바 코딩 컨벤션 지키기
- MVC 패턴으로 UI 로직과 비즈니스 로직 분리하기
- 하드코딩 된 값이 없는지 확인하기
- 변수명이나 메소드 명은 축약하지 않기, 클래스명은 명사로, 메소드는 동사로 이름 짓기
- java api 사용하기
- 배열이 아닌 collection 프레임 워크 사용하기
- 프로그램 시작 시 역, 노선 등 필요한 정보 셋팅
- 지하철 역으로
교대역, 강남역, 역삼역, 남부터미널역, 양재역, 양재시민의숲역, 매봉역등록 - 지하철 노선으로
2호선, 3호선, 신분당선등록 - [] 노선에 역 등록
- 2호선: 교대역 - ( 2km / 3분 ) - 강남역 - ( 2km / 3분 ) - 역삼역
- 3호선: 교대역 - ( 3km / 2분 ) - 남부터미널역 - ( 6km / 5분 ) - 양재역 - ( 1km / 1분 ) - 매봉역
- 신분당선: 강남역 - ( 2km / 8분 ) - 양재역 - ( 10km / 3분 ) - 양재시민의숲역
- 지하철 역으로
- 메인 메뉴 출력
- 원하는 기능 번호를 입력받기
- 예외 상황
-
1, Q중에 없을 경우- 메인 메뉴로 돌아가기
-
- 예외 상황
- 원하는 기능 화면으로 이동
- 프로그램 종료하기
- 원하는 기능 번호 입력받기
- 예외 상황
-
1, 2, B중에 없을 경우- 경로 조회 화면으로 돌아가기
-
- 원하는 기능 불러오기
- 예외 상황
- 출발 역 이름 입력받기
- 예외 상황
- 역 이름이 문자가 아닐 경우
- 역 이름이 2자 미만일 경우
- 마지막 글자가 '역'이 아닌 경우
- 존재하는 역 이름이 아닐 경우
- 예외 상황
- 도착 역 이름 입력받기
- 예외 상황
- 역 이름이 문자가 아닐 경우
- 역 이름이 2자 미만일 경우
- 마지막 글자가 '역'이 아닌 경우
- 존재하는 역 이름이 아닐 경우
- 출발역과 동일한 이름일 경우
- 출발역과 연결되어있지 않은 경우
- 예외 상황