MVC - Modell richtig nutzen

Kategorie: Quick Tips Veröffentlicht: Dienstag, 15. August 2017 Geschrieben von Kevin Chileong Lee
Softwaretechnik: MVC - Modell

Das MVC - Modell ist einer der bekanntesten Muster in der Softwaretechnik. Es teilt die Anwendung in drei Bereiche: Model, View, Controller. Das strukturiert eine Anwendung nicht nur, sondern trennt verschiedene Ebene und Kompetenzen, insbesondere in der Web Programmierung.

Das funktioniert jedoch nur, wenn man dieses Modell korrekt umsetzt.

Zunächst auf Anfang. Was ist das MVC - Modell?

Model

Das Model repräsentiert die Datenbankebene. In Extbase entspricht eine Model - Klasse eine Datenbanktabelle mit ihren Eigenschaften und Funktionen um Inhalte zu manipulieren. Dabei schreibt das Model selbst nichts in die Datenbank, sondern hält lediglich die Information. 
Für das Beschreiben der Datenbank ist in Extbase ein Repository zuständig.

Dabei ist das genutzte Datenbanksystem irrelevant, da ein Extbase Model eine hohe Abstraktionsstufe hat. Das bedeutet, das keine SQL Abfragen geschrieben werden müssen. Die Nutzung erfolgt allein über Klassen und Funktionsaufrufe. Dabei ist das Repository und der Querybuilder ein zentrales Thema.

View

Die View - Ebene ist direkt für die Darstellung der Anwendung zuständig. Durch die klare Trennung muss diese Ebene nicht Programmierer übernehmen, sondern das kann auch ein Designer sein. In der Typo3 V8 Version ist die Templateengine: Fluid. Fluid basiert auf XML und besitzt eigene Tags um das finale HTML Dokument zu erstellen.

Oft werden hier Prozesse getätigt, die eigentlich dem Controller vorbehalten sein sollten. Deshalb achtet darauf, dass nur die Prozesse in der View mit Fluid gemacht werden, die direkt mit der Darstellung der Information zu tun haben. Alles andere obliegt dem Controller.

Controller

Der Controller ist sozusagen das Herzstrück und verbindet das Model mit der View. Dabei ermittelt es die Daten aus der Datenbank, berechnet diese weiter und leitet die verarbeitete Information an die View.

D.h. alle Berechnungen geschehen im Controller. Sinnvollerweise teilt man Prozesse in weitere Klassen auf. So kann es zum Beispiel Hilfsklassen (Utilities) geben die Fileuploads, Bildberechnungen oder Authentifizierungsaufgaben übernehmen. Die Verteilung und Steuerung ist jedoch in den Händen des Controllers.

Erst wenn die Information fertig berechnet wurde und sie nur noch auszugegebn ist, dann wird sie der View übermittelt.

Falls du noch weitere Fragen zum MVC - Modell hast, dann schreib mir auf meine Facebook - Seite oder lasse mir eine Nachricht über das Kontaktformular zukommen.

Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies verwenden.
Weitere Informationen Ok Ablehnen