Skip to content

[FEAT] 자료구조 라이브러리를 이용해서 클래스 내의 함수 내용 바꾸기 #6

@Acho-mj

Description

@Acho-mj

📄 description

자료구조 라이브러리를 이용해서 클래스 내의 내용을 효율적이고 간단하게 바꾸기
Ex) 기존에 구현한 배열은 arraylist로 바꿔서 효율적으로 메모리 사용

✅ feature

  • Menu 클래스
  • Restaurant 클래스
  • Table 클래스
  • Order 클래스
  • Main(UI) 클래스
  • 파일 저장하기는 메뉴에서 선택하는 시점에 저장
  • 파일 읽기는 무조건 프로그램 시작 구동시 수행(파일 존재X -> 없다고 출력하고 프로그램 종료. 파일 불러오기 에러 발생 -> 에러 발생 출력하고 프로그램 종료)

⚙️ etc

#2 에 대한 교수님 피드백
함수 앞에 static을 사용해서는 안됩니다. 이는 객체의 독립성을 해치는 코딩입니다.레스토랑 객체에서 오더 객체를 저장하는 것 보다는레스토랑 객체에서 테이블 객체를 저장하고, 테이블 객체에서 테이블 정보 및 오더 정보들을 저장해야 합니다. UI 에서 레스토랑 객체로 화일 이름을 전달하는것 보다는 화일 객체를 전달하는 것이 옳바른 객체 지향적인 전달 방식입니다.

  • 함수 앞에 static 수정하기
  • 레스토랑 객체에서 테이블 객체 저장하고, 테이블 객체에서 주문 객체 저장
  • 화일 이름 말고 화일 객체로 전달하기

#6 에 대한 교수님 피드백
public Table loadTable(DataInputStream dis, Restaurant restaurant)
테이블에서 레스토랑 객체를 파라메터로 받는 것은 잘못된 표현입니다.
레스토랑 내에 테이블이 있습니다.

공지사항 대로 equals 함수의 파라메터를 Object 형으로 받아서 형 변환해야 정상 작동합니다.

public String toString() 함수 역시 입출력 문에 해당됩니다. UI 클래스 이외에는 나와서는 안됩니다.

레스토랑 클래스에서 구현되어야 할 일부 로직들이 UI 에서 구현되었습니다. 가급적, UI에는 로직이 포함되는것을 지양해야 합니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    feat기능추가

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions