티스토리 뷰
MVC 패턴(Model, View, Controller)
- Model과 View사이에 Controller가 있음
- MVC 패턴의 가장 큰 장점은 비즈니스 로직과 프리젠테이션 로직이 분리되어 있어서 디자이너와 개발자의 영역이 분리됨으로써 서로 각자의 영역에 더 집중할 수 있음 -> 유지보수가 용이함
Model Component
- 핵심기능, 데이터 처리 등 주로 DB쪽을 담당함
- 핵심기능과 데이터를 캡슐화하여 입출력에 영향을 받지 않고 독립적으로 움직임
- DTO, DAO 등 비즈니스 로직
- 대부분의 java 파일은 전부 Model
- 비즈니스 데이터는 DBMS에 의해 관리, 그 데이터를 다루는 연산은 SQL문을 통해서 구현함
View Component
- 주로 디자인에 관련된 부분으로 사용자에게 정보를 출력
- 모델로부터 제공된 데이터를 다양한 뷰를 통해 표시하며, 각 뷰마다 컨트롤러가 연결되어 있음
Controller Component
- View와 Model을 연결해주는 중간 서블릿
- 사용자의 입력을 처리하는 관리자 역할
- 사용자 인터페이스 플랫폼에 따라 이벤트 전달 과정이 달라짐
- 모델 데이터 상태에 따른 컨트롤러 UI의 변경이 가능
MVC 모델1
: 뷰와 컨트롤러를 같이 처리함. 빠르게 여러 기능을 한곳에 다 처리해버리는 것처럼 역할분담을 하지 않고, 모델2에 비해 로직처리가 단순함
MVC 모델2
: 기능, 뷰, 컨트롤러를 나누어 작업함. 경우에 따라서 단순 기능의 작업을 하는 경우 모델1이 더 유용할 수 있으나 여러 기능을 처리하는 작업을 하는 경우 나중에 유지보수를 편하게 할 수 있는 모델2 방식이 더 효율적
'Dev > Design Pattern' 카테고리의 다른 글
헤드퍼스트 디자인 패턴: 옵저버 패턴 (Observer Pattern) (0) | 2020.04.07 |
---|---|
헤드퍼스트 디자인 패턴: 스트래티지 패턴 (Strategy Pattern) (0) | 2020.04.05 |
헤드퍼스트 디자인 패턴: 디자인 원칙 정리 (0) | 2020.04.05 |
Coupling이란? Tight Coupling vs Loose Coupling 정리 (0) | 2020.04.04 |
[Java] 객체지향 설계 5원칙 SOLID (SRP, OCP, LSP, ISP, DIP) (0) | 2020.04.01 |
- Total
- Today
- Yesterday