Karl Heinz: Pro/Contra Smarty

Beitrag lesen

Hallo,

ich habe mich die letzten Tage ein bisschen mit dem Online-Shop System Shopware beschäftigt. Laut Wikipedia ist Shopware in der Skriptsprache PHP programmiert. Ich bin nun her gegangen und habe mit Hilfe einer CSV-Datei Artikel ins Shopware-System importiert. Die Daten mussten vor dem Import modifiziert werden. Für solche Modifizierungen stellt Shopware im Backend ein Eingabefenster zur Verfügung, in welches man Code eingeben kann, der diese Modifizierungen durchführt. Ich hätte nun eigentlich erwartet, dass man hier PHP-Code eingeben muss, zu meinem Erstaunen habe ich dann festgestellt, dass man hier keinen PHP-Code eingeben muss sondern stattdessen Smarty-Code. Smarty war mir bisher kein Begriff. Durch googlen habe ich nun herausgefunden, dass Smarty eine Template Engine ist. Was eine Template Engine ist habe ich leider auch nicht gewusst, deshalb habe ich erneut gegooglet. Wenn ich das richtig verstanden habe, dann ist es mit einer Template Engine besonders einfach den Code des Kernsystems und den Code der GUI, welche auf dem Kernsystem aufsetzt, von einander zu trennen (Stichwort Model-View-Controller).

Dazu ein paar Fragen:

  • Habe ich das so korrekt verstanden?
  • Ich habe gelesen, dass es mit PHP ebenfalls möglich ist die verschiedenen Programmierebenen (Model-View-Controller) voneinander zu trennen. Aus welchem Grund nutzt man dann zusätzlich Smarty, man könnte doch für alles PHP verwenden. Nutzt man Smarty hat das meines Erachtens nur Nachteile z.B.:
  1. Smarty ist ein PHP Aufsatz und macht das System deshalb langsamer.
  2. Verwendet man zusätzlich Smarty muss man den Syntax von PHP UND Smarty lernen. Würde man nur PHP verwenden müsste man nur den Syntax einer Sprache erlenen.
  • Des weiteren habe ich gelesen, dass es bezogen auf Smarty sowohl Befürworter als auch Gegner gibt. Mich würde interessieren in welches der beiden Lager Ihr fallt und vor allem aus welchem Grund?

Viele Grüße

--
"Die Deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen."

akzeptierte Antworten