☕ 카페 운영
📋 프로젝트 개요
클래스를 활용하여 카페의 메뉴 관리와 주문 시스템을 구현해보세요. 실제 비즈니스에서 사용할 수 있는 프로그램을 만들면서 객체지향 프로그래밍을 익힐 수 있습니다!
🎯 학습 목표
- 클래스를 활용한 데이터 관리
- 객체 간 상호작용 구현
- 실전적인 비즈니스 로직 구현
- 리스트와 딕셔너리 활용
🚀 기본 기능
핵심 요구사항
메뉴 클래스와 주문 관리 구현
-
Menu 클래스 설계
- 메뉴 이름, 가격, 카테고리 (음료/디저트/푸드)
- 메뉴 정보 출력 메서드
-
Order 클래스 설계
- 주문 번호, 고객명, 주문 항목들
- 총 금액 계산 메서드
- 주문 요약 출력 메서드
-
기본 카페 운영
- 메뉴 등록 및 조회
- 고객 주문 받기
- 주문 내역 관리
💻 출력 예시
=== 파이썬 카페 ===
1. 메뉴 관리
2. 주문 받기
3. 주문 내역
4. 종료
선택: 1
=== 메뉴 관리 ===
1. 메뉴 추가
2. 메뉴 보기
3. 메인으로
선택: 1
메뉴 이름: 아메리카노
가격: 4500
카테고리 (음료/디저트/푸드): 음료
✅ 아메리카노가 추가되었습니다!
선택: 2
=== 메뉴 목록 ===
[음료]
1. 아메리카노 - 4,500원
2. 카페라떼 - 5,000원
[디저트]
3. 치즈케이크 - 6,500원
선택: 2
=== 주문 받기 ===
고객명: 김고객
메뉴 선택 (0=완료):
1. 아메리카노 (4,500원)
선택: 1
수량: 2
총 금액: 9,000원
주문하시겠습니까? (y/n): y
✅ 주문이 완료되었습니다!
💡 구현 힌트
- Menu 클래스에
__str__
메서드를 구현해보세요 - Order 클래스에서 주문 항목을 리스트로 관리하세요
- 주문 번호는 자동으로 생성되도록 하세요
🎨 추가 기능 1: 직원 관리
요구사항
카페에서 일하는 직원을 관리하는 시스템을 추가합니다.
- Staff 클래스: 이름, 직급, 근무시간
- 직원 등록: 새 직원 정보 등록
- 주문 처리: 직원이 주문을 처리하고 완료
직원 관리 예시
=== 직원 관리 ===
1. 직원 등록
2. 직원 목록
3. 주문 처리
선택: 1
이름: 이바리스타
직급: 바리스타
✅ 이바리스타님이 등록되었습니다!
선택: 3
=== 주문 처리 ===
대기 중인 주문:
1. ORD001 - 김고객 (9,000원)
처리할 주문: 1
담당 직원: 이바리스타
✅ 주문이 완료되었습니다!
💡 추가 기능 2: 고객 관리
요구사항
단골 고객을 관리하고 포인트 적립 시스템을 추가합니다.
- Customer 클래스: 이름, 전화번호, 포인트
- 포인트 적립: 구매 금액의 1% 포인트 적립
- 포인트 사용: 보유 포인트로 결제
고객 관리 예시
=== 주문 받기 ===
고객 전화번호: 010-1234-5678
안녕하세요, 김단골님! (포인트: 1,200P)
총 금액: 9,000원
포인트 사용하시겠습니까? (y/n): y
사용할 포인트: 1000
결제 금액: 8,000원
적립 포인트: 80P
남은 포인트: 280P
✅ 결제가 완료되었습니다!
🔍 추가 기능 3: 매출 분석
요구사항
일일 매출과 인기 메뉴를 분석하는 기능을 추가합니다.
- 매출 통계: 총 매출과 주문 수 계산
- 인기 메뉴: 가장 많이 팔린 메뉴 순위
- 직원 성과: 직원별 처리한 주문 수
매출 분석 예시
=== 매출 분석 ===
총 매출: 127,500원
총 주문: 15건
평균 주문 금액: 8,500원
인기 메뉴 TOP 3:
1. 아메리카노 - 8잔
2. 카페라떼 - 5잔
3. 치즈케이크 - 3개
직원 성과:
이바리스타: 12건 처리
박매니저: 3건 처리
✅ 프로젝트 완성 체크리스트
✅ 카페 운영 완성 체크리스트
💡 학습 포인트
이 프로젝트를 통해 다음을 학습할 수 있습니다:
- 클래스 설계: 실제 비즈니스 요소를 클래스로 모델링
- 객체 관계: 메뉴, 주문, 직원, 고객 간의 관계 구현
- 데이터 관리: 리스트와 딕셔너리를 활용한 정보 저장
- 비즈니스 로직: 포인트, 매출 계산 등 실무 로직 구현
- 사용자 경험: 직관적인 메뉴와 안내 메시지
단계별로 구현하면서 실제 사업에서 사용할 수 있는 프로그램을 만들어보세요! 💼
Last updated on