Chris Coyier a un résumé impressionnant de SASS vs LESS sur css-tricks.com . Cela vaut vraiment la peine d'être lu.
En ce qui concerne certaines de vos questions spécifiques:
Communauté
Je travaille entièrement avec SASS / Compass, je ne connais donc pas très bien la communauté de LESS, mais je n’ai pas vraiment besoin de la communauté de SASS. Leur documentation est fantastique et a résolu tous les problèmes que j'ai rencontrés jusqu'à présent.
Pour ce qui en vaut la peine, voici les statistiques SASS vs LESS que Chris a publiées dans son post, que j'ai actualisées pour les chiffres actuels:
Nombre de numéros en suspens sur MOINS: 121
Nombre de numéros en suspens sur Sass: 87
Demandes de traction en attente sur MOINS: 13
Demandes de traction en attente sur Sass: 8
Nombre de validations du dernier mois en MOINS: 49
Nombre de validations du dernier mois en Sass: 7
Il est à noter que ces chiffres étaient approximativement inversés au moment où Chris écrivait en mai 2012. Cela me dit qu'ils sont tous deux à peu près égaux en ce qui concerne l'activité de développement.
Maturité
Techniquement, Sass est plus âgé. Il est sorti en 2007, tandis que LESS est sorti en 2009. Cela dit, les comparaisons que j'ai déjà vues les ont placées à peu près au même niveau de "maturité" en ce qui concerne les fonctionnalités et autres.
Les deux ont également des cadres qui leur apportent plus d'outils. LESS a Less Framework et Centage (en plus, le bootstrap de Twitter est construit avec LESS). Sass a Compass, Gravity et Susy. Les deux ont probablement plus, si vous creusez pour eux, mais ce sont certaines des premières qui apparaissent lorsque vous effectuez une recherche.
Alors, y a-t-il de réelles différences?
Quand il s'agit d'écrire, pas vraiment. Si vous utilisez la syntaxe SCSS de type CSS dans Sass (au lieu de la syntaxe SASS de type Python), vous n’avez que les différences de syntaxe mineures typiques ( @
vs $
), mais elles sont pour l’essentiel identiques.
Les deux plus grandes différences de codage que j'ai trouvées sont les suivantes: a) comment ils gèrent les unités lorsqu'ils font des mathématiques et b) comment ils gèrent l'héritage. Lorsqu'on leur donne quelque chose comme 20px + 2em
, LESS laissera tomber la deuxième unité et supposera que vous entendez la première (yeilding 22px
), tandis que Sass émettra une erreur (en gros, tapez mismatch). Avec l'héritage, LESS le traite comme un mixin (je ne peux pas vraiment l'expliquer, alors voyez la section héritage de cet article sur Tuts + pour plus de détails).
Que l’on soit supérieur à l’autre dépend de la manière dont on préférerait que l’on gère les choses.
L’autre plus grande différence que je connaisse est comment et où chacun se compile par défaut. Sass utilise Ruby et compile sur le serveur, ce qui vous permet de stocker et d'envoyer le fichier CSS compilé au client. LESS utilise par contre le script less.js pour compiler le CSS à la volée. Cependant, avec l'utilisation de Node.js, LESS peut être compilé côté serveur de la même manière que Sass.
Laquelle?
Donc, s'ils sont fondamentalement les mêmes, lequel devriez-vous utiliser? Eh bien, à moins que vous n'aimiez vraiment la syntaxe SASS de type Python, ou que vous pensiez vraiment que la compilation côté client est la voie à suivre, ou que vous préfériez grandement un appel hérité plutôt que l'autre, il importera plus que vous préfériez avoir (ou avez déjà) Ruby ou Node.js installé.