Cours Angular · Module 3: Modules

L'organisation du code dans les grands projets

1 min de lecture
Dans cette leçon3

Dans les grands projets, l'organisation est essentielle - tout comme dans l'armée du shogun, chacun doit connaître sa place.

Barrel Exports (index.ts)

1// features/samurai/index.ts
2export * from './samurai.component';
3export * from './samurai.service';
4export * from './samurai.model';
5export * from './components/samurai-card.component';
6
7// Utilisation - un seul import au lieu de plusieurs
8import {
9  SamuraiComponent,
10  SamuraiService,
11  SamuraiCardComponent
12} from './features/samurai';

Conventions de nommage

1feature.component.ts       # Component
2feature.component.html     # Template
3feature.component.scss     # Styles
4feature.component.spec.ts  # Tests
5
6feature.service.ts         # Service
7feature.guard.ts           # Guard
8feature.directive.ts       # Directive
9feature.pipe.ts            # Pipe
10feature.module.ts          # Module (legacy)
11feature.routes.ts          # Routes (standalone)

Bonnes pratiques

  1. Un composant = un dossier (avec les fichiers associés)
  2. Regroupe par fonctionnalité, pas par type
  3. Utilise les barrel exports pour des imports plus propres
  4. Core pour les singletons, Shared pour les éléments réutilisables
  5. Lazy loading pour les feature modules
  6. 400 lignes maximum par fichier de composant

Tu as repéré une erreur dans cette leçon ?

Teste tes connaissances

Réponds aux questions de cette leçon. Choisis une réponse pour voir tout de suite si elle est correcte.

  1. 1. Qu'est-ce qu'un « barrel export » dans le contexte de l'organisation du code Angular ?

  2. 2. Quel principe d'organisation du code est recommandé dans les grands projets Angular ?

Voici 2 des 3 questions de cette leçon. Réponds aux autres dans le jeu.

Tâches pratiques dans le jeu

  • Tri horizontal

    Ordonne les éléments d'une ligne de barrel export qui réexporte tout depuis un fichier de composant :

  • Tri vertical

    Ordonne les fichiers d'un répertoire de composant typique (composant, template, styles, tests) :

  • Clique dans l'ordre

    Clique sur les éléments dans l'ordre pour construire le début d'un barrel export : export * from

Articles utiles