Klaus: OOP Konflikt

Beitrag lesen

echo $begrüßung;

»» » Ich würde das Ganze nach dem MVC-Pattern aufbauen. Schau dir mal an, wie man mit dem Zend Framework eine Anwendung erstellt.
»» Hm und wie würdest du das machen?
»» Also soll ich nur das Board-System so aufbauen oder die komplette Seite?

Alles oder nichts. Gemischt wird unübersichtlich.

D.h. also das jede Klasse, die auch nur eine visuelle Ausgabe hat, 3 Dateien hat. Einmal Model wo berechnungen und Queries ausgeführt werden und einmal Views wo alles ausgegeben wird und einmal Controller wo Model aufgerufen und an Views übergeben wird usw...

Bei 10 Klassen sind das 30 Dateien.
Wie handelt ihr das denn dann?
newsletter.m.php
newsletter.v.php
newsletter.c.php

?

Und dann pro Klasse ein eigener Ordner?

»» Also nach die Klassen die hinzukommen werden wie Navigation, Registrierung, Login/Out, Kontaktformular usw.. alles zusammen als EIN MVC Pattern? Alles einzelnd als MVC Pattern?

Diverse vorbereitende Abläufe sind im MVC-Teil schlecht aufgehoben, weil sie für jeden Controller implementiert werden müssten.

Verstehe ich nicht was du meinst.

Es wird sicher eine Superklasse für alle Controller geben, doch auch da sind diese gemeinsamen Teile fehlplatziert.

Ja es gibt eine Klasse die nennt sich bei mir "loadController" dort werden Requests abgefangen und bearbeitet und die dementsprechende Klasse includet und die gewünschte Methode ausgeführt falls du das meinst.

»» Als "Türwächter" gibt es dazu einen Front Controller. Der ermittelt nicht nur, welcher Controller aufgerufen werden muss,

Ja das macht mein "loadController".

er kümmert sich auch um Authentifizierung und Autorisierung des jeweiligen Requests, denn das muss ja vor dem Controller-Aufruf passieren.

Hm Authentifizierung und Autorisierung sieht bei mir bisher nur so aus das gecheckt wird, ist folgendes vorhanden?: Klassendatei, Klasse, Methode

Registrierung, Login/-out und Kontaktformuler sind Aufgaben für Controller.

Ja aber diese Klassen zeigen ja auch das Login Formular und das Registrierungsformular und den Logoutbutton.
Also muss ich auch bei diessen 3 Dateien machen M, V, C.

Wenn du unter Navigation das Erstellen von HTML-Code für Menüs und dergleichen meinst, dann ist das Aufgabe der Views. Die bedienen sich für das HTML-Grundgerüst und gemeinsame Teile der Ausgabe am besten eines Master-Templates.

Puh also wirds komplizierter als ich dachte.

REQUEST -> Master-Controller-Klasse -> Master-Model-Klasse-> loadController -> KontaktKlasse-Controller -> KontaktKlasse-Model

RESULT von KontaktKlassen-Model->  KontaktKlassen-Controller -> KontaktKlasse-View

RESULT  von KontaktKlassen-View -> KontaktKlassen-Controller -> Master-Model-Klasse -> Master-Controller-Klasse

Master-Controller-Klasse -> Master-View-Klasse -> AUSGABE

Das ist doch viel zu kompliziert!
Oder versteh ich da was falsch?

»» Und dann Artikel, Kategorien einzelnd oder alles zusammen ein MVC?

Überleg dir, welche Abläufe zur gleichen Aufgabengruppe gehören und bau für jede dieser Aufgabengruppen einen Controller. Der dirigiert aber nur, sorgt dafür, dass die Daten aus der richtigen Quelle (Model) abgefragt werden und ans richtige Ziel (View) gelangen. Das Daten-Handling übernimmt das Model und sämtliche Aufbereitung für die Ausgabe macht die View.

S.o. ich blicke nicht mehr durch... bitte hilf mir.

lg, Klaus