CS 스터디 - 아키텍처 패턴편

RushBsite·2022년 9월 20일
0

cs 스터디

목록 보기
5/5

주제

✍️개념

MVC (Model - View - Controller)

-> Model 과 View 의 의존관계

MVP (Model - View - Presenter)

-> Model과 View 분리

MVVM

❓파생질문

질문 1: mvc 패턴에 대해서 설명해 주세요

-> Model - View - Controller 의 각 컴포넌트 앞글자
-> 서브 시스템 구조화
-> input - controller / output - view
-> 여러개의 view 존재 가능
-> 1 model - n view의 대화형 app 적합
-> 유지보수의 편리성

질문 1-1 : mvc 패턴의 단점이 있나요? 이때 어떤 식으로 개선해볼수있을까요?

->다수의 view다수의 model 이 하나의 controller를 통해 연결 = 컨트롤러의 비대화 (view 와 model 의 상호 의존성)

이를 Massive View Controller 라 부름
-> 대표적인 개선 방안 파생안으로 MVP / MVVM / FLUX / Redux 등등이 있음

질문 2 : mvp 패턴의 뷰와 프레젠터 관계는 어떤 관계인가요? 또 MVC 패턴의 컨트롤러와 MVP 패턴의 프레젠터는 어떤 차이가 있나요?

-> 여전히 View 와 Presenter 는 의존관계

-> MVC 에서의 Controller 와 MVP 에서의 Presenter의 역할은 동일

-> but MVC의 Controller는 Input 담당, 결합도 높고 응집도 낮음
-> Controller 는 View를 선택할뿐, 직접 갱신신하지 않음

-> MVP 의 Presenter는 이벤트 전달, 갱신 담당 결합도 낮고 응집도 높음

질문 2-2 : 실제 MVC나 MVP를 프로젝트나 작업에서 사용한 적이 있나요?

-> 유니티 Tank multi - UI

질문 3 : MVC에서의 view와 MVP에서의 view가 어떻게 다른지 설명해주세요


profile
게임 기획/개발 지망생

0개의 댓글