라벨이 PATTERN인 게시물 표시

[디자인 패턴] MVC 패턴. Model, View, Controller 자바로 보는 이해 빠른 간단한 예제

이미지
MVC는 굉장히 많은 어플리케이션에서 사용이 가능하다. 모바일, 데스크탑(윈폼, 스윙 등), 웹 등 다양하게 MVC 패턴을 사용할 수 있다. 스프링 같은 경우는 MVC를 사용해야한다. 사실 Model, View, Controller 각각의 역할은 이론적으로 알지만 코드로 작성할 때 어떻게 해야하는지 감이 잘 안오는 경우가 많다. 그래서 간단한 예제를 사용해서 설명하려고한다. MVC 구성도 MVC 클래스 다이어 그램 MVC 각각의 특징 Controller Controller는 관리자 라는 의미를 가지고 있다. Model, View를 가지고 있어 값을 처리하고 화면에 보여주는 것을 관리한다. Controller의 역할은 로직의 순서를 정한다고 봐도 된다. 예를 들어 상품을 구매하는 상황이다. 컨트롤러는 아래와 같은 순서로 처리해야할 것이다. 사용자가 올바른지 - Model DB에서 상품 구매 - Model 결제 - Model 결제 성공 뷰 - View 위 상황은 예제일 뿐 실제 상황에서는 적절치 않을 수 있다. 위에 여러 상황을 볼 때 컨트롤러에서는 사용하는 것은 Model, View 밖에 없다. 이것이 컨트롤러의 역할이다. 즉 컨트롤러는 Model에서 로직 처리를 관리해야한다. 관리라는 것은 예를 들어 사용자가 올바르지 않는 경우 상품 구매 진행이 되면 안되는 것을 말한다. 이처럼 로직의 흐름을 제어하고 여러 케이스(상황)에 대하여 조작하여야한다. 웹에서의 Controller의 시작은 Api 호출이 될 것이다. 클라이언트가 특정 URL로 웹에 요청하였을 때 Controller로 들어가게 되는 것이다. public class Controller{ public static void main(String[] args) { Model model = new Model(); View view = new View(); int num1 = view.numInput(); int ...