-
객체 간의 역할과 책임에 대한 고민을 하며 기초적인 흐름 제어 및 객체 지향 설계 개념을 복습하기 위해.
-
LV1 , LV2, LV3, LV4 의 단계별로 키오스크를 구현
-
단계별 구현
Level1. -> 기본적인 키오스크를 구현
Scanner를 사용해 여러 햄버거 메뉴 출력 제시된 메뉴 중 입력 받은 숫자에 따라 다른 로직 실행 반복문을 이용해 특정 번호가 입력되면 프로그램 종료
Level2 -> 객체 지향 설계를 적용해 햄버거 메뉴를 클래스로 관리
햄버거 메뉴를 MenuItem 클래스와 List를 통해 관리. List를 선언하여 여러 MenuItem을 추가 -> List menuItems = new ArrayList<>(); 반복문을 활용해 menuItems를 탐색하며 접근
Level3 -> 객체 지향 설계를 적용해 순서 제어를 클래스로 관리
main 함수에서 관리하던 전체 순서 제어를 Kiosk 클래스를 통해 관리 유효하지 않은 입력에 대한 예외처리 0을 입력하면 프로그램이 ‘뒤로가기’되거나 ‘종료’되는 기능 추가
Level4 -> 객체 지향 설계를 적용해 음식 메뉴와 주문 내역을 클래스 기반으로 관리하기
Menu 클래스 생성 -> MenuItem 클래스를 관리하는 클래스 List 은 Kiosk 클래스가 관리하기에 적절하지 않으므로 Menu 클래스가 관리하도록 변경
Level5 -> 캡슐화 적용하기