Lorsque je voyage, je suis souvent confronté à des connexions Internet de mauvaise qualité, ce qui, en tant que concepteur de sites Web, m'amène à réfléchir aux principes de conception permettant de résoudre le problème de la vitesse des sites Web, même lorsque la connexion est mauvaise.
La pratique m'a permis de trouver quelques astuces utiles :
Par exemple, la page de connexion au CMS est souvent très simple. Un simple formulaire nécessite-t-il vraiment de télécharger l'ensemble de Bootstrap et d'autres frameworks CSS/JS ? Les pages importantes méritent d'être optimisées et de faire l'objet d'un code natif.
Une fois la page entièrement rendue, l'utilisateur dispose de quelques secondes pour remplir ses coordonnées, et nous pouvons télécharger et mettre en cache les styles restants dans le navigateur en arrière-plan. Au moment où l'utilisateur se connecte, il aura probablement déjà téléchargé Bootstrap (et s'il est sur Edge, il ne le fera pas...).
Vraiment ! Les Emoji présentent de nombreux avantages pratiques :
Je mets parfois les styles CSS importants définissant la mise en page et la mise en page de base directement dans le HTML. Je mets une limite de 1 KB, dans laquelle j'essaie de mettre le plus possible. L'inconvénient de cette approche est que les styles doivent être transférés à chaque demande et ne peuvent pas être mis en cache. En revanche, ils se téléchargent incomparablement plus vite qu'une image.
Je ne suis pas un expert en matière de vitesse de chargement, [Martin Michalek] (https://www.programia.cz/rozhovor-martin-michalek…) vous en dira plus.
J'utilise toujours l'ajax pour récupérer du contenu peu important ou lent. Cela ajoute un peu aux exigences technologiques de l'application, mais je peux me le permettre.
Un exemple d'un bon endroit pour utiliser ajax est presque tout dans l'administration. Très souvent, il y a beaucoup de données à récupérer, mais l'utilisateur n'est pas intéressé par tout. Lorsque l'utilisateur ne télécharge qu'un client javascript léger et que toutes les données sont récupérées via Vue et json, seule la quantité minimale de données est téléchargée et les réponses sont instantanées.
Comment faire cela dans Vue : https://vue.baraja.cz/api-a-ajax-ve-vue-js
En arrière-plan, j'utilise la bibliothèque pour Nette : https://github.com/baraja-core/structured-api.
Pour la distribution de contenu statique, je recommande d'utiliser un CDN pour tous les types de sites. Si vous ne pouvez pas mettre en place un CDN, utilisez au moins Cloudflare en mode proxy. Il mettra automatiquement en cache le contenu statique sur lui-même en fonction des en-têtes HTTP. Tous les fournisseurs d'hébergement n'ont pas une bonne configuration de Pops, et pour les longues routes, cela vous fera gagner des centaines de millisecondes à chaque requête.
L'un de mes juniors a récemment placé sur la page principale du site une image PNG qui contenait une photo et occupait 3 Mo. Il a dit que c'était OK parce que la page se chargeait rapidement sur sa connexion (c'est le cas sur son optique à la maison, n'est-ce pas...), et il a ajouté que nous transférons beaucoup de données de nos jours, comme la vidéo.
Je suis vieux jeu à ce sujet et j'optimise ce que je peux.
Photos en JPG, ou mieux WEBP. Mais sauvegarder une image au format JPG ne veut rien dire, vous devez la faire passer par un service d'optimisation : https://tinyjpg.com.
Si vous avez des images dans Git, cet outil peut les compresser automatiquement et envoyer une demande de pull : https://imgbot.net. Lorsqu'une nouvelle image est ajoutée, il envoie à nouveau le PR.
Si vous devez compresser des milliers d'images (comme toute une galerie de produits sur un site), j'utilise une application de bureau pour Mac pour le faire : https://imageoptim.com/mac.
Une compression appropriée des images permet généralement d'économiser le plus de données. Parfois même 50 %.
Jan Barášek Více o autorovi
Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.
Rád vám pomůžu:
Články píše Jan Barášek © 2009-2024 | Kontakt | Mapa webu
Status | Aktualizováno: ... | fr