Menu
CoddyTech

Przegląd projektu

Część sekcji Programowanie obiektowe ścieżki GDScript w Coddy. Lekcja 56 z 65.

challenge icon

Wyzwanie

Średni

W tym projekcie zbudujesz system zarządzania biblioteką w sześciu krokach: bibliotekę, książki i użytkowników, wypożyczanie, wyszukiwanie, statystyki i zwroty. Każdy krok rozpoczyna się od plików z poprzedniego kroku.

W tym kroku utworzysz klasę Library w pliku library.gd. Kod początkowy deklaruje już jej trzy właściwości:

  • library_name: nazwa biblioteki
  • books i users: dwie tablice Array[String], które początkowo są puste. Na razie przechowują tytuły i nazwy użytkowników.

Uzupełnij dwie metody:

  1. Konstruktor _init(library_name) zapisuje nazwę we właściwości library_name.
  2. _to_string() zwraca NAME Library (books: N, users: M), gdzie N i M to rozmiary obu tablic.

Dostarczony kod odczytuje nazwę biblioteki z pierwszego wiersza, a następnie po jednym poleceniu w każdym wierszu: book TITLE i user NAME dodają elementy do tablic, info wyświetla trzy właściwości, a show wyświetla bibliotekę. Dla tego wejścia:

Community
info
book Dune
user Ada
show

wyjście wygląda tak:

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

Twój kod umieść w pliku library.gd. Plik main.gd zawiera dostarczony kod wejścia/wyjścia i nie można go edytować.

Spróbuj swoich sił

extends Node

func _ready():
	# Dostarczony kod wejścia/wyjścia: pozostaw go bez zmian
	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()

Wszystkie lekcje w sekcji Programowanie obiektowe

Poćwicz samodzielnie: Kompilator GDScript online