Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 이직
- 코딩테스트
- IntelliJ
- 해시맵
- 스프링 부트
- 인텔리제이
- 스타트업
- 백엔드
- 프로그래머스
- dfs
- 스프링
- 명령어
- 주니어
- bfs
- spring
- 도커
- 구름LEVEL
- Linux
- spring boot
- HashMap
- docker
- 자료구조
- 해결
- 개발자
- 구현
- Java
- 스프링부트
- 배열
- HTTP
- 문자열
Archives
- Today
- Total
마이의 개발 블로그
[디자인 패턴] MVC 패턴 (model-view-controller pattern) 본문
반응형
MVC패턴이란?
- UI 개발에 널리 사용되는 소프트웨어 디자인 패턴으로 모델, 뷰, 컨트롤러의 세 가지 요소를 가지고 있음
- 데스크탑 GUI에 전통적으로 사용되어왔기 때문에 사용자가 의식하지 못할 뿐 다양한 앱에서 사용되어옴
- 여러 프로그래밍 언어에서 MVC 패턴을 구현하는 프레임워크를 찾을 수 있음
사용 목적
- 비즈니스 로직과 화면을 분리하기 위함
- 관심사 분리 (separation of concern, SoC) : 코드의 단순화, 더 나은 유지보수성을 가능하게 함
구성 요소
1. 모델
- 직접적으로 앱의 데이터, 로직, 규약을 다루는 앱의 가장 중심이 되는 구성요소임
- UI로부터 독립적인 앱의 동적 데이터 구조임
- 컨트롤러로부터 사용자 입력(user input)을 받음
2. 뷰
- 정보를 보여주는 구성요소 (사용자가 보게되는 화면)
- 같은 정보를 여러 개의 뷰로 보여줄 수 있음
- 모델을 특정한 형식으로 보여줄 수 있음 (보여주는 방식은 뷰에서 결정됨)
3. 컨트롤러
- 사용자 입력을 받아 모델이나 뷰에 명령을 내리는 구성요소
- 데이터 모델 객체들의 상호작용을 수행하거나, 사용자 입력을 검증하여 모델에 전달함
요약
- MVC 패턴은 UI 디자인 패턴으로 모델, 뷰, 컨트롤러의 세 가지 요소로 이루어진다.
- MVC 패턴은 비즈니스 로직과 화면을 분리(의존성 감소)하여 더 나은 유지보수성을 제공한다.
- 모델은 데이터를, 뷰는 화면을, 컨트롤러는 사용자 입력에 따른 모델과 뷰의 상호작용을 담당한다.
반응형
'개발지식 > 디자인패턴' 카테고리의 다른 글
[디자인패턴] 싱글톤 패턴 (singleton pattern) (0) | 2022.03.02 |
---|
Comments