Menu
CoddyTech

Panoramica del progetto

Fa parte della sezione Programmazione orientata agli oggetti del percorso GDScript di Coddy. Lezione 56 di 65.

challenge icon

Sfida

Medio

In questo progetto costruisci un Sistema di gestione della biblioteca in sei passaggi: una biblioteca, libri e utenti, prestiti, ricerca, statistiche e restituzioni. Ogni passaggio parte dai file del passaggio precedente.

In questo passaggio crei la classe Library in library.gd. Il codice iniziale dichiara già le sue tre proprietà:

  • library_name: il nome della biblioteca
  • books e users: due Array[String] che iniziano vuoti. Per ora contengono titoli e nomi di utenti.

Completa i due metodi:

  1. Il costruttore _init(library_name) memorizza il nome nella proprietà library_name.
  2. _to_string() restituisce NAME Library (books: N, users: M), dove N e M sono le dimensioni dei due array.

Il codice fornito legge il nome della biblioteca dalla prima riga, poi un comando per riga: book TITLE e user NAME aggiungono elementi agli array, info stampa le tre proprietà e show stampa la biblioteca. Per questo input:

Community
info
book Dune
user Ada
show

l'output è:

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

Il tuo codice va in library.gd. main.gd contiene il codice di input/output fornito e non può essere modificato.

Provalo tu

extends Node

func _ready():
	# Codice di input/output fornito: lascialo così com'è
	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()

Tutte le lezioni di Programmazione orientata agli oggetti

Esercitati da solo: Compilatore GDScript online