Préprocesseurs, mais c'est de la CSS au fait !

Préprocesseurs, mais c'est de la CSS au fait ! (le 12 mars 2013)

Autant pour moi, j'ai dû oublier un smiley (ou peut-être n'avais-je pas la place, 140 caractères, c'est parfois juste) pour indiquer le second degré dans un tweet sur les préprocesseurs.

Précisons-le de suite :

  • oui, je n'utilise qu'assez peu les préprocesseurs,
  • oui, sans être indispensables, je reconnais bien volontiers que ça aurait bien pu m'aider dans certains projets,
  • oui, installer des trucs à la ligne de commande me fait braire (même si je peux le faire, ce n'est pas le débat),
  • et non, je n'ai jamais dit que les préprocesseurs étaient une mauvaise chose en soi.

Si vous doutiez du dernier point, je vous invite à relire une astuce sur Alsacréations : Utiliser PHP pour gérer vos styles feuilles de styles CSS.

Pas envie ? Je vais le faire pour vous.

Une variable pourra s'écrire ainsi…

On peut même imaginer un tableau contenant les préfixes en début de fichier, et une simple boucle permettra de créer tous les préfixes, vous simplifiant la vie pour ces derniers.

Une simple convention de notation permettra de générer directement les fichiers statiques…

Oh oh, cela ressemble furieusement à un préprocesseur en fait (oui, il fallait aller chercher plus loin entre les lignes que de lire bêtement). Donc si vous croyez encore que j'y suis allergique, passez votre chemin.

Alors certes, je sais que sur Twitter, les discussions peuvent être compliquées vu les limitations… il n'empêche ! C'est impressionnant la vitesse de réaction et parfois l'animosité dont les défenseurs des préprocesseurs peuvent parfois faire preuve. Le billet dont est parti le troll est le suivant : j'en peux plus de vos préprocesseurs.

L'article dénonce un point : le nombre de tutoriels qui ne sont pas rédigés en CSS pur mais utilisant un préprocesseur. Personnellement, cela me dérange aussi, car au moins un tutoriel en CSS sera compréhensible immédiatement par tous, y compris ceux qui n'utilisent pas du tout les préprocesseurs. À la base, on a tendance à l'oublier, le préprocesseur est quand même là pour… oui, pour cracher de la CSS.

Une autre question me taraude : que fait un débutant quand il cherche à apprendre à intégrer ? Oui, il va regarder ce que font les autres (et s'il est un peu futé, il va regarder ceux qui sont réputés). Le gros risque que je vois à ce que soulève ce billet, c'est de se reposer sur le préprocesseur au lieu de réellement apprendre à faire de la CSS. Tout comme il est stupide de se reposer sur la compression Deflate pour les performances d'une CSS.

Quoi qu'on en dise, la factorisation des propriétés, l'utilisation appropriée de la cascade, l'organisation et même le simple ordre des propriétés de votre CSS peut faire la différence entre une intégration d'expert et un boulot de malpropre. Malheureusement, le débutant a de grandes chances de ne pas voir cette différence s'il n'a pas appris à la base à faire de la CSS.

P.S : petit supplément, les préprocesseurs peuvent aussi générer des choses problématiques, donc les pro-préprocesseurs (ouf, dur à dire), s'il vous plait, respirez un coup et arrêtez de dire que les préprocesseurs lavent plus blanc et font revenir l'être aimé, aussi bien soient-ils, ce ne sont que des outils qui ne remplacent pas l'interface chaise-clavier qui les manipule.

Permalien :

Flux RSS des commentaires de ce billet : https://www.nicolas-hoffmann.net/rss/commentaires.php?id_news=1535

3 commentaires

Posté par Pascal (eQRoeil) le 12/03/2013 à 18:31:51
Bonjour Nico.

Les réactions m'ont également beaucoup surpris...
Il semble qu'un titre (ou un tweet sur le sujet) suffise à se forger une opinion. C'est le deuxième cas en pas longtemps que j'observe.
Ce "survol" fait aussi que des articles soit beaucoup partagés sans le recul (regard critique) qui me semble nécessaire.

Pour le sujet des pré-processeurs, j'ai testé mais je ne les utilise pas (encore?) au quotidien bien que j'en vois l'utilité réelle dans cerains cas.

Je suis plus réservé que toi quant au risque (réel) de la mauvaise utilisation par des débutants. Il me semble qu'il faut connaître un minimum de CSS (et de ligne de comande (clin d’oeil) ) pour s'en servir.

Je pense aussi que ce sont des outils qui sont là pour répondre à un besoin et qu'ils ne sont pas forcément adaptés à tous les projets/worflow
Il me semble aussi que des choix sont faits en réponse à une mode plutôt que conduits par l'analyse du besoin.


Je trouve la lecture de code LESS ou Sass pas adaptée au partage de code mais je ne suis pas sûr que ceux qui créent ces "démos" le fassent toujours pour le partage...

Si ça vaut vraiment le coup, je récupère l'URL de l'iframe pour avoir accès au code compilé.

Peut être que la meilleure façon de partager du code, des atuces, cela reste le blog et le tuto... le bonheur est dans le <pre> ?
Posté par iManu le 13/03/2013 à 10:29:23
Pour rebondir sur l'installation des trucs en ligne de commande il est clair que ce n'est pas naturel pour un développeur Front, mais avec un peu de concentration on peut y arriver.

Cela dit dès qu'une méthode est plus simple je l'adopte et justement j'ai découvert récemment le magnifique éditeur de code SublimeText2 (je ne peux plus m'en séparer) qui grâce a ses nombreux plugins, permet notamment d'installer très simplement des outils pour préprocesseurs (coloration syntaxique, compilateur CSS automatique à la sauvegarde du fichier...), bref, du bonheur. Pour info...
Posté par Nico le 13/03/2013 à 10:51:18
@Pascal :


> Ce "survol" fait aussi que des articles soit beaucoup partagés sans le recul (regard critique) qui me semble nécessaire.

ça c'est un sujet que je connais bien, j'ai plusieurs tutos qui ont suscité moult réactions à l'emporte-pièce, en dépit des warnings et du recul que je prenais moi-même dessus. (Sourire qui tue)


> Peut être que la meilleure façon de partager du code, des atuces, cela reste le blog et le tuto... le bonheur est dans le <pre> ?

Sans aucun doute.




@iManu

Oui, j'avais déjà essayé de me pencher dessus, mais je n'avais pas pu aller plus avant. Il faut que je m'y remette ! (sourire)

Ajouter un commentaire









L'option « Se souvenir de mes informations » utilise un cookie, elle ne sera pas effective si vous les avez désactivés.

Les balises HTML ne seront pas interprétées, il est donc inutile d'en mettre. Par contre, les sauts de lignes de votre commentaire seront pris en compte, ne mettez donc pas de <br />, le site s'en chargera. Bien sûr, un commentaire vide ne sera pas ajouté !

L'auteur (autrement dit moi) n'est pas responsable des éventuelles fautes d'orthographe dans les commentaires.
Tout propos raciste et/ou insultant sera supprimé sans préavis. Les commentaires hors de propos destinés à faire de la pub pour des sites seront également supprimés sans ménagement.

Je vous prie de me pardonner, j'ai énormément de mal à lire le "langage" SMS, il n'est donc pas du tout interdit de s'abstenir de l'utiliser. Qui plus est, vous avez sûrement un clavier digne de ce nom et pas celui d'un téléphone portable. Ne vous gênez pas pour utiliser l'option "Prévisualiser" si vous voulez vous relire avant de poster, je vous en remercie d'avance !

Cet article a été écrit par Nicolas Hoffmann.

Ce site est la propriété de Nicolas Hoffmann.
Tous droits réservés, les textes du blog sont publiés sous licence CC BY-NC-SA.