Modelli Dettagli astratti, non Vice Versa
The clients will behave as "slaves", that is, they will only connect to server and from then on, only the server communicates with them. Eventually the server may request that the clients send "data streams ... MVC and MVP, ... don't seem to be designed to fulfill my specific requirements."
Ho la sensazione che tu stia cercando di trovare un pattern che si mappa direttamente alla tua configurazione hardware / di rete. Questa è l'antitesi dei modelli di progettazione orientata agli oggetti.
I sistemi software sono molecole organiche di modelli
Come in catene di modelli. Le parti di alto livello di M.V.P. sono a loro volta le proprie strutture complesse orientate agli oggetti, necessarie per rappresentare strati astratti nidificati che alla fine arrivano ai server. Ti manca tutto il design tra il concetto MVC di livello superiore e la comunicazione server-server.
Prototipazione
Forse dovresti prendere un prototipo di mentalità. Come ha affermato Fred Brooks nel Mese di Mythical Man
“The management question, therefore, is not whether to build a pilot system and throw it away. You will do that. The only question is whether to plan in advance to build a throwaway, or to promise to deliver the throwaway to customers.”
Non sto suggerendo di costruire un intero sistema; quel tanto che basta per sperimentare le variazioni dell'architettura. Devi davvero capire dove stai andando prima di impegnarti a pianificare le consegne.
Per quanto ho potuto dire MVP vs MVC è una questione di enfasi. MVP ha un'associazione più intima tra V e C.
Segue una citazione da MVP: Model-View-Presenter
Il Taligent Programming Model per C ++ e Java
...normalize the separation between the Model and the View-Controller, which we refer to as a Presentation. This represents the breaking down of a programming problem into two fundamental concepts: Data Management and User Interface.
Penso che si riduca a come si vogliono model cose. Se MVC funziona in un determinato caso, non significa che MVP sia errato in quel caso.
I modelli di progettazione del software sono linee guida, non regole hard e veloci da seguire con l'esclusione di un buon design in tutto il sistema.
MVC (MVP) e WCF Systhesis
MVC / P è diventato il paradigma go-to design per le applicazioni GUI in modo da non essere sviato perché WCF basato su Service Oriented Architecture (SOA) .
Per quanto ne so, si può facilmente usare la struttura WCF .net all'interno del modello Model-View-Whatever.