TypeScript
11 - Exercice : Interfaces hybrides

Exercice - Interfaces

Enoncé

  1. Interface LibraryManagement

Créez une interface LibraryManagement qui agit à la fois comme une fonction et comme un objet avec des méthodes spécifiques :

  • En tant que fonction, LibraryManagement doit afficher un résumé des livres et des membres actuellement enregistrés.
  • En tant qu'objet, il doit inclure les méthodes suivantes :
    • addBook(book: Book): Ajouter un livre à la collection.
    • addMember(member: Member): Ajouter un membre à la bibliothèque.
    • printBooks(): Afficher tous les livres enregistrés.
    • printMembers(): Afficher tous les membres enregistrés.
  1. Fonction createLibraryManagement Implémentez une fonction createLibraryManagement qui initialise et retourne un objet conforme à l'interface LibraryManagement. L'objet retourné doit comporter des listes internes pour stocker les livres et les membres, et des implémentations pour chaque méthode définie dans l'interface LibraryManagement.

  2. Tests de Fonctionnalité Après avoir créé votre gestionnaire de bibliothèque, testez-le en ajoutant quelques livres et membres, puis en utilisant la fonction de résumé pour afficher les informations globales. Vérifiez que toutes les méthodes fonctionnent comme attendu et que les ajouts aux listes sont gérés correctement.