Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

ENN

MVC MVVM MVP 본문

백엔드

MVC MVVM MVP

k.dahee 2022. 9. 19. 10:56

1. MVC(Model View Controller)

- 의미: 하나의 프로젝트를 구성할 때 그 구성요소를 세가지 역할로 구분한 패턴

- 사용하는 이유: 하나의 프로젝트를 만들면 각각의 요소에만 집중할 수 있게 되고, 유지보수성, 확장성이 증가하게 되어 개발의 효율성이 높아짐. 

1)  Model: 데이터와 비즈니스 로직을 관리함

- 사용자가 편집하고자하는 모든 데이터를 가지고 있어야함. 

- 뷰나 컨트롤러에 대해 알면 안됨

- 변경을 요청하면 이를 처리할 수 있는 방법을 구현해야함. 

 

2) View: 레이아웃과 화면을 처리함

- 모델에게 전달받은 정보를 저장하면 안됨

- 모델이나 컨트롤러에 대해 알면 안됨

 

3) Controller: 명령을 모델과 뷰 부분으로 라우팅함. 

- 모델이나 뷰에 대해서 알고 있어야함

- 모델이나 뷰의 변경에 대해 모니터링해야한다.

 

 

 

2. MVP(Model View Presenter)

1. Model

- 비즈니스 로직을 나타내고 클래스의 집합. 

- 데이터가 바뀌고 조작되는지에 대한 비즈니스 규칙을 디자인하는데 동작

 

2. View

- 레이아웃과 화면을 구성함

 

3. Presenter

- 뷰에 연결되는 것이 아니라 인터페이스로 연결이 됨

- 뷰와 모델 사이에서 자료 전달 역할을 함.

 

 

 

3.MVVM(Model View ViewModel)

- 뷰와 뷰모델 사이의 양방향 데이터 바인딩을 발견할 수 있음

- 테스트가 용이하다.

 

 

1. Model

- 데이터와 비즈니스 로직을 관리함

2. View

- UI컴포넌트를 나타냄

3. ViewModel

- 메서드와 함수들을 나타내는 것

- 모델을 작동하기 위한 명령을 나타내고 뷰의 상태를 유지시킨다.

 

'백엔드' 카테고리의 다른 글

쿠키(Cookie)와 세션(Session)  (0) 2022.09.19
My Batis  (0) 2022.09.19
Lombok의 기능 알아보기  (0) 2022.09.19
[Spring] @PostMapping vs @PutMapping  (0) 2022.09.17
Spring boot 기본 개념(Controller, Service, DAO, DTO, Mapper)  (0) 2022.09.14