Pregunta

He estado leyendo a través de un par de preguntas de aquí y diversos artículos sobre MVC y se puede ver cómo se puede aplicar incluso a las aplicaciones intensivas de eventos GUI como una aplicación de pintura.

¿Alguien puede citar una situación en la MVC puede ser una cosa mala y su uso poco recomendado?

EDITAR: Estoy hablando específicamente aplicaciones GUI aquí

¿Fue útil?

Solución

He intentado MVC en mi controlador de núcleo de red. Se rechazó el parche.

Otros consejos

Creo que lo está mirando como al revés. El punto no es para ver donde se puede aplicar un patrón como MVC, el punto es aprender los patrones y reconocer cuando el problema que está tratando de resolver de forma natural puede ser resuelto mediante la aplicación del modelo. Así que si su problema de espacio se puede dividir de forma natural en el modelo, la vista y el controlador, entonces es un buen candidato para MVC. Si no puede ver fácilmente qué partes de su caída diseño en las tres categorías, puede no ser el patrón apropiado.

MVC tiene sentido para las aplicaciones web. En las aplicaciones web, procesar algunos datos (en SA: la formulación de preguntas, la adición de comentarios, el cambio de la información del usuario), que tienen estado (usuario registrado), que no tiene muchas páginas diferentes, pero una gran cantidad de contenido diferente para encajar en esas páginas. Una página de preguntas frente a un millón de preguntas.

Para hacer CMS, por ejemplo, MVC es inútil. Usted no tiene ningún modelo, no hay controladores, sólo unas páginas de texto con decoraciones y menús. El problema ya no está procesando datos -. El problema ahora está sirviendo de que el contenido del texto correctamente

Tho, CMS Administración se basaría en la parte superior de MVC muy bien, es sólo una parte de usuario que no lo haría.

Para los servicios web, es mejor utilizar REST que, creo, es un paradigma distinto.

aplicación WebDAV no se beneficiaría enormemente de MVC, tampoco.

La advertencia sobre el Ruby para la programación Web es que Rails es más adecuado para la construcción Aplicaciones web. He visto muchos proyectos intento de crear un servidor WebDAV o un sistema de gestión de contenidos CMS con rieles y fallan miserablemente. Mientras que usted puede hacer un CMS en Rails, existen tecnologías mucho más eficientes para la tarea, como Drupal y Django. De hecho, yo diría que si usted está buscando en un esfuerzo de desarrollo de Java Portal, debe evaluar Drupal y Django para la tarea en su lugar.

Cualquier cosa en la que desea colocar en los componentes 3 ª parte hará que sea difícil de trabajar en el patrón MVC. Un buen ejemplo de esto es un CMS.

Cada componente se obtiene tendrá sus "propios" objetos del controlador y usted no será capaz de compartir el "control" del modelo -> El paso del interfaz de usuario.

No necesariamente se que MVC es siempre realmente un mala idea para una aplicación GUI. Sin embargo, hay alternativas que son sin duda mejor (y también posiblemente peor dependiendo de cuya opinión está pidiendo). El más común es MVP. Ver aquí para una explicación: Todo lo que usted quiso saber sobre MVC y MVP Pero tenían miedo de preguntarle .

Aunque supongo que podría ser una mala idea utilizar MVC si está utilizando un marco o de otra manera interactuar con el software que no fue diseñado teniendo en mente MVC.

En otras palabras, es muy parecido a la comparación de los lenguajes de programación. No hay muchas tareas que por lo general se puede decir que uno es mejor que el otro para. Por lo general se reduce a la preferencia programador, la disponibilidad de las bibliotecas, y la experiencia del equipo.

MVC no debe utilizarse en aplicaciones donde el rendimiento es crítico. No sé si esto todavía applys con el aumento de potencia de cálculo más que un ejemplo es una aplicación de centro de llamadas. Si usted puede ahorrar .5 segundos por llamada introducir y actualizar información de esos ahorros se suman con el tiempo. Para obtener el último bit de rendimiento de su aplicación se debe utilizar una aplicación de escritorio en lugar de una aplicación web y lo han hablar directamente a la base de datos.

Cuando se trata de una mala cosa? Donde quiera que hay otro código de estructura que se ajuste mejor a su proyecto.

Hay un sinnúmero de proyectos en los que MVC no "encajar", pero no veo cómo una lista de ellos sería de ningún beneficio ..

Si se ajusta MVC, lo utilizan, si no, usar algo más ..

MVC y ORM son una broma .... sólo son apropiadas cuando su aplicación no es una aplicación de base de datos, o cuando se desea mantener la base de datos de aplicaciones agnóstico. Si está utilizando un RDBMS que soporta procedimientos almacenados, entonces ese es el único camino a seguir. procedimientos almacenados son el método preferido para los desarrolladores de aplicaciones con experiencia. MVC y ORM solamente son promovidos por las empresas que tratan de vender productos o servicios relacionados con las tecnologías (por ejemplo, Microsoft intenta vender VS). Deje de perder su tiempo a aprender Java y C #, centrarse en lo que realmente importa, Javascript y SQL.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top