MVC 관련 프로젝트의 아키텍처를 디자인하는 동안 몇 가지 질문이 있습니다. (이것은 C ++ / Marmalade SDK 프로젝트이며 특정 MVC 프레임 워크를 사용하지 않고 있습니다.)
여러 기사 ( 원래 Steve Burbek 기사 에서와 같이 )에서 나는이 개념을 문자 그대로 받아 들인 이래로 "MVC triad"라는 개념을 계속 읽습니다. 처음 읽었을 때 응용 프로그램이 "MVC 트라이어드"단위 (내가 생각한 각 UI 부분에 대해 하나씩)를 중심으로 구축 된 것처럼 보이지만 다소 융통성이 없으며 MVC를 사용하려는 방식이 아니라고 생각합니다. 그런 다음이 문제에 대해 더 연구하면서 컨트롤러와보기의 긴밀한 결합, 즉 일대일 관계의 몇 가지 예를 찾았습니다. TextEditView에는 TextEditController가 있습니다.
그러나 내 프로젝트로 돌아갈 때 하나의 컨트롤러 (AddElementController와 같은 '논리 단위')와 특정 컨트롤러에 대한 여러 뷰를 갖는 것이 유용 할 수 있습니다.
일종의 탭 UI가 있어야하는 AddElementController와 같은 것을 분명히 생각하고 있습니다. 탭에 대해 AddElementTabView와 여러 AddImageView, AddSoundView 등이있는 AddElementController가 있어야합니까? 또는 각 탭보기마다 다른 '서브 컨트롤러'가 있어야합니까?
요컨대, MVC 패턴 (X 프레임 워크가이 패턴의 특정 이해 / 구현이 아님)과 관련하여 컨트롤러에 대해 여러 개의 뷰를 갖는 것이 올바른지 또는 각 뷰에 특정 컨트롤러가 있어야합니까?
또한 컨트롤러에 상태 정보를 유지하는 것이 올바른지 또는 상태 비 저장 상태 여야합니까 (상태가 일부 비 도메인 상태 모델에 배치되어야 함을 의미 함)?
미리 감사드립니다.