本の貸し出し
CoddyのRubyジャーニー「オブジェクト指向プログラミング」セクションの一部。レッスン 51/57。
チャレンジ
簡単BORROWコマンドを追加してください。前のステップまでのすべてのコマンドが、これまでどおり正確に動作するようにしてください。
BORROW name id:次の順番で確認し、最初に見つかった問題への返答を行います:no member bo、no book 9、Dune is not available、ada has reached the limit(メンバーが保持できる本は最大でLIMIT、つまり2冊です)。問題がなければ、本とメンバーの両方に貸し出しを記録し、ada borrowed Duneと返答します。
提供されたコードは、すべての入力行をlibrary.handle(line)に渡し、返された各返答をそれぞれ1行ずつ出力します。メンバー名は小文字のみの1語で、書籍IDは整数です。入力には、これまでに説明したコマンドだけが含まれます。それ以外のコマンドにはunknown commandと返答します。
コードはbook.rb、member.rb、library.rbに記述します。main.rbには提供された入出力コードが含まれており、編集できません。
自分で試してみよう
require_relative 'book'
require_relative 'member'
require_relative 'library'
# 提供された入出力コード: そのままにしておく
input = []
while (line = gets)
input << line.chomp
end
library = Library.new
input.each do |line|
library.handle(line).each { |reply| puts reply }
end
オブジェクト指向プログラミングのすべてのレッスン
自分で練習してみよう: Rubyオンラインコンパイラ