<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Frontend on Simple Enough Blog</title><link>https://blog-dev.simpleenough.net/fr/tags/frontend/</link><description>Recent content in Frontend on Simple Enough Blog</description><generator>Hugo</generator><language>fr</language><lastBuildDate>Tue, 16 Sep 2025 10:18:11 +0200</lastBuildDate><atom:link href="https://blog-dev.simpleenough.net/fr/tags/frontend/index.xml" rel="self" type="application/rss+xml"/><item><title>Palette de couleurs CSS : comment bien choisir et combiner les couleurs</title><link>https://blog-dev.simpleenough.net/fr/blog/colorpalette/</link><pubDate>Tue, 16 Sep 2025 10:18:11 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/colorpalette/</guid><description>&lt;h2 id="i-pourquoi-une-palette-de-couleurs-css-bien-pensée-est-essentielle" class="heading">I. Pourquoi une &lt;strong>palette de couleurs CSS&lt;/strong> bien pensée est essentielle&lt;a href="#i-pourquoi-une-palette-de-couleurs-css-bien-pens%c3%a9e-est-essentielle" aria-labelledby="i-pourquoi-une-palette-de-couleurs-css-bien-pensée-est-essentielle">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Une palette bien conçue assure &lt;strong>cohérence visuelle&lt;/strong>, &lt;strong>clé de l’identité de marque&lt;/strong>, et garantit une &lt;strong>expérience utilisateur fluide&lt;/strong>. Elle facilite la maintenance du code, évite les couleurs redondantes et permet une &lt;strong>adaptation facile aux thèmes&lt;/strong> (clair / sombre). Respecter les bonnes pratiques favorise aussi l’&lt;strong>accessibilité&lt;/strong> : contraste suffisant, indication visuelle doublée (ne pas dépendre uniquement de la couleur).&lt;/p></description></item><item><title>Organiser son projet frontend : structure de fichiers claire et simple</title><link>https://blog-dev.simpleenough.net/fr/blog/organization_frontend/</link><pubDate>Fri, 05 Sep 2025 12:09:45 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/organization_frontend/</guid><description>&lt;h2 id="i-pourquoi-organiser-son-projet-frontend-" class="heading">I. Pourquoi organiser son projet frontend ?&lt;a href="#i-pourquoi-organiser-son-projet-frontend-" aria-labelledby="i-pourquoi-organiser-son-projet-frontend-">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Lorsque l’on débute en développement web, il est courant de mettre tous ses fichiers dans un seul dossier. Pourtant, une &lt;strong>bonne organisation&lt;/strong> devient vite indispensable dès que le projet grandit, que ce soit pour :&lt;/p>
&lt;ul>
&lt;li>S’y retrouver facilement.&lt;/li>
&lt;li>Collaborer efficacement avec d’autres développeurs.&lt;/li>
&lt;li>Faciliter la maintenance et les évolutions.&lt;/li>
&lt;li>Gagner du temps à long terme.&lt;/li>
&lt;/ul>
&lt;hr>




&lt;h2 id="ii-structure-recommandée-pour-un-projet-simple" class="heading">II. Structure recommandée pour un projet simple&lt;a href="#ii-structure-recommand%c3%a9e-pour-un-projet-simple" aria-labelledby="ii-structure-recommandée-pour-un-projet-simple">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Voici une structure classique à un projet HTML/CSS/JS :&lt;/p></description></item><item><title>Comprendre le modèle boîte en CSS (box model)</title><link>https://blog-dev.simpleenough.net/fr/blog/boxmodel/</link><pubDate>Mon, 04 Aug 2025 16:09:45 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/boxmodel/</guid><description>&lt;h2 id="i-quest-ce-que-le-modèle-boîte-en-css-" class="heading">I. Qu’est-ce que le modèle boîte en CSS ?&lt;a href="#i-quest-ce-que-le-mod%c3%a8le-bo%c3%aete-en-css-" aria-labelledby="i-quest-ce-que-le-modèle-boîte-en-css-">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>En CSS, &lt;strong>chaque élément HTML est considéré comme une boîte rectangulaire&lt;/strong>. C’est ce qu’on appelle le &lt;strong>box model&lt;/strong> (ou modèle de boîte).&lt;/p>
&lt;p>Ce modèle définit &lt;strong>comment la taille d’un élément est calculée&lt;/strong>, et comment il interagit avec les autres éléments autour de lui.&lt;/p>
&lt;p>Un élément HTML est constitué de &lt;strong>4 zones&lt;/strong> principales :&lt;/p></description></item><item><title>Responsive et adaptatif : deux stratégies, un objectif commun</title><link>https://blog-dev.simpleenough.net/fr/blog/responsivevsadaptative/</link><pubDate>Mon, 28 Jul 2025 12:14:54 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/responsivevsadaptative/</guid><description>&lt;h2 id="i-introduction" class="heading">I. Introduction&lt;a href="#i-introduction" aria-labelledby="i-introduction">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Le &lt;strong>design responsive&lt;/strong> et le &lt;strong>design adaptatif&lt;/strong> sont deux approches utilisées pour concevoir des interfaces web accessibles sur plusieurs types d&amp;rsquo;appareils. Dans un monde où la diversité des tailles d&amp;rsquo;écran est la norme — des smartphones aux écrans 4K — comprendre les différences entre ces deux stratégies est essentiel pour tout développeur ou designer frontend. Cet article propose un tour d&amp;rsquo;horizon clair, comparatif et documenté de ces deux méthodologies, avec des cas d’usage concrets et des recommandations pratiques.&lt;/p></description></item><item><title>Optimiser les performances Flutter : build(), keys, et const Widgets</title><link>https://blog-dev.simpleenough.net/fr/blog/optimisationflutter/</link><pubDate>Tue, 15 Jul 2025 09:24:42 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/optimisationflutter/</guid><description>&lt;p>Cet article propose une amélioration des performances en se concentrant sur trois aspects fondamentaux :&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Le cycle de build()&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Les clés (keys)&lt;/strong>&lt;/li>
&lt;li>&lt;strong>Les widgets const&lt;/strong>&lt;/li>
&lt;/ul>
&lt;hr>




