2011-09-13 16 views
8

Sto cercando di sviluppare un'app Web con Node.js. Vengo da uno sfondo PHP in cui non ho usato un motore di template (oltre a PHP stesso) e ho sempre scritto semplicemente HTML. Quindi, perché dovrei o non dovrei usare Jade o qualche altro motore di template?Quali sono i pro e i contro dell'uso di un motore di template come Jade?

+0

Hai usato un linguaggio di template, PHP è uno. – Raynos

+8

Giusto, ecco perché ho detto "oltre al PHP stesso". –

risposta

9

Pro:

  • incoraggia una buona organizzazione del codice (creazione dei dati è separata dal codice di presentazione)
  • generazione uscita è più espressivo (sintassi del modello non richiede un mare di concatenazione di stringhe)
  • Meglio produttività (sono stati gestiti problemi comuni come codifica dell'output, iterazione, condizionali, ecc.)
  • Generalmente richiede meno codice in generale (la jade in particolare ha una sintassi molto concisa)

Contro:

  • Alcuni sovraccarico delle prestazioni
  • Ancora un'altra cosa da imparare
+0

Cos'è questo "overhead delle prestazioni". Stai suggerendo di poter generare dinamicamente HTML più velocemente di un motore di template? – Raynos

+2

Assolutamente. Sarà sempre più veloce fare qualcosa come 'res.write ('

' + pageTitle + '

');', contro 'res.render ('titolo-template', {title: pageTitle});' (in Esprimere). Nella maggior parte dei casi, tuttavia, l'overhead delle prestazioni è trascurabile. Se il jade (o altro motore dei modelli) è il collo di bottiglia, stai facendo davvero bene ovunque. – jmar777

+0

vale solo per i modelli patentic. Qualsiasi modello serio sarà più veloce con un motore di template a causa del caching. – Raynos

1

Chi JADE o qualsiasi altro linguaggio di template che differiscono molto da HTML:

Prima di tutto richiede più tempo per eseguire il debug dell'HTML prodotto. Vedete HTML nel browser e avete bisogno di analizzarlo su JADE (nel vostro cervello) per confrontarlo con il contenuto del vostro editor. Questo è molto scomodo e rende il debug più difficile di quanto dovrebbe essere.

Ovviamente potrebbe non essere un problema se sei l'unico programmatore che lavora sul codice. Potrebbe sembrare così facile abbinare le linee html con le linee JADE se sei tu a scriverle.

È un problema quando si lavora in team.

Problemi correlati