Fermer

février 6, 2024

Maîtriser la refactorisation de code avec ReactJS et TypeScript

Maîtriser la refactorisation de code avec ReactJS et TypeScript


Dans le monde trépidant du développement Web, il est crucial de garder votre base de code propre, efficace et maintenable. La refactorisation du code joue un rôle central dans la réalisation de ces objectifs. Dans cet article de blog, nous explorerons comment refactoriser votre projet NextJS à l’aide de ReactJS et TypeScript, en nous concentrant sur les meilleures pratiques et les optimisations.

Réduire la taille du code

L’un des principaux objectifs du refactoring est de réduire la taille de la base de code, ce qui accélère la construction et améliore les performances. Essayez de conserver chaque fichier sous 250 lignes de code. Décomposez les composants plus gros en morceaux plus petits et réutilisables.

Meilleures pratiques dactylographiées

Assurez-vous que votre code TypeScript est propre et maintenable en utilisant les types appropriés pour les variables, les fonctions et les accessoires. Évitez autant que possible d’utiliser « any », car cela compromet les avantages du typage statique. Cela améliore la lisibilité du code et aide à détecter les bogues potentiels pendant le développement.

Tirer parti des énumérations pour les options fixes

Utilisez les énumérations TypeScript pour les variables qui ne peuvent prendre qu’une seule option dans une liste fixe. Par exemple, créez une énumération API_STATUS pour représenter différents états des appels d’API, améliorant ainsi la clarté du code et évitant les erreurs.

enum API_STATUS {
  LOADING,
  SUCCESS,
  ERROR,
}

Supprimer les consoles de fichiers et les avertissements

Nettoyez votre base de code en supprimant les instructions console.log et les avertissements inutiles. Cela améliore non seulement la qualité du code, mais évite également les bruits inutiles pendant le développement.

Composants de chargement différé

Séparez les parties HTML qui s’affichent de manière conditionnelle dans leurs composants et importez-les en tant que composants chargés paresseux avec le rendu côté serveur (SSR) défini sur false. Cela optimise le chargement initial de la page et améliore les performances globales.

const ConditionalComponent = React.lazy(() =>
   import('./ConditionalComponent'), {
      ssr: false
   }
);
// ...
<React.Suspense fallback={<LoadingSpinner />}>
 {shouldRender && <ConditionalComponent />}
</React.Suspense>

Modulariser les appels API

Évitez d’encombrer votre dossier de pages avec des appels et des fonctions API. Créez des fichiers enfants distincts pour ces fonctions et importez-les dans le composant parent. Cela représente une structure de code modulaire et organisée.

Fonctions d’assistance dans des fichiers séparés

Créez des fichiers d’assistance distincts pour les fonctions qui acceptent des entrées et fournissent des sorties. Cela améliore non seulement l’organisation du code, mais encourage également la réutilisation dans votre projet.

Constantes et modèles

Organisez vos constantes et modèles en fonction de modules. Créez des fichiers de constante et de modèle séparés dans le module et disposez d’un dossier commun pour ceux utilisés dans plusieurs modules.

Hooks personnalisés pour la gestion de l’état

Créez un hook personnalisé distinct pour gérer la gestion de l’état et d’autres hooks. Cela représente la réutilisation du code et maintient vos composants propres et ciblés.

// useCustomHook.ts
import { useState, useEffect } from 'react';
const useCustomHook = () => {
  const [state, setState] = useState(initialState);
  useEffect(() => {
    // Effect logic here
  }, [dependencies]);
  return { state, setState };
};
export default useCustomHook;

Meilleures pratiques en matière de structure de répertoire

Suivez une structure de répertoires cohérente et organisée. La structure recommandée comprend des dossiers pour le magasin, les ressources et les composants. Dans le dossier des composants, séparez-les en communs, utilitaires, constantes, modèles, réducteurs et services.

src
 | - store
    | - assets
    | - components
       | - common
           | - utils
           | - constant
           | - models
           | - reducers
           | - Service ===> apis call
       |- module 1
           | - components
           | - constant
           | - models
           | - reducers
           | - Service ===> apis call
       |- module 2
           | - components
           | - constant
           | - models
           | - reducers
           | - Service ===> apis call
    | - pages
       | - module 1
           | - index.tsx
       | - module 2
           | - index.tsx

Conclusion

La maîtrise de la refactorisation du code est un processus continu qui s’avère payant en termes de maintenabilité, de performances et de satisfaction des développeurs. En suivant ces bonnes pratiques dans votre projet ReactJS avec TypeScript, vous serez sur la bonne voie pour créer une application Web robuste et efficace.

Consultez nos autres articles de blog pour plus d’informations.

VOUS TROUVEZ CECI UTILE ? PARTAGEZ-LE






Source link