[TIL] #7 Team Project - Kiosk Programming

Yeon·2023년 7월 24일
0
post-thumbnail

Team13

우리 팀 이름은 '소통 잘하조'!
팀이 발표되고 다들 모였는데 이렇게 캠을 다 켜고 있던건 이번 팀가 처음인 것 같다ㅎㅎㅎ 물론 지난 팀도 다 좋았지만 이번 팀원들이 대답도 질문도 정말 잘 해주셔서 신난다😄
팀원이 4명이라 처음엔 약간 걱정했지만 걱정할 필요 없을 것 같다!


💡 Kiosk Concept

팀프로젝트로 키오스크 프로그래밍을 하게 되었다.
우리조 키오스크의 컨셉은 술집!
팀원 각각 메뉴의 한 카테고리(탕류, 밥류, 마른안주, 주류)씩 프로그래밍을 하게 되었다.
난 그중 마른안주를 맡게 되었다.
팀장님은 메인 페이지까지 해주기로 하셨당ㅎㅎ


💻 Code

메뉴와 가격, 설명은 역전할머니맥주를 참고해서 만들었다!

open class Menu3 {
    fun dry() {
        println("[마른 안주]")
        println("1. 튀김쥐포 | W 3.0 | 바삭하고 고소해서 한입! 나도 모르게 또 한입!")
        println("2. 새끼먹태 | W 7.0 | 골고루 먹고 싶은데 먹태가 먹고 싶다면 ㄱㄱ!")
        println("3. 한치 | W 8.0 | 깨끗하게 건조한 1등급 한치, 씹을수록 고소한 맛!")
        println("4. 버터구이오징어입 | W 7.0 | 버터를 만나 더 부드럽고 소소해진 국민 술안주")
        println("0. 뒤로가기")

        while (true) {
            print("입력: ")
            val input = readLine()!!
            val num = input.toIntOrNull()

            if (num != null) {
                when (input.toInt()) {
                    1 -> {
                        println("1. 튀김쥐포 | W 3.0 | 바삭하고 고소해서 한입! 나도 모르게 또 한입!")
                        println("위 메뉴를 장바구니에 추가하시겠습니까? [1] Yes [2] No")
                    }

                    2 -> {
                        println("2. 새끼먹태 | W 7.0 | 골고루 먹고 싶은데 먹태가 먹고 싶다면 ㄱㄱ!")
                        println("위 메뉴를 장바구니에 추가하시겠습니까? [1] Yes [2] No")
                    }

                    3 -> {
                        println("3. 한치 | W 8.0 | 깨끗하게 건조한 1등급 한치, 씹을수록 고소한 맛!")
                        println("위 메뉴를 장바구니에 추가하시겠습니까? [1] Yes [2] No")
                    }

                    4 -> {
                        println("4. 버터구이오징어입 | W 8.0 | 버터를 만나 더 부드럽고 촉촉해진 국민 술안주")
                        println("위 메뉴를 장바구니에 추가하시겠습니까? [1] Yes [2] No")
                    }

                    0 -> {
                        println("메인화면으로 돌아갑니다.")
                        return
                    }

                    else -> {
                        println("잘못된 입력입니다. 메뉴를 확인해주세요.")
                    }
                }
            } else {
                println("숫자를 입력해주세요.")
            }
        }
    }

}

우선 menu3 클래스의 기본 구성은 이렇게 했다.
1~4을 입력하면 선택한 메뉴가 나오고 위 메뉴를 장바구니에 추가하시겠습니까? [1] Yes [2] No라는 문구가 나오는 것까지 구현했다.
0을 입력하면 while문을 종료시켜 main함수로 가게 '뒤로가기'를 구현시켰다.
그리고 목록에 없는 숫자를 입력하면 when문의 else에서 처리하게 하였고, 숫자 외의 문자를 입력하면 num == null이 되기 때문에 when문 바깥의 else에서 처리하게 구현시켰다.


🔧 추가할 기능들

팀원들과 개발진척도 확인하는 타임에서 어떤점을 추가하고 어떤 방향으로 나아가야 할지 이야기를 나누었다.
우선 메뉴와 가격, 설명을 프로퍼티로 지정해야 하고,
위 메뉴를 장바구니에 추가하시겠습니까? [1] Yes [2] No라는 문구에 입력을 받아 리스트에 추가하는 기능을 구현해야 할 것이다.
그리고 이 클래스에서도 main까지 종료할 수 있는 기능을 추가해야 한다.

지금 이 포스트를 작성하면서 들은 생각인데,
나중에 장바구니에 담긴 메뉴의 가격을 합산하는 것도 고려해보아야 할 것 같고, 이 모든 것을 구현한 뒤에는 장바구니 목록을 불러와서 항목을 삭제하는 기능도 추가하면 좋을 것 같다!

🤯 Git

git😭 깃은 쓸 때마다 어려운 것 같다.
오늘 팀장님이 만든 Repository를 클론하는데 지난번에 어떻게 했는지 생각이 안나서 검색을 했다ㅎㅎㅎㅎ
그리고 master 브랜치와 dev 브랜치 중 dev 브랜치를 기준으로 다른 브랜치를 만드는 것을 다른 팀원들이 조금 헤매서 도와줬다!
나도 알려줄 수 있는게 있다는게 행복하다😆
앞으로도 다른 사람들한테 설명해줄 수 있게 공부 열심히 해야 겠다ㅎㅎ

1개의 댓글

comment-user-thumbnail
2023년 7월 24일

잘 봤습니다. 좋은 글 감사합니다.

답글 달기