استعارة الكتب
جزء من قسم البرمجة كائنية التوجه في رحلة Kotlin على Coddy. الدرس 51 من 57.
التحدي
سهلأضف الأمر BORROW. يوجد كودك من الخطوة السابقة بالفعل في Library.kt؛ أبقِ كل أمر يعمل تمامًا كما كان من قبل.
BORROW <name> <id>: تحقّق بهذا الترتيب وأجب بالمشكلة الأولى:no member bo،no book 9،Dune is not available،ada has reached the limit(يمكن للأعضاء استعارة كتابين كحد أقصى). وإلا فسجّل الإعارة على كلٍّ من الكتاب والعضو، وأجبada borrowed Dune.
يمرّر الكود المزوّد كل سطر إدخال إلى library.handle(line) ويطبع كل رد مُعاد في سطر مستقل. أسماء الأعضاء كلمات مفردة بأحرف لاتينية صغيرة، ومعرّفات الكتب أعداد صحيحة، والإدخال لا يحتوي إلا على الأوامر الموضّحة حتى الآن. أي أمر آخر يُرجع unknown command.
ضع كودك في Book.kt وMember.kt وLibrary.kt. يحتوي Main.kt على كود الإدخال/الإخراج المزوّد، ولا يمكن تعديله.
جرّب بنفسك
fun main() {
// كود الإدخال/الإخراج المُزوَّد: أبقِه كما هو
val input = generateSequence(::readLine).toList()
val library = Library()
for (line in input) {
for (reply in library.handle(line)) println(reply)
}
}
جميع دروس البرمجة كائنية التوجه
1الفئات والكائنات
العمل مع الملفاتتعريف الفئاتالمنشئات الأساسيةكتل init والتحقق من الصحةالمنشئات الثانويةمراجعة - بطاقة المكتبة4الوراثة
الأصناف المفتوحة والأصناف الفرعيةتجاوز الأعضاءsuper والمنشئاتالأصناف المجرّدةمراجعة - دليل الموظفينتدرّب بنفسك: Playground لـ Kotlin