J'apprends Rails et j'ai vu ces modèles de moteurs. Je n'ai aucune expérience avec eux (seulement erb).
Mais comme je suis débutant, je suis vraiment confus. Lequel proposez-vous et pourquoi? Erb, Haml ou Slim? Veuillez indiquer la raison pour laquelle vous préférez l'un aux autres. Et si vous avez d'autres recommandations, veuillez nous en informer.
EDIT: Je ne cherche PAS un gagnant ici. Je veux juste connaître vos opinions à leur sujet, leur syntaxe, leur rapidité d'exécution, etc.
ruby-on-rails
haml
erb
slim-lang
Omid Kamangar
la source
la source
Réponses:
ERB est bon principalement si vous avez un concepteur Web qui travaillera sur du HTML brut et ne connaît ni haml ni slim. De cette façon, il peut écrire du HTML et vous pouvez incorporer la logique ruby avec les balises appropriées.
Si vous travaillez à la fois sur la logique HTML et ruby, ou si votre concepteur est prêt à apprendre quelque chose de nouveau (comme HAML), je choisirais HAML. Il est beaucoup plus compatible avec les rubis, réduit le nombre de caractères de beaucoup et beaucoup plus lisible que ERB.
Par exemple (tiré du site officiel de HAML ):
Dans ERB, votre point de vue ressemblera à ceci:
Dans HAML, cela ressemblera à ceci:
Beaucoup plus propre!
En ce qui concerne la différence entre HAML et SLIM - je n'ai jamais vraiment travaillé avec SLIM mais je suppose que c'est une question de goût - jetez un œil aux deux syntaxes et décidez de celle qui vous convient le mieux. Je ne pense pas qu'il y ait un gagnant définitif entre ces deux (HAML / SLIM).
la source
a href="foo"
.Deux grands avantages de l'utilisation de slim sur haml:
Slim est actuellement environ huit fois plus rapide que le haml.
Slim prend en charge le streaming HTTP, contrairement à HAML.
Slim a une syntaxe plus naturelle:
a href="foo.html"
la source
Du haut de ma tête c'est ce que j'ai trouvé
ERB :
Avantages
Les inconvénients
HAML
Avantages
Les inconvénients
la source
La question pour moi se résume à préférez-vous mettre
%
avant chaque balise ou|
avant chaque nouveau bloc de texte?Svelte:
Haml:
Une dernière chose à surveiller: haml suppose un espace blanc entre les nouvelles lignes ( supprimez les espaces dans haml ) tandis que slim ne suppose aucun espace (ajoutez des espaces dans Slim ici et ici )
la source
|
pour chaque bloc de texte%
pour chaque balise. Il y a beaucoup plus de balises que de blocs de texte littéral. Un petit avantage sémantique pour moi avec slim est que tout html littéral brut avec des<>
balises utilisées est précédé d'un explicite|
. Je préfère "tout est mince à moins|
que vous ne le rendiez explicitement littéral avec " over "tout est littéral jusqu'à ce que vous le fassiez hameau avec un%
.attr="value"
), tandis que Haml ressemble plus à Ruby ({key: "value"}
comme Hash).https://github.com/scalp42/hamlerbslim - est une référence indépendante qui montre Slim et Erb comme gagnants, en termes de performances (Slim a également tendance à réduire la taille de la sortie HTML.)
Mon opinion personnelle est que dans l'ensemble, Slim et Haml vous feront gagner du temps (== argent) en termes de maintenance, à condition que vous ayez des gens avertis Haml / Slim qui s'occupent de vos points de vue.
Si vous n'avez pas ces personnes, Erb est certainement la voie à suivre, car malgré la meilleure volonté du monde, il y a beaucoup de personnes très bon marché disponibles qui peuvent travailler avec HTML / Erb, mais trouvent Haml / Slim complet mystère.
Le meilleur de tous les cas, formez ces personnes à utiliser Slim ou au moins leur exposez-les, et gardez le nombre de ceux qui «comprennent».
la source