Andreas Korthaus: Web-Programme modular aufbauen

Beitrag lesen

Hallo Christian!

Meinst Du nicht auch das ich hier lieber auf fertige und für gut befundene Module verwende, also in diesem Fall smarty und pear, das verstehen dann im Fall der Fälle auch andere Leute besser als eine selbstgebastelte Lösung.

Moment - Smarty und PEAR kannst Du *zusätzlich* zu Deinem Ansatz verwenden, als Hilfen, aber Smarty und PEAR als "Allheillösung" zu sehen, ist schlicht und ergreifend falsch. Smarty und PEAR nehmen Dir weder das Schnittstellendesign noch die Umsetzung ab, sie können Dir höchstens letztere erleichtern.

Hm? Daher habe ich das vermutlich in meinem Kopf nie so richtig unter einen Hut gekriegt ;-)
Also das PEAR nicht direkt verwendet werde sollte, war mir auch schon aufgefallen. Ist nur die Frage ob ich dann noch PEAR brauche, oder lieber selbst Module für die verschiedenen Datenbanken schreibe.
Bei Smarty ist das schon was anders, ich dachte gerade hier hätte ich die Möglichkeit einfach die Ausgabe über Templates zu steuern. Nur wie soll ich das parallel verwenden? Sven hat mir doch im Prinzip ein Äquivalent zu Smarty beschreiben, halt Templtes, die geparst werden, mit eigener Programmierlogik... das kann doch Smarty alles perfekt, ist sogar erweiterbar! Ich kann doch nicht 2 Level Templates und 2 Parser verwenden, as wäre doch nun wirklich Quatsch, also entweder oder habe ich gedacht.
Nur so wie Sven es beschreiben hat wird dann die eigene Template-Srache wieder so komplex, das ich am Ende doch lieber direkt PHP einsetze, nur eine eigene Sprache zu erfinden um aus Software-Design Gründen kein PHP zu verwenden finde ich doch etwas übertrieben, oder? Dann kann ja kein noprmaler Mensch außer mir mehr an den Templates arbeiten, auch wenn das logisch ist, IMHO sollten Templates so sein das da auch nicht-Programmierer dran arbeiten können, ohne programmier-Grundkenntnisse mitzubringen, halt Web_designer_ ;-)
ABer ich verstehe jetzt auch Dein Problem nicht so ganz, angenommen Sven schreibt in sein Template:

{$DATENBANKABFRAGE:Select-TOP-10-from-Artikelverkauft}

Dann hat er einen eigenen Parser geschreiben, der die entsprechende Aktion isoliert und ausführt, vermutlich wird er hier die Methode "Select-TOP-10-from-Artikelverkauft" von der Datenbankverbindungs-Klasse abfragen, oder vielleicht erst noch von der Modul-Klasse, die dann an die das ganze an die Datenbank-Klasse weitergibt, und das Roh-Datenergebnis direkt in Standard-Tabellen template einbettet, und der so gernerierte HTML-Code wird an der besagten Stelle in das ursprüngliche Template eingefügt, so würde ich mir das jetzt vorstellen.
Ich dagegen würde folgendes machen:
ich weise der der PHP-Variable $DATENBANKABFRAGE_Select-TOP-10-from-Artikelverkauft einen Methoden-Aufruf zu (im Modul, d.h. das Modul-Script hat eine Klasse und "normalen" PHP code der bei Smarty ja auch nötig ist um das Template zu laden), der dann genau dasselbe erledigt wie bei Sven. Was ist daran das Problem?

Viele Grüße und Danke für Eure Geduld!
Andreas