Pregunta

Además de ser un patrón de 30 años, MVC no estaba destinado para las aplicaciones actuales. MVP fue su sucesor y diseñado para manejar aplicaciones basadas en eventos que sale en los años 90. Ver pasiva y el controlador de Supervisión parecen haber llegado a la cima. Para los dos, casi no es necesario hablar de MVC / MVP.

Específicamente, es la acción del controlador en ASP.NET MVC que lleva de nuevo una vista en la creación de ese punto de vista? En MVC, el controlador no crea puntos de vista o hablar de nuevo a ellos. ¿Qué tan exacto es para llamar a ASP.NET MVC una implementación MVC? O, lo que sería un nombre preciso para ello?

¿Fue útil?

Solución

Creo que es Ruby on Rails que inspiraron MS para crear asp.net MVC.

Otros consejos

ASP.NET MVC es simplemente el reconocimiento del éxito de la implementación MVC dentro de los marcos web como Ruby on Rails y Django de Microsoft. La comprensión de que muchos desarrolladores web gustaría una más manos en enfoque de desarrollo web que abarca el modelo de programación "obstinado" (convención sobre configuración) y se aleja de la abstracción con estado que ASP.NET Web Forms proporciona.

¿Es una aplicación exacta del patrón MVC de Smalltalk? No. ¿Es resultado de pánico? No. ¿Es una consecuencia del éxito de ambos Ruby on Rails y Django? Sí.

resulta que me encanta este modelo ya que abarca el marco rica proporcionado por .NET y ASP.NET la pila sin dejar de ser minimalista en el enfoque y el uso de desarrollo basado en la convención.

Lo suficientemente cerca, y es una estrategia de ventas.

Se venden ASP.NET frente a otras tecnologías que identifican a sí mismos como MVC. Así que es competitivo útil para nombrar a ser percibida en la misma categoría.

Microsoft gana más a menudo por el posicionamiento del producto a través de la identificación precisa de tecnología. (Plus suministro a largo plazo, en mi humilde opinión.)

ScottGu escapa a la respuesta en la primera parte de su puesto en la primera demostración MVC aquí . La respuesta corta es que la gente se lo buscaron y Microsoft decidieron ir con ella. Encaja con el modelo actual .Net para añadir tantas opciones como sea posible, permitiendo que el marco de trabajo para llegar a un mercado objetivo más grande, y también proporcionar a los desarrolladores con las herramientas adecuadas para el proyecto de la derecha.

MVC tal como se aplica por ASP.NET MVC no es el patrón MVC de edad. En lo que llamaré "clásico" MVC tiene la vista directa, pero de sólo lectura, el acceso a la Modelo, en ASP.NET MVC se considera mala forma de acceder a su modelo de negocio directamente desde la vista. Lo que usted termina con algo muy parecido Supervisar Controller + Pasivo Ver:

public class MvcExampleController : Controller
{
    public ActionResult ActionMethod(BoundInputData inputData)
    {
        var results   = DoActualWorkInTheModelWith(inputData);
        var viewModel = CreateViewModelFromThe(results);

        return View(viewModel);
    }
}

Para mí esto se parece más a un controlador de Supervisión de MVC clásico. Una vez que el trabajo se hace en el modelo, la vista se pasa de un modelo de vista (también conocido como PresentationModel). El modelo de vista general, tiene una relación 1 a 1 con los elementos de interfaz de usuario en la vista y puede o no parecerse en nada a los objetos en el modelo real. Una visión que actúa sobre un modelo de vista y no huele el modelo real muy parecido a una visión pasiva a mí.

No voy a entrar en si es o no es una aplicación "real" MVC o no, pero si su argumento es que ASP.NET MVC no utiliza patrones de diseño web moderno tengo que discrepar.

La mejor conjetura, todo el mundo ha oído hablar de MVC. MVC ha sido golpeado en como una "mejor práctica" por un cierto tiempo, y por lo tanto a toda una generación (o dos, o tres) de los desarrolladores ver MVC y pensamientos felices.

Además, un montón de otros marcos MVC abrazan en una luz similar por lo que Microsoft probablemente se siente obligado a hacer lo mismo.

En resumen, dudo mucho de que hay una razón técnica fuerte para él.

Puede rodar su propia MVC con el marco ASP.NET actual y aún así mantener el modelo de devolución de datos.

http://www.codeproject.com/KB/aspnet/RollingYourOwnMVCwithASP.aspx

Esta es una gran pregunta, muchas personas han hecho esta pregunta en los primeros días de la MVC. Aquí está la respuesta de Phil Haack uno de los principales desarrolladores en el proyecto!

http://haacked.com/archive/0001/01/01/everything-you-wanted-to-know-about-mvc-and-mvp-but.aspx

Compruébelo usted mismo, lea los enlaces e ir de allí.

Además, una respuesta al debate quizá S # arp Arquitectura. Ellos han construido una capa en la parte superior de la MVC para hacerlo actuar más como MVP. Compruebe a cabo si usted está buscando soemthing lo largo de esas líneas.

Buena suerte!

Creo que esto era más de una "decisión de marketing de pánico", entonces una decisión técnica. RoR estaba robando los mercados cada segundo y MSFT completamente en pánico, por lo MSFT sintieron que tenían que entregar algo que les dio la oportunidad de conseguir algunos de los bombo de nuevo a "su campo" de nuevo ...

También se necesita para ayudar a sus desarrolladores ganan bac teir respeto a sí mismo de nuevo por conseguir asociar esta palabra exagerada de sí mismos para que el .Net Desarrolladores podría mirarse en el espejo sin sentir vergüenza de que no sabían MVC ya que su plataforma de elección no entregar este tipo de patrón para ellos (de la caja)

Para un desarrollador medio especializada (.Net) que es muy difícil no sentirse como un dinosaurio cuando un desarrollador RoR experto medio incendios hasta rastrillo y crea un pico en menos de 15 minutos que tienen un trabajo y ejecutan prueba de concepto antes de la. desarrollador net siquiera está terminado a partir vstudio.exe ...;)

Creo que es un punto de vista polémico, pero es mío y yo voy a defender hasta el final amargo ...;)

Existen innumerables ejemplos hoy de que sí, MVC y andamios le dará una velocidad inicial impulso, sí. Sin embargo, para el mantenimiento, la reutilización de código, encapsulación y en su mayoría todos los realmente importante de la cosa - MVC no es la "bala de plata" y la mayoría de las veces WebForms son muy superiores en el largo plazo (menos utilizado como retrete papel por supuesto)

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