میخواهید کدی بنویسید که به شما کمک کند لازانیایی از کتاب آشپزی محبوبتان بپزید.
پنج کار دارید که همه به پختن دستور پختتان مربوط میشوند.
متغیر $Lasagna::ExpectedMinutesInOven را برابر با تعداد دقیقههایی تنظیم کنید که لازانیا باید در فر بماند. بر اساس کتاب آشپزی، زمان مورد انتظار در فر ۴۰ دقیقه است:
$Lasagna::ExpectedMinutesInOven
# => 40
سابروتین Lasagna::remaining_minutes_in_oven را تغییر دهید. این سابروتین تعداد دقیقههایی را که لازانیا تا کنون در فر بوده است به عنوان آرگومان میگیرد و باید بر اساس زمان مورد انتظار در فر از کار قبلی برگرداند که لازانیا چند دقیقهی دیگر باید در فر بماند.
Lasagna::remaining_minutes_in_oven(30)
# => 10
سابروتین Lasagna::preparation_time_in_minutes را تغییر دهید. این سابروتین تعداد لایههایی را که به لازانیا اضافه کردهاید به عنوان آرگومان میگیرد و باید برگرداند که چقدر زمان صرف آمادهسازی لازانیا کردهاید، با این فرض که آمادهسازی هر لایه ۲ دقیقه طول میکشد.
Lasagna::preparation_time_in_minutes(2)
# => 4
سابروتین Lasagna::total_time_in_minutes را تغییر دهید. این سابروتین دو آرگومان میگیرد: آرگومان اول تعداد لایههایی است که به لازانیا اضافه کردهاید و آرگومان دوم تعداد دقیقههایی است که لازانیا در فر بوده است.
سابروتین باید برگرداند که در مجموع چند دقیقه روی پختن لازانیا کار کردهاید؛ این مقدار برابر است با مجموع زمان آمادهسازی و زمانی که لازانیا تا این لحظه در فر گذرانده است.
Lasagna::total_time_in_minutes(3, 20)
# => 26
سابروتین Lasagna::oven_alarm را تغییر دهید. این سابروتین هیچ آرگومانی نمیگیرد و باید پیامی برگرداند که نشان دهد لازانیا آمادهی خوردن است.
Lasagna::oven_alarm()
# => "Ding!"