스파르타코딩클럽/자바 개인프로젝트 - Kiosk
-
[개인프로젝트] 피드백1 이해완료스파르타코딩클럽/자바 개인프로젝트 - Kiosk 2023. 10. 30. 17:54
1. 객체지향을 만들어가는 데에 있어서 action (method)와 factor(variable)을 분리해서 생각하는 게 중요한데요. 각 클래스 안에 print method를 넣는 것, 예를 들면 Order 안에 order 현황을 프린트 하도록 모두 넣다보니, 메인에서 각 클래스를 호출하는 부분이 어색하게 느껴지는 거 같습니다. Order 객체 안에는 Order가 필요한 값들 (메뉴 종류 등등)만을 변수로 가지도록 하고 printer 클래스와 같은 프린트를 해주는 클래스를 만들어 설계하면 어땠을까 생각합니다 ! 이 피드백을 항상 머릿속에 넣어두고 어떤식으로 했어야할까를 지난 며칠간 생각하고 있었다. 그런데 문득 정석 예제를 풀어 보던 중 print 메소드를 따로 작성해둔 것이 보였고 혹시 이런식으로 하..
-
[개인프로젝트] 키오스크 만들기 최종결과스파르타코딩클럽/자바 개인프로젝트 - Kiosk 2023. 10. 27. 20:05
채점이 끝나고 팀원들은 메일을 받고 열심히 언박싱을 하는데 나만 오지 않았따.. 왜 오지 않는 걸까 고민하면서 계속 기다렸지만 30분이 지나도 받은 메일함에 +1은 생기지 않았는데 스팸함에 +1이 되어있는 것이다. 심지어 다른 팀원들이 받은 그 시간에! 카카오 이놈이 멋대로 필터링해서 스팸함에 박아버린것이었다. 두근두근하며 메일을 열어보았고 받은 피드백은 아래와 같다. 1. 객체지향을 만들어가는 데에 있어서 action (method)와 factor(variable)을 분리해서 생각하는 게 중요한데요. 각 클래스 안에 print method를 넣는 것, 예를 들면 Order 안에 order 현황을 프린트 하도록 모두 넣다보니, 메인에서 각 클래스를 호출하는 부분이 어색하게 느껴지는 거 같습니다. Orde..
-
[개인프로젝트] 키오스크 만들기 피드백스파르타코딩클럽/자바 개인프로젝트 - Kiosk 2023. 10. 23. 22:39
질문리스트 토핑메뉴 처리의 올바른 방식 주문목록에서 다른 숫자 입력 시 try-catch가 똑바로 되어있는지 0번을 눌렀을때 받아오는 총 판매목록이 HashSet이라 가끔 순서가 바뀐다. 이걸 List로 하면 해결할 수 있을 것 같은데 List로 바꾼다면? 0번을 눌렀을 때 판매된 메뉴를 출력할때 Iterator를 사용했지만 더 좋은 선택지는 없었을까 메뉴를 List에 add할때 메인메뉴에서 했는데 이것을 각 메뉴클래스에서 할 수는 없었나 (첫날 막힌부분) 고쳐야 할점 1. 토핑메뉴 처리의 올바른 방식 private void addOrderMainMenu(ArrayList
-
[개인프로젝트] 키오스크 만들기 최종스파르타코딩클럽/자바 개인프로젝트 - Kiosk 2023. 10. 23. 14:30
switch (choice) { case 0: System.out.println(menuList.get(choice)); System.out.println(" 주문목록에 담으시겠습니까?"); System.out.println(" 1.네 2.아니오"); int pick = sc.nextInt(); sc.nextLine(); if (pick == 1) { System.out.println("주문목록에 담았습니다."); addOrder(menuList.get(choice), 1); } else { System.out.println("취소되었습니다."); } break; case 1: System.out.println(menuList.get(choice)); System.out.println(" 주문목록에 담으..
-
[개인프로젝트] 키오스크 만들기 2스파르타코딩클럽/자바 개인프로젝트 - Kiosk 2023. 10. 22. 23:36
키오스크 만들기 두번째 기록 1. static 메소드 적절히 변경 2. 총 주문 금액과 판매목록 결산 구현 3. 이에 관한 오류 해결 및 아쉬운 점 4. 중복되는 코드를 제거해보자 이전글에서 이어지는 남은 애로사항 모든 메소드를 static 메소드로 구현했던 것 생각보다 해결은 쉬웠다. 다만 처음에는 main 메소드의 while문 안에 new 생성자를 넣는 바람에 첫 수정 후 실행했을때 주문을 하고 주문목록을 보는데 저장이 되지 않아서 당혹스러웠다. 하지만 반복문 밖으로 new 생성자를 빼냄으로써 해결. 선택사항 3, 4번째 총 주문금액과 판매리스트 결산 총 주문금액은 list가 아닌 int를 사용하여 단순히 합산하는 것으로 구현했다. 판매목록은 Map에 key값으로 저장되어 있으므로 get을 통해 키 ..
-
[개인프로젝트] 키오스크 만들기 1스파르타코딩클럽/자바 개인프로젝트 - Kiosk 2023. 10. 20. 20:53
6일의 기한을 둔 개인프로젝트 첫번째 키오스크 만들기 이다. 프로젝트 시작 첫날 기본적인 내용을 블로그에 기록하지 않아서 어느정도 만들어진 상태부터 시작하게 되었다. 그래서 완성까지 특이사항에 대한 기록, 의문점과 해결방식 위주로 기록을 하려 한다. 첫번째 의문 (해결) 메뉴판이 계속 나타난다? while문으로 무한루프를 돌면서 메뉴를 선택하게 했다. 메뉴 구성방식은 이렇게 구성되어있고 메뉴에 맞는 인덱스를 콘솔창에 입력하면 해당 하위메뉴를 출력해주는 형식으로 구성하였다. 그런데 1을 입력해서 메인메뉴 하위 리스트를 출력하면 위의 메뉴들이 선택한 메뉴 밑에 다시 나타나는 것이다. 원인은 상위메뉴를 표시하는 printMenu() 메소드가 while문의 무한반복 안에 있었기 때문에 계속 무한반복이 되는 것이..