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 |
Tags
- css필수 속성
- JS
- HTML
- css박스 모델
- cpu 성능 향상 기법
- 코딩 자율학습 html + css + 자바스크립트
- 혼자 공부하는 컴퓨터구조+운영체제
- 이벤트
- html 필수태그
- css배경
- do it! html+css+자바스크립트 웹 표준의 정석
- 코딩 자율학습 html + css + 자바스크립트]
- 브라우저 렌더링 원리
- Git
- Do it
- TS
- 코딩자율학습
- CSS
- do it! 한권으로 끝내는 웹 기본 교과서 html+css+자바스크립트 웹 표준의 정석
- JavaScript
- 코딩
- 비대칭키 암호화
- 메모리와 캐시 메모리
- propschildren
- react
- https://api.jquery.com/
- 자바스크립트
- 이벤트버블링
- CPU
- 코딩 자율학습
Archives
- Today
- Total
게으른 나에게
[소프트웨어] - MVC(Model-View-Controller) 패턴 본문
MVC(Model-View-Controller) 패턴
- 소프트웨어 설계 및 아키텍처를 위한 디자인 패턴 중 하나
- 사용자 인터페이스(UI)와 애플리케이션의 비즈니스 로직을 분리하여 유지보수성과 확장성을 높이는 설계 방식
- 주로 웹 애플리케이션, GUI 애플리케이션, 모바일 애플리케이션 등에서 널리 사용됨
MVC 패턴 목적
- 응집도를 높이고 결합도를 낮춰 유지보수를 쉽게 함
- 역할을 명확하게 분리하여 코드의 가독성과 확장성을 향상
- 사용자 인터페이스(UI)와 비즈니스 로직을 분리하여 독립적인 개발 가능
MVC 패턴 특징
- 데이터(Model), 사용자 인터페이스(View), 제어 로직(Controller)을 분리
- 각 구성 요소가 독립적으로 작동하여 유지보수가 용이
- 애플리케이션의 흐름을 체계적으로 관리할 수 있음
MVC 패턴 구성요소
1️⃣ 모델(Model)
- 애플리케이션의 데이터 및 비즈니스 로직 담당
- 데이터 저장소(DB)와 상호 작용하며, 데이터의 유효성 검사 및 처리 기능 포함
- 독립적으로 작동하며 뷰(View) 및 컨트롤러(Controller)와 직접 연결되지 않음
2️⃣ 뷰(View)
- 사용자에게 데이터를 표시하는 UI 역할
- 모델에서 데이터를 받아 사용자에게 표시 → 사용자의 입력을 컨트롤러에 전달
3️⃣ 컨트롤러(Controller)
- 사용자의 입력을 처리
- 애플리케이션의 흐름 관리
- 사용자의 요청을 받아 모델을 조작 → 변경된 데이터를 뷰에 전달 → 화면 표시
- 모델과 뷰를 연결하는 중간 매개체 역할 수행
작동 원리

예제) 쇼핑 리스트 애플리케이션
- 사용자가 상품을 추가 → 뷰(View)가 입력을 감지하여 컨트롤러(Controller)로 전달
- 컨트롤러가 입력을 분석하고 모델(Model)을 업데이트 → 새로운 상품을 리스트에 추가
- 모델이 데이터 저장 및 갱신 후 컨트롤러에 결과 반환
- 컨트롤러가 모델의 데이터를 받아 뷰(View)에 전달하여 UI 업데이트
- 뷰(View)가 업데이트된 데이터를 사용자에게 표시
사용자 입력 → View 감지 → Controller 전달 → Model 조작 → 결과 반환 → View 업데이트 → 사용자에게 표시
출처
https://www.geeksforgeeks.org/mvc-design-pattern/
MVC Design Pattern - GeeksforGeeks
The MVC design pattern organizes applications into three components\u2014Model, View, and Controller\u2014facilitating easier maintenance, modularity, and reusability of code.
www.geeksforgeeks.org
'My Study > CS' 카테고리의 다른 글
[CS] - 코드 최적화(Code Optimization) (0) | 2025.03.24 |
---|---|
[CS] - 컴파일러(Compiler)와 인터프리터(Interpreter) (1) | 2025.03.24 |
[컴퓨터 아키텍처] - CPU와 GPU (1) | 2025.03.23 |
[네트워크] - HTTP와 HTTPS (1) | 2025.03.23 |
[네트워크] - TCP와 UDP (0) | 2025.03.23 |