Menu
CoddyTech

Présentation du projet

Fait partie de la section Programmation orientée objet du Journey GDScript de Coddy. Leçon 56 sur 65.

challenge icon

Défi

Moyen

Dans ce projet, tu construis un système de gestion de bibliothèque en six étapes : une bibliothèque, des livres et des utilisateurs, les emprunts, la recherche, les statistiques et les retours. Chaque étape commence à partir de tes fichiers de l’étape précédente.

Cette étape crée la classe Library dans library.gd. Le code de départ déclare déjà ses trois propriétés :

  • library_name : le nom de la bibliothèque
  • books et users : deux Array[String] initialement vides. Pour le moment, elles contiennent des titres et des noms d’utilisateurs.

Complète les deux méthodes :

  1. Le constructeur _init(library_name) stocke le nom dans la propriété library_name.
  2. _to_string() renvoie NAME Library (books: N, users: M), où N et M sont les tailles des deux tableaux.

Le code fourni lit le nom de la bibliothèque sur la première ligne, puis une commande par ligne : book TITLE et user NAME ajoutent des éléments aux tableaux, info affiche les trois propriétés et show affiche la bibliothèque. Pour cette entrée :

Community
info
book Dune
user Ada
show

la sortie est :

Name: Community
Books: 0
Users: 0
Community Library (books: 1, users: 1)

Ton code va dans library.gd. main.gd contient le code fourni pour les entrées/sorties et ne peut pas être modifié.

Essayez vous-même

extends Node

func _ready():
	# Code d'entrée/sortie fourni : conservez-le tel quel
	var library := Library.new(OS.read_string_from_stdin())
	var line := OS.read_string_from_stdin()
	while line != "":
		var parts := line.split(" ", true, 1)
		match parts[0]:
			"book":
				library.books.append(parts[1])
			"user":
				library.users.append(parts[1])
			"info":
				print("Name: ", library.library_name)
				print("Books: ", library.books.size())
				print("Users: ", library.users.size())
			"show":
				print(library)
		line = OS.read_string_from_stdin()

Toutes les leçons de Programmation orientée objet

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