Frage

ASP.NET MVC scheint einen ziemlich großen Auftritt zu haben.Kann jemand zusammenfassen, wie sich die MVC-Implementierung im Vergleich zu gängigen MVC-Frameworks für andere Sprachen schlägt?(Ich denke speziell an Rails und Zend Framework, obwohl es offensichtlich viele davon gibt.) Anmerkungen zur Lernkurve, zur allgemeinen Terminologie, zur Benutzerfreundlichkeit und zum Wohlfühlfaktor sind willkommen.

(Zur Information: Ich vermeide die Verwendung von ASP.NET seit einiger Zeit, weil ich den Webforms-Ansatz wirklich hasse, aber Jeffs überschwängliches Lob für den Podcast hat mich fast davon überzeugt, es auszuprobieren.)

War es hilfreich?

Lösung

Ich bin nur in ASP.NET MVC bekommen, so ist dies einige frühen Gedanken, es zu Rails Vergleich:

Meist kommt mit statischer Typisierung haften, auf Kosten einen kleinen zusätzlichen Code.
Dies wird entweder geben Ihnen die Pelzchen oder machen Sie etwas gefesselt fühlen, je nachdem, wie Sie dynamische Typisierung fühlen. Zum Beispiel können Sie Ihre Ansichten erwarten insbesondere typisierte Daten (und erhalten so kompilieren Zeit Ihrer Ansichten Überprüfung).

Bessere Trennung von Bits des Rahmens.
Also gibt es keinen vorgeschriebenen Datenzugriffsmechanismus wie Activerecord in Rails; Sie sind frei, Ihre eigenen zu wählen. LINQ fühlt sich ähnlich, wenn Sie etwas billig wollen, wenn auch ein wenig ausführlicher. Sie können die nicht-WebForms Teile von ASP.NET wie Caching und Authentifizierung verwenden.

Still spielen Feature Catch-up.
Vorschau 5 brachte AcceptVerbs, Modell updaters (ähnlich Rubys hash.merge) und mehr Möglichkeiten, Formen Modelle zu binden. Fühlt es gibt noch mehr zu kommen, bevor sie den größten Teil des Feature-Set abhaken, die Rails hat.

Ich vermisse immer noch ein wenig von Rails' Freiheit und Eleganz (von denen viele bis auf Rubin, glaube ich), aber ASP.NET MVC wirklich ganz nahe fühlt.

Andere Tipps

Wenn Sie bereits in dem .NET-Idiom Programmierung, ist es ziemlich einfach, auf einer Menge zu holen, was in dem MVC-Framework abgeht. Rails, auf der anderen Seite, kann recht einfach abholen (gewährt, auf einer grundlegenden Ebene), wenn Sie nie Augen auf Rubin festgelegt haben, bevor Sie beginnen.

Es scheint, wie Sie sprechen über die Qualität-as-MVC, aber, und es scheint mir, wie beide Frameworks (kann für Zend nicht sprechen) machen einen sehr guten Job die Anliegen der Trennung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top