dedlfix: PlugIn Manager entwickeln

Beitrag lesen

Tach!

Ein Template ist eine Layout-Datei die vom Programmcode unabhängig ist. So können für HTML::Template erstellte Templates sowohl in c, in Perl als auch in PHP gerendert werden weil es diese TE eben für c, Perl und PHP gibt.

Das Template für eine Tabelle sähe z.B. so aus (nur der LOOP-Teil):

<TMPL_LOOP NAME="names">
  <tr>
    <td> %name% </td>
    <td> %vname </td>
  </tr> 
</TMPL_LOOP>

In diesem Template wird für die Logik (im Beispiel die Schleife) eine dritte Sprache verwendet. Das kann man so machen, wenn die Templates aus Gründen unabhängig von einer konkreten bereits vorhandenen Programmiersprache sein müssen. Das ist aber nicht überall zwingende Notwendigkeit, und so kann man durchaus statt der dritten Sprache die Programmiersprache des Systems für diese Logik-Teile verwenden, inklusive bereits vorhandener Unterstützung dafür in der IDE (Syntaxhervorhebung, Debugging).

Und wie Du sehen kannst gibt es da nichts was auf Perl, PHP oder C hindeutet und das ist ja auch das Ziel, Code von Layout strikt zu trennen.

Die strikte Trennung ist kein allgemeingültiges Ziel sondern nur notwendig in Anwendungsfällen, wo das Template in verschiedenen Systemen unabhängig verwendet werden muss.

Was das für die Produktivität bedeutet dürfte klar sein. Einmal hinsichtlich Teamarbeit und zum Anderen hinsichtlich Zeitersparnis.

Gegenzurechnen wäre der Aufwand, die dritte Sprache lernen zu müssen. Ob das immer eine Zeitersparnis ergibt, darf je nach Komplexität der dritten Sprache bezweifelt werden.

Schließlich können Templates aus unterschiedlichen Quellen geladen werden, Dateien, Datenbanken, Netzwerk und in Ausnahmefällen liegt das Template auch mal in der Klassendatei wo man das auch da sauber vom Code trennen kann.

Auch das ist nicht überall Notwendigkeit.

dedlfix.