Ce template engine folosiți?

Continuarea discuției de aici.

Bun topicul asta. O intrebare pe langa, ce template engine folositi ? Pareri despre swing ?

Eu am avut nevoie la un proiect de niște template-uri refolosibile atât din PHP cât și din JS. La momentul respectiv doar mustache era capabil de asta (m-a ajutat acest articol), prin urmare l-am tot folosit.

Un (dez)avantaj la mustache care uneori îmi place, alteori nu (dar de cele mai multe ori da) este că este extrem de dumb. Adică poți face un loop ( {{# array }}loop{{/ array }}), o condiție simplă {{# truthy }}{{/ thruthy }} respectiv {{^ falsy }}{{/ falsy }} ) și… cam atât.

Nu ai condiții dubioase, nu ai operatori logici, nu ai cam nimic. Asta e bine pentru că un non-programator va prinde foarte repede cum funcționează (trei oameni ce au doar ceva noțiuni de HTML s-au descurcat admirabil). Mai e bine că muți toată logica în afara view-ului.

E rău pentru că atunci când vrei să faci ceva teste rapide va trebui să modifici în cel puțin două locuri.

PS: mustache este disponibil pe o mulțime de limbaje; în php cel puțin suportă și ceva filtre extra, în afara specificațiilor.

3 Likes

Eu ma refeream la template-uri pentru NodeJs pe server (si eventual AngularJs client). In php folosim un nepot de-al mustache ==> Blade-ul, care e super tare si are cam tot de ce ai nevoie (loop, if, foreach, forelse etc.).

Din ce inteleg eu esti constrans la Angular JS pe partea de client, si acela vine cu template engine-ul propriu si personal. Motiv pentru care e dificil sa randezi acele template-uri direct din nodejs, unde probabil daca folosesti express ai si jade.

Cumva intrebarea ta are ca scop asta: http://stackoverflow.com/questions/19072605/view-templates-and-routes-in-node-js-with-angularjs ?

Sfat off-topic: daca poti fugi in directie diametral opusa angularului, fa-o. Nu am auzit inca de un proiect mare (dpdv al traficului) la care sa lucreze o echipa de oameni si care sa nu fie plin de dureri.

Ce ar insemna “directie diametral opusa” ?

Adica sa nu folosesti deloc, daca esti in postura fericita sa iti poti alege asta.
Pentru prototyping este bun, si merge decent, dar cand incep sa curga datele mai multe, si cand incepe sa fie nevoie de performance tuning, problemele sunt spinoase si nu neaparat cu rezolvari bune pe termen mediu/lung.
In plus, au ajuns sa fie backed up de catre Microsoft pentru 2.0, ori asta nu e un semn bun deloc. Ma refer aici la faptul ca vor fi probleme serioase de compatibilitate cu versiunea 1, vor incepe sa apara chestiuni proprietare microsoft, etc.

1 Like

Poate ai dreptate, nu am mare experienta cu aceasta simbioza, dar din ce am facut n-am simtit probleme mari.

Incep sa-ti dau dreptate, l-am incercat cu spark, si imi da tot felul de probleme. De ex. nu-mi arata nimic pe pagina (o data la 2,3 reload-uri) si nu am nici o eroare de XHR nici in consola de server :smiley: