
Comment créer un site Web d'entreprise une fois et correctement ?
Lors de la création de notre distribution Droopler sous Drupal, nous avons pris en compte plusieurs années d'expérience dans la construction de sites web d'entreprise. Nous avons constaté que l'une des exigences les plus importantes pour créer de grands sites web est d'utiliser le principe du "une seule fois et correctement".
Une fois créé, le logiciel doit être facile à utiliser et à mettre à jour, et ne doit pas nécessiter de reconstruction majeure pour introduire de nouvelles fonctionnalités. Voici quelques conseils sur comment créer des sites web que nous pouvons partager avec vous. Ils seront particulièrement utiles dans le contexte du travail avec Drooper.
Ne prenez pas de raccourcis
En programmation, un seul objectif peut souvent être atteint de plusieurs façons. Rappelez-vous que le moyen le plus rapide et le plus simple n'est pas forcément le plus recommandé. Un bon exemple est celui des changements dans l'apparence des sites web.
Vous avez certainement rencontré des CSS mal écrits contenant du code "baclé", sans approfondir la documentation et la structure existante des styles. L'abus de la directive important et le masquage d'éléments inutiles en utilisant la propriété display: none est caractéristique de telles modifications. La perspective d'apporter des changements rapides peut obscurcir le jugement au point que le code se retrouve au mauvais endroit. Les programmeurs inexpérimentés modifient souvent des fichiers compilés sans même remarquer les fichiers source SCSS et JavaScript. Les effets de telles actions augmentent le coût possible de la prise en charge du projet par une autre équipe.
Un autre exemple de raccourci est le fait de réécrire des modèles de page entiers pour modifier des parties individuelles. Cela peut être souvent observé dans le cas de Drupal et des fichiers Twig qu'il utilise. La page sélectionnée peut être réécrite sans problème visible, mais une mauvaise décision de conception peut avoir des conséquences de grande portée.
En résumé : quels sont les inconvénients des solutions rapides ? Elles sont peu coûteuses et efficaces à court terme, mais elles rendent difficile la maintenance et la mise à jour du site web à long terme. Il est également difficile de transmettre un code rempli de modifications irréfléchies à d'autres programmeurs.
Prenez soin des détails
Tout d'abord, je voudrais vous parler de la théorie des vitres brisées. C'est une question de sociologie qui décrit un cas où une dégradation visible dans l'environnement peut conduire à la conclusion qu'il n'y a pas de loi. Le Prof. Philip Zimbardo a mené une expérience dans laquelle il a abandonné deux voitures, une dans un quartier pauvre et une dans un quartier riche. La voiture laissée dans un quartier pauvre a été rapidement détruite, la voiture laissée dans un quartier riche est restée en parfait état. Cependant, après que sa fenêtre a été délibérément brisée, elle a également été complètement dévastée avec le temps. Il semble que la négligence visible déclenche la perte de l'inhibition morale chez l'homme.
Cette théorie peut être appliquée directement au travail d'un programmeur. S'il constate que des changements dans un projet donné sont introduits de manière bâclée, il ne sera pas motivé pour écrire un code solide. Les "fenêtres brisées" métaphoriques feront que les modifications ultérieures ne seront pas meilleures que les précédentes.
C'est pourquoi il est extrêmement important de prendre soin des moindres détails. Lors du développement de logiciels chez Droptica, nous vérifions le code très attentivement et ne permettons même pas les moindres lacunes ; de cette manière, nous encourageons les autres à ne pas baisser leur garde et à maintenir la qualité de leur travail à un niveau élevé. Nous vous recommandons d'adopter cette approche. En prêtant attention même aux petites erreurs dans les commentaires du code, vous allez élever la barre pour toute l'équipe.
L'attention aux détails est directement liée au point précédent, c'est-à-dire à ne pas prendre de raccourcis. Travaillez solidement. Depuis le début du projet, utilisez le versioning et vérifiez le code attentivement. En tant qu'utilisateurs de Drupal et Droopler, utilisez toujours Composer et ne cédez pas à la tentation de télécharger des modules via des fichiers ZIP. Planifiez vos actions et appliquez l'approche modulaire, où chaque fonctionnalité est séparée des autres.
Utilisez les outils comme prévu
Le besoin de flexibilité lors de la conception de sites web ne diminue jamais. Nous savons par notre expérience qu'aucune solution d'édition ne peut couvrir toutes les applications possibles. Cela conduit généralement à utiliser le logiciel d'une manière non entièrement conforme aux intentions de ses créateurs.
En regardant du point de vue des créateurs de Droopler, nous fournissons une quinzaine de types de paragraphes prêts à l'emploi (éléments à partir desquels vous pouvez construire une page) avec notre distribution. Parfois, il est nécessaire d'obtenir une fonctionnalité que nous n'avons pas prévue. Par exemple, les utilisateurs collent des scripts d'autres sites web dans le contenu des zones de texte ou modifient le schéma de couleurs des paragraphes d'une manière différente des instructions officielles.
Pourquoi une telle approche est-elle inefficace ? Lorsque nous publions une nouvelle version de Droopler, nous essayons de tester les fonctionnalités existantes et d'assurer la continuité du fonctionnement des sites web pour tous les utilisateurs. Cependant, nous ne pouvons pas vérifier les usages personnalisés et non pris en charge.
Cette note s'applique pratiquement à tous les logiciels. Lorsque vous utilisez des outils contrairement à leur usage prévu, vous devez vous attendre à ce qu'à l'avenir ils cessent de fonctionner conformément à nos attentes.
Limitez le nombre d'outils utilisés
Drupal est un système développé par la communauté et basé sur des modules externes. Leur grand nombre signifie que un effet peut souvent être obtenu par des méthodes complètement différentes. Par exemple, vous pouvez ajouter du contenu via un éditeur WYSIWYG ordinaire, des éléments Paragraphs et le projet Gutenberg connu de WordPress. Les blocs sur la page peuvent être disposés de manière avancée via les modules Layout Builder ou Context. Vous pouvez rechercher du contenu à l'aide de Views, de la recherche intégrée ou de l'API de recherche externe.
Tous les modules mentionnés dans les exemples ci-dessus peuvent fonctionner parallèlement et compléter mutuellement leurs fonctionnalités. Il convient de garder à l'esprit cependant que chaque solution supplémentaire utilisée sur la page complique sa configuration et affecte négativement la performance. Lors du démarrage de la création d'une page, sélectionnez les outils que vous souhaitez utiliser et tenez-vous-en à eux tout le temps. Dans le cas de Droopler, certaines méthodes de fonctionnement (telles que l'ajout de contenu via Paragraphs) sont prédéterminées par l'architecture de la distribution.
Maintenez la cohérence visuelle
Maintenir l'ordre visuel est très important pour chaque site web. Ce n'est pas seulement pour assurer le bon aspect, cependant. La méthode d'introduction des modifications est tout aussi importante. Un site web affiché absolument correctement pour un utilisateur externe peut également contenir des défauts de conception sérieux.
Dans le cas de Droopler, avant d'apporter des modifications au SCSS, nous vous recommandons de consulter la documentation contenue dans le référentiel officiel. Cela prendra un certain temps mais accélérera grandement votre travail. Nous avons préparé une architecture SCSS dans laquelle les variables sont organisées sous forme de pyramide de dépendance. L'utilisation de variables au sommet de la pyramide affecte toutes les variables en dessous, mais il est également possible de bloquer une telle "succession" de valeurs et de réécrire chaque élément. C'est une approche extrêmement flexible et efficace qui vous permet de changer tout le schéma de couleurs d'une page en quelques minutes seulement.
Si vous introduisez des modifications en dehors du système décrit, vous ne pourrez pas profiter de notre architecture – votre code deviendra plus difficile à mettre à jour et moins compréhensible.
Résumé
Le principe "une seule fois et correctement" a quatre avantages extrêmement importants d'un point de vue commercial :
- Facilitation des mises à jour – vous pouvez être sûr que vous êtes prêt à installer les futures versions du logiciel et donc – capable de répondre rapidement à tout patch critique publié.
- Capacité à reprendre le projet – si vous devez changer d'équipe de développement ou de contractant – cela peut être fait sans nécessiter d'analyses fastidieuses du code.
- Sécurisation de l'application – introduire des changements de la manière recommandée et éviter de résoudre les problèmes de manière bâclée conduit directement à un niveau de sécurité plus élevé.
- Gain de temps pour l'avenir – il faut garder à l'esprit qu'un code rapidement écrit et des décisions de conception hâtivement prises commencent tôt ou tard à générer des coûts sérieux (par exemple, refactoring et mises à jour).