2008-09-26 18 views
55

¿Cuáles son los "métodos de diseño" alternativos al Controlador de vista de modelo? MVC parece ser popular (SO fue construido con eso, lo sé) pero ¿es el único método utilizado?Alternativas al MVC

Respuesta

1

Nosotros no utilizamos tanto una alternativa sino un híbrido llamado MVC-ARS.

3

MVC es parte de un grupo mayor de patrones de diseño. No tengo idea de cuánta experiencia tienes, así que no estoy seguro de cómo enfocar esta respuesta. Soy un programador de .NET, pero encontré el libro de Java Head First Design Patterns extremadamente útil. Los patrones de diseño generalmente se dividen en grupos con otros patrones que ayudan a resolver problemas similares.

También encontré el Data Object Factory website bastante útil también. Deberías buscar algunos recursos en tu idioma favorito.

+1

Como comentario, leí el libro de Head First como programador de C#, y los ejemplos fueron fáciles de entender sin la experiencia de Java. –

44

Uno de los mejores informes de varios Patrones de Arquitectura de Aplicaciones Interactivas diferentes que existe, es this very detailed and well-researched blog-post. Cubre Model-View-Controller, tres sabores diferentes de Model-View-Presenter, varios sabores diferentes de Presentation-Abstraction-Control, Supervisor Controller, Passive View y Hierarchical MVC.

Otro patrón interesante es el patrón Presenter First de Atomic Objects. No es solo un patrón de diseño, también es un patrón de proceso. IOW: el nombre "Presenter First" no es arbitrario, de hecho describe un proceso de desarrollo, en el cual el presentador se escribe primero, impulsando el diseño del resto del sistema.

13

MVC es un diseño arquitectónico.Estos son los otros patrones arquitectónicos que puede probar (de Wikipedia):

  • Capas
  • de varias filas Arquitectura
  • Presentación abstracción de control (PAC)
  • Modelo Vista Presentador (MVP)
  • Modelo Ver ViewModel (MVVM)
  • Pipeline
  • Invocación implícita
  • Sistema de Pizarra
  • Peer-to-Peer
  • arquitectura orientada a servicios (SOA)
  • desnudo objetos

Estos están disponibles here in Wikipedia.

1

Sé que el MVCS de Joe Berkovitz.

Prof. Kowarschick utiliza este enfoque para desarrollar el VCLSD -pattern (! Wiki escrito en alemán Tal vez alguien tiene tiempo, para traducirlo - lo que a mí sólo soy un principiante en la programación)

MVCS: Vista de modelo Servicio de control
VCLSD: Ver datos de servicio de lógica de control

0

¿Qué tal flux.js de Facebook? Sé que depende de la plataforma, pero es una arquitectura de flujo de datos utilizada por FB como reemplazo de MVC, así que creo que también puedes obtener algunas ideas de allí.