Was sind die wichtigsten Unterschiede zwischen StringTemplate und FreeMarker?
Das Netz scheint voll zu sein, um Vergleiche zwischen Velocity und FreeMarker, und Sie scheinen ziemlich gleichwertig. Aber es scheint fast keine Vergleiche zwischen StringTemplate und FreeMarker!
Also, was sind die wichtigsten Unterschiede zwischen StringTemplate und FreeMarker?
Meinem Einsatz für Sie generieren HTML-Seiten nur. Aus den beiden, ich hätte gedacht, dass FreeMarker werden, die besser geeignet und besser in der Lage, als scheint das häufiger - aber durch einen schnellen Blick scheint es, dass StringTemplate hat tatsächlich mehr geeignet features!
Es wäre toll, wenn jemand, der beide verwendet haben würde, die Zeit zu kommentieren - für die tatsächlichen Besonderheiten, ich kann nur Lesen Sie die Dokumentation side by side, aber ich würde gerne etwas zu bekommen begann mit.
- Eine schnelle Klärung! Ich bin nicht daran interessiert, die offensichtlichen Unterschiede -, dass StringTemplate ist funktionsfähig und hat keine loops etc und FreeMarker ist fast zu einer ausgewachsenen Programmiersprache! Ich bin daran interessiert, konkrete feature-Unterschiede, die während der Nutzung - wo eins ist problemlos möglich mit einem aber wirklich schwer mit den anderen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich so gestaltet, ST zu bauen jGuru nach krank des "code in der Vorlage" Modell der JSP. Geschwindigkeit und Freunde (d.h., jeden anderen Motor denke ich) geben Ihnen mehr Energie, als Sie benötigen. Ich benutzt im wesentlichen vier Funktionen zu bauen jGuru.com (wie beschrieben in Papier). Weitere features sind unnötig und führen Sie zu verwickeln, Ihr Modell in die Vorlage. Wenn Sie erstellen ein one-off Prototyp, das ist ok und jeder Motor ist in Ordnung. Code in den templates ist ok in diesem Fall, da Sie kümmern sich nicht um die Wartung.
Andere Sache, die Leute scheinen zu ignorieren: wie zur Hölle kann ein Grafik-designer Las-code in den templates? Sie können es nicht. Also, wie können Sie die Arbeit auf die Vorlagen dann? Sogar die änderung der Reihenfolge einiger Elemente kann brechen Sie Ihr Modell. Sie wirklich brauchen, die Trennung zu arbeiten, die in einer kommerziellen Umgebung, es sei denn, Sie möchten eine Website, die aussieht wie ein coder integrierten html 😉
Der Hauptunterschied ist, dass StringTemplate erzwingt model-view separation und man kann keine Logik in den templates und FreeMarker können Sie stecken voller Logik in den templates.. zumindest am Anfang machen es schwieriger zu verwenden, aber es ist besser skalierbar. Zum Beispiel, wenn Sie code generieren und Sie haben keine Logik in die templates generieren Sie einen anderen port für eine andere Sprache ist weniger langweilig, weil Sie nicht replizieren Logik in jeder Vorlage.
Gibt es ein Papier von Terence Parr erklärt, dass die Vorteile von model-view separation