&lt;h2 id="i-le-cycle-de-build--comprendre-pour-mieux-optimiser" class="heading">I. Le cycle de build() : comprendre pour mieux optimiser&lt;a href="#i-le-cycle-de-build--comprendre-pour-mieux-optimiser" aria-labelledby="i-le-cycle-de-build--comprendre-pour-mieux-optimiser">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Le processus &lt;strong>build()&lt;/strong> est au cœur du rendu dans Flutter. Lorsqu&amp;rsquo;un état change ou qu&amp;rsquo;un widget est reconstruit, la méthode &lt;strong>build()&lt;/strong> est appelée.
Une mauvaise gestion de cette méthode peut causer des ralentissements notables.&lt;/p></description></item><item><title>Flutter &amp; Redux : une recette bien ordonnée avec dispatch</title><link>https://blog-dev.simpleenough.net/fr/blog/dispatch/</link><pubDate>Sun, 22 Jun 2025 19:38:55 +0100</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/dispatch/</guid><description>&lt;h2 id="i-introduction-à-redux-dans-flutter" class="heading">I. Introduction à Redux dans Flutter&lt;a href="#i-introduction-%c3%a0-redux-dans-flutter" aria-labelledby="i-introduction-à-redux-dans-flutter">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Inspiré du modèle de flux unidirectionnel de données, Redux permet de centraliser l’état de l’application et de le modifier via des actions claires, prévisibles et testables.&lt;/p>
&lt;p>Le cœur de Redux repose sur trois concepts :&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Store&lt;/strong> : l&amp;rsquo;état global.&lt;/li>
&lt;li>&lt;strong>Action&lt;/strong> : un événement décrivant un changement.&lt;/li>
&lt;li>&lt;strong>Reducer&lt;/strong> : une fonction qui transforme l’état en fonction de l’action.&lt;/li>
&lt;/ul>
&lt;p>L’objectif de cet article est de comprendre &lt;strong>comment utiliser &lt;code>dispatch&lt;/code> avec Redux dans Flutter&lt;/strong>, en gardant une approche simple, pédagogique et rigoureuse.&lt;/p></description></item><item><title>Flutter Hot Reload : pourquoi est-il si rapide ?</title><link>https://blog-dev.simpleenough.net/fr/blog/hotreload/</link><pubDate>Mon, 19 May 2025 13:45:30 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/hotreload/</guid><description>&lt;h2 id="i-quest-ce-que-le-hot-reload-dans-flutter-" class="heading">I. Qu’est-ce que le hot reload dans Flutter ?&lt;a href="#i-quest-ce-que-le-hot-reload-dans-flutter-" aria-labelledby="i-quest-ce-que-le-hot-reload-dans-flutter-">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Le &lt;strong>hot reload&lt;/strong> est une fonctionnalité de Flutter qui permet de recharger rapidement le code modifié d’une application sans avoir à en redémarrer l’exécution complète. Cette opération conserve l’état courant de l’application, contrairement à un redémarrage classique.&lt;/p>
&lt;p>&lt;strong>Avantages principaux :&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>Gain de temps lors du développement UI.&lt;/li>
&lt;li>Conservation de l’état : idéal pour tester une modification sans repasser par un long processus de navigation.&lt;/li>
&lt;li>Cycle de développement plus court.&lt;/li>
&lt;/ul>
&lt;p>Flutter supporte le hot reload grâce à l&amp;rsquo;architecture du moteur Dart, qui permet une &lt;strong>injection dynamique&lt;/strong> de code dans l’application en cours d’exécution.&lt;/p></description></item><item><title>Flutter pour les vrais débutants : c’est quoi, à quoi ça sert, comment l’essayer</title><link>https://blog-dev.simpleenough.net/fr/blog/flutterstart/</link><pubDate>Mon, 12 May 2025 10:10:48 +0200</pubDate><guid>https://blog-dev.simpleenough.net/fr/blog/flutterstart/</guid><description>&lt;h2 id="i-quest-ce-que-flutter-" class="heading">I. Qu’est-ce que Flutter ?&lt;a href="#i-quest-ce-que-flutter-" aria-labelledby="i-quest-ce-que-flutter-">
&lt;!-- &lt;i class="fas fa-link anchor">&lt;/i> -->
 &lt;svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 640 512">&lt;use href="#fas-link">&lt;/use>&lt;/svg>&amp;nbsp;
 &lt;/a>
&lt;/h2>
&lt;p>Flutter est un &lt;strong>framework open-source&lt;/strong> développé par Google, destiné à la création d’interfaces utilisateur &lt;strong>natives&lt;/strong> pour &lt;strong>Android&lt;/strong>, &lt;strong>iOS&lt;/strong>, &lt;strong>Web&lt;/strong> et &lt;strong>desktop&lt;/strong> à partir d’un &lt;strong>code unique&lt;/strong>. Utilisant le langage &lt;strong>Dart&lt;/strong>, il permet aux développeurs de concevoir des applications fluides, performantes et esthétiques.&lt;/p>
&lt;p>Flutter se distingue par son moteur de rendu intégré et sa capacité à reproduire des animations à 60 fps ou plus. Cela signifie qu’il ne s’appuie pas sur les composants natifs de la plateforme cible, ce qui lui permet une grande &lt;strong>cohérence visuelle&lt;/strong> entre les plateformes.&lt;/p></description></item></channel></rss>