Menu
Coddy logo textTech

Classes Livre et Utilisateur

Fait partie de la section Programmation Orientée Objet du Journey Dart de Coddy. Leçon 102 sur 110.

challenge icon

Défi

Facile

Dans la leçon précédente, vous avez créé une classe Book avec des propriétés de base et une méthode toString(). Il est maintenant temps d'étendre votre système de bibliothèque en ajoutant une classe User pour représenter les membres de la bibliothèque qui peuvent emprunter des livres.

Vous devrez créer un nouveau fichier et mettre à jour vos fichiers existants :

  • book.dart : améliorez votre classe Book existante en ajoutant une propriété isAvailable (booléenne) dont la valeur par défaut est true. Cela permettra de suivre si un livre peut être emprunté.
  • user.dart : créez une nouvelle classe User pour représenter les membres de la bibliothèque. Chaque utilisateur doit avoir un id (String), un name (String) et une liste borrowedBooks contenant des objets Book. Incluez un constructeur qui initialise l'id et le nom, avec une liste vide pour les livres empruntés. Redéfinissez toString() pour renvoyer le format User [id]: name (X books borrowed), où X correspond au nombre de livres empruntés.
  • main.dart : importez vos fichiers book et user. Créez un livre avec l'ISBN 978-0-13-468599-1, le titre The Pragmatic Programmer et l'auteur David Thomas. Créez un utilisateur avec l'id U001 et le nom Alice Johnson. Affichez le livre, puis indiquez s'il est disponible en utilisant le format Available: true ou Available: false. Affichez l'utilisateur. Ajoutez ensuite le livre à la liste des livres empruntés de l'utilisateur, définissez isAvailable du livre sur false, puis affichez à nouveau l'utilisateur pour montrer le nombre de livres mis à jour.

Cela établit la relation entre les livres et les utilisateurs sur laquelle vous vous appuierez pour implémenter le système complet d'emprunt dans la prochaine leçon !

Résultat attendu :

[978-0-13-468599-1] The Pragmatic Programmer by David Thomas
Available: true
User U001: Alice Johnson (0 books borrowed)
User U001: Alice Johnson (1 books borrowed)

Essayez vous-même

import 'book.dart';
// TODO: Importer user.dart

void main() {
  // TODO: Créer un livre avec l'ISBN '978-0-13-468599-1', le titre 'The Pragmatic Programmer', et l'auteur 'David Thomas'
  
  // TODO: Créer un utilisateur avec l'id 'U001' et le nom 'Alice Johnson'
  
  // TODO: Afficher le livre
  
  // TODO: Afficher si le livre est disponible en utilisant le format : Available: true/false
  
  // TODO: Afficher l'utilisateur
  
  // TODO: Ajouter le livre à la liste borrowedBooks de l'utilisateur
  
  // TODO: Définir isAvailable du livre à false
  
  // TODO: Afficher à nouveau l'utilisateur pour montrer le nombre de livres mis à jour
}

Toutes les leçons de Programmation Orientée Objet

Entraînez-vous par vous-même : Compilateur Dart en ligne