Katalog durchsuchen
Teil des Abschnitts Objektorientierte Programmierung der R-Journey von Coddy. Lektion 53 von 57.
Aufgabe
EinfachFüge den Befehl SEARCH über die Methode search_titles(text) hinzu. Sorge dafür, dass alle Befehle aus den vorherigen Schritten weiterhin genau wie zuvor funktionieren.
SEARCH <text>: Der Text darf Leerzeichen enthalten. Antworte für jedes Buch, dessen Titel den Text enthält, ohne Beachtung der Groß- und Kleinschreibung, in der Reihenfolge der Buch-ID mit einer Zeile:Dune (available)oderEmma (borrowed by ada). Wenn es keine Übereinstimmung gibt, antworte mitno matches.
Der bereitgestellte Code sendet jede Eingabezeile an lib$handle(line) und gibt jede zurückgegebene Antwort in einer eigenen Zeile aus. Mitgliedsnamen sind einzelne kleingeschriebene Wörter, Buch-IDs sind ganze Zahlen, und die Eingabe enthält nur die bisher beschriebenen Befehle. Bei jedem anderen Befehl wird unknown command zurückgegeben.
Dein Code gehört in Book.R, Member.R und Library.R. main.R enthält den bereitgestellten Eingabe-/Ausgabecode und kann nicht bearbeitet werden.
Probier es selbst
source("Book.R")
source("Member.R")
source("Library.R")
# Gelieferter Ein-/Ausgabe-Code: belasse ihn wie er ist
input <- suppressWarnings(readLines(file("stdin")))
lib <- Library$new()
for (line in input) {
for (reply in lib$handle(line)) cat(reply, "\n", sep = "")
}
Alle Lektionen in Objektorientierte Programmierung
1S3-Grundlagen
Arbeiten mit DateienListen mit einer KlasseKonstruktorfunktionenPrint- und Format-MethodenValidatoren und HilfsfunktionenRückblick – Temperaturen4Kapselung in R
Closures als ObjekteUmgebungen als ObjekteZugriffsfunktionenZustand schützenRückblick – Parkuhr2S3-Generics und Methoden
Generics und UseMethodStandardmethodenMethoden für Basis-GenericsGrundlagen von NextMethodWiederholung – Flächeninhalte von Formen5S4-Klassen
S4-Klassen definierenSlots und ZugriffGültigkeitsprüfungenShow-MethodenRückblick – Produktkatalog8Referenzklassen
Referenzklassen definierenMethoden und FeldänderungenKopiersemantikVererbung und callSuperZusammenfassung – Aufgabenwarteschlange11Projekt: Bibliotheksverwaltung
Bücher und MitgliederBücher ausleihenÜbe selbstständig: Online-R-Compiler