2009-05-07 10 views
1

In der Zukunft werde ich mit MVA mit Java/J2EE, Hibernate und mehr arbeiten, aber jetzt habe ich asp.net, PHP, Python, Ruby, etc. Wenn ich lernen, MVC asp.net oder MVC zu verwenden mit einem PHP-Framework, oder RoR, wird mir das mit der Java-Version helfen? Ich möchte nicht warten, bis ich das Java - Projekt starte, bevor ich anfange, wirklich zu lernen, MVC zu benutzen, aber wenn die .net - oder php - Versionen von mvc so unterschiedlich sind, dass es ein großes Umlernen sein wird, dann benutze ich vielleicht nicht das Nicht-Java-MVC-Frameworks.Sind alle MVC-Plattformen gleich?

Kurz gesagt, ist das Lernen von MVC auf einer Plattform gut für das Lernen auf allen Plattformen? Ich weiß, dass die Werkzeuge und Sprachen anders sein werden, aber meine Frage ist für das allgemeine Wissen.

Ich hasse es, Dinge auf eine "spezielle" Weise für ein einmaliges Projekt zu bearbeiten, das keinen zukünftigen Nutzen zeigen wird.

Vielen Dank.

Antwort

3

Bei MVC geht es darum, Ihre Anwendung in 3 Hauptteile aufzuteilen. Das Modell, das den größten Teil des Codes enthält, der mit Ihrer Datenbank interagiert, der Controller, der auf das Modell zugreift und die benötigten Daten erhält, die dann an die Ansicht übergeben werden, die diese für den Benutzer sichtbar macht.

Egal für welche Technologie/Framework Sie sich entscheiden, dieses Grundprinzip bleibt und nur die Technologie, die dahinter steckt, wird sich ändern.

Zum Beispiel, wenn Sie die PHP-Route und wählen Sie Symfony als Ihr Web-Framework würden Sie Doctrine oder Propel als Ihr Modell/ORM verwenden. Wenn Sie JBoss Seam verwenden, verwenden Sie Hibernate/JPA als ORM und EJBs als Controller.

Auch wenn diese beiden Frameworks den gleichen Regeln folgen, wenn es um die Trennung von Logik und Design geht, müssen Sie auch sehr unterschiedliche Konzepte lernen, um sie richtig zu verwenden. Zum Beispiel in JBoss Seam, das Framework hängt stark von Ihrem Wissen über Umfang und statusfreie und Stateful Session Beans, wo in Symfony gibt es kein solches Konzept (Art von).

Also egal, welche Route Sie wählen, es gibt noch viel zu lernen, nachdem Sie das Konzept von MVC gemeistert haben.

1

MVC ist ein grundlegendes Softwarearchitekturmuster. Es ist nur ein abstraktes Konzept. Die spezifischen Implementierungen unterscheiden sich je nach verwendeter Sprache und Plattform (wie alles), aber die grundlegenden Konzepte bleiben gleich.

Also in einem Wort: ja. Erfahren Sie, was MVC als Konzept bedeutet, und Sie können dieses Wissen zwischen Plattformen und Technologien übertragen.

Verwandte Themen