2012-09-10 4 views
-1

제목에 언급 된 패턴을 구분할 수 없었습니다.웹 사이트 MVC MVP 또는 MVVM입니까?

동적 웹 사이트에는 기본적으로 HTML, CSS 및 자바 스크립트로 개발 된 사용자 인터페이스가 있습니다 (최소한 사용자에게 표시되는 것입니다). 백엔드는 PHP 또는 ASP (또는 무엇이든)로 데이터베이스에 연결될 수 있습니다.

데이터베이스가 모델이고 UI가보기로 생각됩니다. 백엔드가 컨트롤러, 발표자 또는 뷰 모델입니까?

설명 답과 필요한 경우 링크를 부탁드립니다.

+1

다음과 같이 확인하십시오. 요청한 것과 거의 같습니다. http://stackoverflow.com/questions/1298428/mvc-mvp-mvvm-what-the-heck?rq=1&hl=ko http://stackoverflow.com/questions/2105121/what-to-use-mvc-mvp-or-mvvm-or? rq = 1 – user1477388

+1

관련 항목 : http://stackoverflow.com/q/11877575/727208 –

+0

가능한 복제본 [MVC와 MVVM?] (http://stackoverflow.com/questions/667781/what-is-the-difference-between-mvc-and-mvvm) –

답변

5

소스 코드에 액세스하지 않고 응용 프로그램에 사용 된 디자인 패턴을 결정할 수 없습니다. 그리고 나는 이것이 당신이 요구하고있는 것임을 명확한 인상을줍니다.

  • 모델 데이터베이스되지 않습니다 :

    은 또한 당신은이 MVC와 MVC에서 영감을 디자인 패턴의 부분이 무엇인지에 대해 다소 혼란 것으로 보인다. 모든 도메인 비즈니스 로직을 포함하고 하나 이상의 데이터 소스 (데이터베이스 일 수도 있고 아닐 수도 있음)와 상호 작용하는 응용 프로그램의 계층 (클래스 또는 객체가 아닙니다)입니다.

  • UI는 프레젠테이션 계층에 의해 유지됩니다. 대부분 프레젠테이션 계층은보기 및 컨트롤러와 유사한 구조로 주로 구성됩니다.
0

이 마이크로 소프트의 MSDN 문서 WPF Apps With The Model-View-ViewModel Design Pattern 마틴 파울러의 Presentation Model 패턴의 마이크로 소프트 사용자 정의로 MVVM에 대해 설명합니다. 그의 Passive View 패턴은 MVP 방식입니다. 그의 Supervising Controller 패턴은 MVC 방식입니다. 이 older article은 그러한 패턴의 진화를 취합니다. 모든 언어와 프레임 워크가 GUI 패턴을 잘 지원하지는 않습니다. 예를 들어 MVVM은 데스크톱 프로그래밍을 위해 Microsoft에서 개발했습니다. 웹 페이지는 일반적으로 이벤트 중심의 "데스크톱"프로그래밍 모델이 아닌 전체 페이지 새로 고침이 있습니다. 데스크탑 패턴을 웹 페이지 프로그래밍 모델로 축소하려고 시도하는 것이 인식을 넘어서는 것을 왜곡한다는 것은 논쟁의 여지가 있습니다.

이벤트 구동 프로그래밍 모델을 사용하는 최신 웹 프레임 워크는 ZK입니다. 이 기사 Implementing event-driven GUI patterns using the ZK Java AJAX framework은 위에서 언급 한 세 가지 Martin Fowler 패턴을 사용하여 동일한 간단한 화면을 세 번 쓰는 것을 간략하게 설명합니다. 모든 것은 브라우저의 html과 javascript로 변환되지만 실제 응용 프로그램 화면 코드는 "desktop"으로 구동되는 serverside 이벤트에서 실행됩니다. 뷰, 모델 및 MVC/MVP/MVVM 패턴의 세 번째 부분은이 프레젠테이션 에서 설명합니다.

관련 문제