본문 바로가기
ComputerScience/(짧)CS전공지식노트

1장-디자인 패턴) MVC 패턴

by VictorMeredith 2023. 2. 27.

1. MVC 패턴이란 ?

- Model, View, Controller 로 이루어진 디자인패턴이다.

지겹게 봤죠?

- 앱의 구성요소를 세가지로 구분하여 개발 프로세스에서 각각의 구성요소에만 집중해서 개발할 수 있다.

- 재사용성과 확장성이 용이하지만, 복잡할 수록 모델과 뷰의 관계가 복잡해지는 단점이 있다.

 

2. 모델

- model은 앱의 데이터인 DB, 상수, 변수 등을 뜻한다.

- 박스모델에서 박스의 위치, 글자, 포맷, 모양 등에 관한 정보들을 가지고 있어야 한다.

- 뷰에서 데이터를 생성하거나 수정하면 컨트롤러를 통해 모델을 생성하거나 갱신한다.

 

3. 뷰

- inputbox, checkbox, textarea 등 사용자인터페이스(UI)를 나타낸다.

- 모델을 기반으로 사용자가 볼 수 있는 요소 및 화면을 뜻한다.

- 모델이 가지고 있는 정보를 따로 저장하지 않아야 하며, 단순히 화면에 표시하는 정보만 가지고 있어야 한다.

- 변경이 일어나면 컨트롤러에 일러 바쳐야 한다.

 

4. 컨트롤러

- 하나 이상의 모델과 하나 이상의 뷰를 잇는 다리 역할을 하며, 이벤트 등의 메인 로직을 담당한다.

- 모델과 뷰의 생명주기도 관리하며, 모델이나 뷰의 변경통지를 받으면 이를 해석해서 각각의 구성요소에 내용을 전달한다.

 

5. 리액트

- 리액트가 MVC패턴을 이용한 대표적인 라이브러리이다.

- 리액트는 UI구축에 특화된 라이브러리이며, 가상DOM을 통해 실제DOM조작을 추상화해서 성능을 높인다.

- 특성으로는 불변성, 단방향 바인딩, 높은 자유도, 거지같이 더러운 문법 등이 있다.

댓글