Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تقرير المكتبة

جزء من قسم البرمجة كائنية التوجه في رحلة Ruby على Coddy. الدرس 54 من 57.

challenge icon

التحدي

متوسط

أضف الأمر REPORT. أبقِ كل أمر من الخطوات السابقة يعمل تمامًا كما كان من قبل.

  • REPORT: أرجِع books: 3, borrowed: 1، ثم سطرًا واحدًا لكل عضو بالترتيب الأبجدي: ada: Dune, Emma مع العناوين بترتيب الاستعارة، أو bo: none.

يمرّر الكود المزوَّد كل سطر إدخال إلى library.handle(line) ويطبع كل رد مُعاد في سطر مستقل. أسماء الأعضاء كلمات مفردة بأحرف صغيرة، ومعرّفات الكتب أعداد صحيحة، والإدخال يحتوي فقط على الأوامر الموضحة حتى الآن. أي أمر آخر يُرجع 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 عبر الإنترنت