어느 쪽이 더 좋습니까? 나는 둘 다 조사해 보았고 사람들이 부르는 것에 일관성이없는 것 같다.MVC 또는 MVP? 어떤 디자인 패턴이 가장 합리적입니까?
나는 차이점이 무엇인지 적어두고 내가 틀렸다면 나를 바로 잡을 수 있습니다.
MVC
- 모델은 관찰자에게 통지 모델에 대한 업데이트에 그것의 자신의 관찰자 (조회수)에 대한 참조를 보유하고있다.
- 뷰는 모든 이벤트와 메시지를 컨트롤러로 전달합니다. 뷰는 변경 내용이 모델에 의해 통지 될 때 해당 내용을 업데이트합니다. 뷰에는 컨트롤러 및 모델에 대한 참조가 있습니다.
- 컨트롤러는 모델과 (때로는) 뷰를 보유합니다. 사용자 입력에 대응하는 컨트롤러 메소드를 호출보기는, 제어기는 다음과 같은 따라서 모델 maniuplates, 때로는 (소정의 클릭 수의 버튼을 차단 등) 뷰
MVP를 조작
- 모델에 뷰에 대한 참조가 없습니다. 프로그램에 대한 데이터 추상화 만 제공합니다. 모델은 아무 것도 언급하지 않습니다.
- MVC보기에서와 마찬가지로 사용자 입력에 따라 해당 Presenter 메서드를 호출합니다. 보기에는 발표자에 대한 참조 만 있습니다.
- Presenter에는보기 및 모델에 대한 참조가 있습니다. View가 Presenter에서 메서드를 호출하면 Presenter는 Model을 조작 한 다음 View를 조작합니다.
저는 MVP가 작동하는 방식을 잘 알고 있습니다. MVP가 iffy 일 경우 내 이해입니다. 정말 MVC가 정말 좋아요.하지만 저와 잘 어울리지 않는 유일한 부분은 데이터 계층의 추상화 인 Model이 뷰에 대한 참조를 보유하고 업데이트한다는 사실입니다. 그건 말이되지 않습니다.
긴 줄이있는 직선 텍스트를 사용하면 블록 인용 부호가 코드 샘플 블록보다 훨씬 읽기 쉽습니다. –
http://stackoverflow.com/questions/2056/what-are-mvp-and-mvc-and-what-is-the-difference –
@ejac, 어떻게하면 블록 견적을 수행 할 수 있습니까? – DevDevDev