MVC model 로 구축해보자 정보
JavaScript MVC model 로 구축해보자
본문
MVC(Model-View-Controller)패턴을 기반을 둔 GUI(Graphical User Interface)를 만들기 위한 설계패턴이다. 즉, MVC 패턴의 여러 패턴 중 하나이다.
( 참고 : MVC 패턴은 너무나 잘 알려진 설계패턴으로 1979년에 제록스 팰러앨토 연구소에서 스몰토크 관련 일을 하던 Trygve Reenskaug에 의해 처음 설명되었으며, 아직까지도 가광을 받고 있는 패턴이다.)
MVP 패턴은 View와 Model 간의 결합도를 낮추는데 있으며, Presenter는 Model의 데이터를 View에 출력할 수 있도록 할 뿐만 아니라, 이벤트(Event)를 View에서 받아 Model의 데이터를 갱신하도록 한다. 실제 구현에서는 Presenter는 View와의 결합도를 감소 시키기 위해서, Interface를 참조한다. 이를 통해 Presenter는 View의 실제 UI요소가 어떻게 구현되는지에 관계없이 데이터를 올바르게 표현 하도록 하는 것 이다. 아래 그림을 참고하면 이해가 쉬울 것이다.
( 참고 : MVC 패턴은 너무나 잘 알려진 설계패턴으로 1979년에 제록스 팰러앨토 연구소에서 스몰토크 관련 일을 하던 Trygve Reenskaug에 의해 처음 설명되었으며, 아직까지도 가광을 받고 있는 패턴이다.)
MVP 패턴은 View와 Model 간의 결합도를 낮추는데 있으며, Presenter는 Model의 데이터를 View에 출력할 수 있도록 할 뿐만 아니라, 이벤트(Event)를 View에서 받아 Model의 데이터를 갱신하도록 한다. 실제 구현에서는 Presenter는 View와의 결합도를 감소 시키기 위해서, Interface를 참조한다. 이를 통해 Presenter는 View의 실제 UI요소가 어떻게 구현되는지에 관계없이 데이터를 올바르게 표현 하도록 하는 것 이다. 아래 그림을 참고하면 이해가 쉬울 것이다.
presenter => View와 Model간의 상호작용을 담당하며, Model의 데이터를 View Interface를 통해 Concrete View에 출력(바인딩)해주고, 사용자의 이벤트를 View에서 구독하여(실제적인 이벤트 핸들러 구현) Model의 데이터를 갱신하는 역할을 수행한다 보통 개발할때의 인덱스 소스부분.
view =>View Interface의 Display 맴버(Properties, Display Methods)를 구현하여 실제적인 UI요소를 그려준다
보통 개발할때의 스킨부분
view Interface => Presenter에서 Concrete View를 지접 참조하지 않고 View Interface를 참조함으로써 Concrete View와의 커플링을 감소시키고, View의 실제 UI 요소가 어떻게 구현되는지 몰라도 데이터를 올바르게 표현할 수 있도록 해준다 보통 개발할때의 스킨과 소스가 결합한 화면
model => 데이터와 상태를 유지하며, 데이터 처리 로직을 포함한다 보통개발할때의 각파트 처리파일
추천
2
2
댓글 0개