본문 바로가기
Java (국비)/Java 과제

MVC (Model-View-Controller) 과제 Client 파트

by Hwanii_ 2023. 5. 30.
728x90

Client

 

 

Console

 

상품 자판기 프로그램

 

상품이 현재 없기 때문에 출력, 구매 XXX

 

상품이 현재 없기 때문에 검색 XXX

 

5번 입력시, 프로그램 종료 및 새로운 사용자가 새로 입장하는 무한 동작 하는 프로그램

 

1234 입력시 관리자 모드

 

1번 누를시, 상품 추가

 

2번 누를시, 재고 변경

 

상품 목록 출력

 

상품 구매하기

 

상품 검색 이름으로

 

상품 검색 가격으로 (필터검색)

 

상품 삭제하기

 

삭제 완료된 목록

 

23.05.30

 

느낀점 :

 

1. 프로젝트를 연습해보니, 처음에 보이지 않았던 M과 V를 연결시켜주는 C의 역할의 중요성을 알게 됬다.

 

2. V가 아주아주 중요하다는 것을 느꼈다. 사용자에게 보이는 편의성을 고려하기.

 

3. M을 구현할 때, 비즈니스메서드는 이름이 고정이기에, CRUD 중에 같은 기능을 가지고 있는

메서드를 구현한다면, 객체 묶음을 보낼 때 사용하지 않는 인자를 활용하기.

 

== searchCondition

== KeyWord

 

4. 어떤 기능을 구현하려는데 자료형 (VO의 타입) 이 같다면, DAO를 분리 하지 않는다.

 

중요 정리 :

 

1. 설계서는 사실에 의거해서 정확하게 표기.

 

2. 설계서에 간단정리를 따로 해서 표기하면 좋다.

(내가 아닌 타인이 설계서를 읽을 때 간단정리 부분만 보더라도 이해가 될 수 있도록)

 

3. 설계도를 정확하고, 꼼꼼하게 짜야 하는 이유.

 

이후에,

메서드 시그니쳐가 변경되면 (모든 파트의 메서드 시그니쳐),

모든 파트의 메서드 에 영향을 가하게 된다. (input, output)

 

==

1. 결합도가 높은 코드임을 의미.

2. 유지 보수 불리.

3. 좋지 않은 코드.

반응형