Informe de la biblioteca
Parte de la sección Programación orientada a objetos del Journey de Ruby de Coddy. Lección 54 de 57.
Desafío
IntermedioAñade el comando REPORT. Mantén todos los comandos de los pasos anteriores funcionando exactamente como antes.
REPORT: respondebooks: 3, borrowed: 1, después una línea por miembro en orden alfabético:ada: Dune, Emma, con los títulos en el orden de préstamo, obo: none.
El código proporcionado pasa cada línea de entrada a library.handle(line) e imprime cada respuesta devuelta en su propia línea. Los nombres de los miembros son palabras individuales en minúsculas, los identificadores de los libros son números enteros y la entrada contiene únicamente los comandos descritos hasta ahora. Cualquier otro comando responde unknown command.
Tu código debe estar en book.rb, member.rb y library.rb. main.rb contiene el código proporcionado de entrada/salida y no se puede editar.
Pruébalo tú mismo
require_relative 'book'
require_relative 'member'
require_relative 'library'
# Código de entrada/salida suministrado: déjalo tal como está
input = []
while (line = gets)
input << line.chomp
end
library = Library.new
input.each do |line|
library.handle(line).each { |reply| puts reply }
end
Todas las lecciones de Programación orientada a objetos
1Clases y objetos
Trabajar con archivosDefinir clasesVariables de instanciaMétodos y selfto_s e inspectRepaso: tarjeta de biblioteca4Encapsulación
Métodos privadosMétodos protegidosAsignadores privadosProtección del estadoRepaso: máquina expendedora7Polimorfismo y tipado pato
PolimorfismoTipado patoMétodos abstractoscase y clasesRepaso: métodos de pago2Accesores y self
Lectores y escritoresSetters personalizadosself en los métodosIdentidad e igualdadRepaso: lista de contactos5Herencia
SubclasesSobrescritura de métodosLlamar a superis_a? y ancestrosRepaso - Nómina del personal8Métodos especiales
Igualdad y hashMétodos de operadoresIndexación y adiciónColecciones personalizadasRepaso: fracciones11Proyecto: Gestión de biblioteca
Libros y miembrosPréstamo de librosPractica por tu cuenta: Compilador de Ruby online