개발일지/일간회고 (TIL)
Java로 카페 만들기 / TIL(22-11-22)
윤승임
2022. 11. 22. 21:04
오늘은 자바로 카페 만들기를 시도했다.
조건은 다음과 같다.
고객은 음료를 주문할 수 있다.
음료는 아이스아메리카노(1000원) / 라떼(1500원) / 밀크티(2000원) / 밀크쉐이크(3000원) / 캐모마일(4000원)
직원은 주문 받은 음료를 제조한다.
카페의 매출 금액을 알 수 있다.
고객은 주문 시, 금액을 지불해야한다.
고객이 가진 돈 보다 높은 금액의 음료는 주문할 수 없다.
고객이 음료를 마시면 음료는 줄어든다.
내 계획은 이랬었다..
고객과 음료, 직원 클래스를 만들고, 주문, 매출 금액, 금액 지불, 재고 감소등을 인터페이스로 만든다. 음료에 그럼 재고도 추가해야 하나보다.
우선 나는 고객 클래스를 만들었다.
public class Customer {
String name; // 이름 붙여주기
int money; // 돈 쥐여주기
// 고객 인스턴스를 만드는 메소드
public Customer(String name, int money){
this.name = name;
this.money = money;
};
// 고객 인스턴스의 이름을 확인
public void getName(){
System.out.println(name);
};
// 고객 인스턴스의 주머니 사정 확인
public void getMoney(){
System.out.println(money);
};
}
고객 클래스를 만들고 메소드를 통해 이름을 붙여주고, 돈을 쥐어줬다.
근데 굳이 이름을 확인하는 것과, 돈 얼마 있는지 확인하는 메소드는 있어야하나??
음료 클래스를 만들었다.
public class Beverages{
String name;
int price;
int quantity;
// 음료 인스턴스를 추가하는 메소드 // 이름, 가격, 수량을 변수로 갖는다
public Beverages(String beverageName, int beveragePrice, int beverageQuantity){
this.name = beverageName;
this.price = beveragePrice;
this.quantity = beverageQuantity;
};
메인 클래스에서 Beverages 메소드를 이용해 음료들을 추가하고, Array에 담은 뒤, 반복문으로 각각의 메뉴들을 출력하게 했다.
public class Main {
public static void main(String[] args) {
Customer one = new Customer("one", 5000);
one.getName();
one.getMoney();
// 메뉴 등록 // 각각 음료 인스턴스를 만들었다 // 좀 비효율적인데..
Beverages 아메리카노 = new Beverages("아메리카노", 1000, 100);
Beverages 라떼 = new Beverages("라떼", 1500, 100);
Beverages 밀크티 = new Beverages("밀크티", 2000, 100);
Beverages 밀크쉐이크 = new Beverages("밀크쉐이크", 3000, 100);
Beverages 캐모마일 = new Beverages("캐모마일", 4000, 100);
// 음료를 Array에 담았다 // 앞의 Beverages[]가 있어서 해당 Method만 들어올 수 있나??
Beverages[] beverages = {아메리카노, 라떼, 밀크티, 밀크쉐이크, 캐모마일};
// 하나씩 출력했다
for (Beverages beverage : beverages){
System.out.println("제품명: " + beverage.name + " / 가격: " + beverage.price + " / 재고: " + beverage.quantity);
}
}
}
와 이렇게 하는게 맞나?? 자바 진짜 넘 어렵다..
앞으로의 계획은 고객이 주문을 하는 메소드와 그에 따른 비용 지불, 재고 감소등을 구현해야하는데 앞길이 막막하다..
내일부터 팀 프로젝튼데 잘 할 수 있으려나?
막상 닥치면 필사적으로 여기저기 이잡듯 뒤져가며 구현을 하려고 노력하겠지만 일단 그 전에 오늘 기본적인 개념부터 잡아봐야겠다..
나 화이팅!!!
알아봐야할것들
StringBuilder
MVC 패턴