스파르타코딩 내일배움캠프 - 키오스크 프로젝트
Java 문법을 사용하여 메뉴를 주문하는 키오스크를 구현합니다.
JavaOracle OpenJDK 17.0.5
- 출력된 메뉴 중 입력받은 숫자에 따라 다른 로직을 실행
- 메뉴 선택, 메뉴 담기, 장바구니 메뉴 삭제, 장바구니 메뉴 주문 기능
- 특정번호 '0'을 입력하면 키오스크를 종료합니다.
src/lv4.kiosk
메뉴를 선택하여 장바구니에 담아 주문할 수 있는 키오스크
- Main.java - 키오스크 메인 클래스
- Kiosk.java - 키오스크 프로그램의 메뉴를 관리하고 사용자 입력을 처리하는 클래스
- Cart.java - 장바구니를 관리하는 클래스
- Menu.java - MenuItem의 상위 개념 클래스
- MenuItem.java - 개별 음식 메뉴 항목을 관리하는 클래스
- DiscountType - 사용자 유형별 할인율이 정의된 enum
실행 흐름
- 메인 메뉴 리스트 출력
- 사용자가 메인 메뉴에서 선택한 카테고리의 하위 메뉴 리스트 출력
- 사용자가 메뉴 선택 후 장바구니에 저장
- 장바구니에 저장된 메뉴 있을 시 메인 메뉴에 관련 메뉴 출력
- 장바구니에 있는 메뉴 삭제
- 장바구니에 있는 모든 메뉴 주문
- 주문 시 할인 유형 선택 후 주문 가능
- 메인 메뉴에서 '0' 입력 시 키오스크 종료
- 사용자에게 입력 받는 모든 경우에서 에러 처리
- 유효하지 않은 번호 입력 시 재입력 가능
Lv1 키오스크
- Main.java - 키오스크 메인 클래스
Lv2 키오스크
- Main.java - 키오스크 메인 클래스
- MenuItem.java - 개별 음식 메뉴 항목을 관리하는 클래스
Lv3 키오스크
- Main.java - 키오스크 메인 클래스
- Kiosk.java - 키오스크 프로그램의 메뉴를 관리하고 사용자 입력을 처리하는 클래스
- MenuItem.java - 개별 음식 메뉴 항목을 관리하는 클래스
Lv1 ~ Lv3 공통 기능
- 햄버거 메뉴 리스트 출력
- 사용자가 선택할 메뉴 번호를 입력받음
- 선택한 메뉴를 출력
- '0' 입력 시 키오스크 종료
메인 메뉴
메인 메뉴 출력 및 사용자 입력
1~4 번호 입력 시 선택한 메뉴의 하위 메뉴 리스트 출력
'0' 입력 후 키오스크 종료
하위 메뉴
하위 메뉴 리스트 출력 및 사용자 입력
하위 메뉴 선택 후 장바구니에 담기 여부 출력
장바구니 담기 후 이전 화면으로 이동
0 입력 후 메인 메뉴로 이동
장바구니 메뉴
장바구니 삭제
장바구니에 담긴 메뉴 있을 경우 장바구니 메뉴(5, 6) 출력
장바구니 삭제 메뉴
장바구니에 담긴 메뉴 삭제 완료
장바구니에 담긴 메뉴 전체 삭제 후 메인 메뉴로 이동
장바구니 주문
장바구니 주문 메뉴
주문 선택 후 할인 유형 선택
선택한 할인 유형별 할인 금액 출력, 주문 완료 후 메인 메뉴로 이동













