-
Schneller Einstieg
-
Grundlagen
-
Hilfsklassen
- Benchmark Klasse
- Cache Klasse
- Captcha Klasse
- cURL Klasse
- Database Klasse
- Date Klasse
- Errors Klasse
- FileSystem Klasse
- FTP Klasse
- Images Klasse
- Language Klasse
- Logger Klasse
- Number Klasse
- PayPal Klasse
- PHPMailer Klasse
- Plugins Klasse
- RestClient Klasse
- Security Klasse
- Template Klasse
- Text Klasse
- URL Klasse
- XML Klasse
- ZIP Klasse
Model-View-Controller (MVC)
MVC steht für Model, View, Controller. Eine kurze Antwort auf Ihre Frage sieht wie folgt aus:
- Model: Das Model hat die Aufgabe, die Webanwendung mit Daten aus der Datenbank (oder von wo auch immer) zu versorgen und die Daten, wenn gewünscht, zu speichern.
- View: Die View beinhaltet die Verwaltung der Templates, und generiert die HTML-Ausgabe.
- Controller: Der Kontroller entscheidet, was mit den übergebenen Parametern anzufangen ist, und steuert die Anwendung.
Genauer erklärt
Model View Controller. Das heißt auf deutsch dann etwa „Daten Anzeige Steuerung“. Das MVC-Prinzip oder MVC-Pattern ist wie auch das EVA-Prinzip ein Pattern, das sehr häufig angewandt wird, weil es die Wiederverwendbarkeit des Codes erheblich steigert.
Und um es richtig zu machen, muss man wissen, welche Schicht welche Aufgabe hat.
Model
Das Model ist als einzige Schicht in der Anwendung in der Lage, Daten zu lesen und zu schreiben.Wo die Daten stehen, weiß nur das Model. Alle anderen Schichten müssen sich nicht um die Datenhaltung kümmern. Sie rufen nur Methoden auf, die ihnen die Daten liefern oder die die Daten speichern.
View
Der/Die View bekommt die Daten, die er anzeigen soll, vom Controller geliefert. View und Model haben niemals eine Verbindung miteinander. In der Webentwicklung gibt es beispielsweise HTML-Views, die eine normale Website ausgeben oder auch PDF-Views, die die Daten in Form einer PDF anzeigen.
Controller
Die eigentliche Logik der Anwendung steckt im Controller. Er holt sich die Daten aus dem Model, verarbeitet sie und übergibt sie zur Ausgabe an den View. In der Regel weiß der Controller nicht, woher die Daten genau kommen und auch nicht, wie sie ausgegeben werden.