[4] MVC 패턴

2023. 3. 2. 18:22·백엔드 back-end

1.MVC ( Model View Controller)

디자인 패턴 중 하나인 MVC 패턴은 어플리케이션을 구성할 때 그 구성요소를 세가지의 역할로 구분한 페턴을 의미 

사용자 인터페이스로부터 비즈니스 로직을 분리하여 서로 영향없이 쉽게 고칠 수 있는 설계가 가능

 

1) Controller 

- 모델과 뷰 사이에서 브릿지 역할을 수행 

- 앱의 사용자로부터 입력에 대한 응답으로 모델 및 뷰를 업데이트 하는 로직을 포함 

- 사용자의 요청은 모두 컨트롤러를 통해 진행되어야함 

- 컨트롤러로 들어온 요청은 어떻게 처리할지 결정하여 모델로 요청을 전달함 

 

2) Model 

- 데이터를 처리하는 영역 

- 데이터베이스와 연동을 위한 DAO와 데이터의 구조를 표현하는 DO로 구성됨 

ex) 검색을 위한 키워드가 넘어오면 데이터베이스에서 관련된 상품의 데이터를 받아 뷰에 전달 

 

3) View 

- 데이터를 보여주는 화면 자체의 영역을 뜻함 

- 사용자 인터페이스 요소들이 여기에 포함되며, 데이터를 각 요소에 배치함 

- 뷰에서는 별도의 데이터를 보관하지 않음 

 

2. MVC 패턴의 특징 

 

-어플리케이션의 역할을 세구간으로 나누어 설계함으로써 서로 간의 의존성이 낮아짐 

-각 영역이 독립적으로 구성되어 개발자 간 분열 및 협업이 원할 

-한 영역을 업데이트 하더라도 다른 곳에 영향을 주지않음 

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

[6] GET API 만드는 다양한 방법 실습  (0) 2023.03.03
[5] Hello World 응답하기  (0) 2023.03.02
[3] pom.xml  (0) 2023.03.02
[2] REST API  (0) 2023.03.02
[1] 스프링 부트 프로젝트 생성 및 구조, 메이븐과 그레이들  (0) 2023.01.06
'백엔드 back-end' 카테고리의 다른 글
  • [6] GET API 만드는 다양한 방법 실습
  • [5] Hello World 응답하기
  • [3] pom.xml
  • [2] REST API
니블
니블
  • 니블
    기록장
    니블
  • 전체
    오늘
    어제
    • 분류 전체보기 (86)
      • 카프카 Kafka (2)
      • 데이터베이스 db (3)
      • 깃 git (4)
      • 백준 baekjoon (31)
      • 백엔드 back-end (20)
      • 점프 투 스프링부트 (8)
      • 메세지 큐 mq (3)
      • 개발도구 tool (3)
      • 레디스 Redis (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스프링부트
    mysql
    몽고DB
    guard clause
    rebase
    heapq
    kafka
    트러블슈팅
    logger
    2108
    EC2
    Git
    1927
    자바
    @value
    db
    SQUASH
    리베이스
    로거
    AWS
    restcontroller
    사용자이름
    분산처리
    gitconfig
    Message Queue
    이벤트스트리밍
    최대힙
    백준
    분산구조
    메세지큐
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
니블
[4] MVC 패턴
상단으로

티스토리툴바