ما می‌خواهیم در یک سیستم انبارداری، بر اساس دو مکانیزم ورود و خروج، کالاهای داخل انبار را بر اساس زمان ورود کالا به انبار مدیریت کنیم. در این انبار شما چندین قفسه و دربرگیرنده کالا InventoryWrapper دارید که کالا‌ها Product را در آن قرار می‌دهید Add.

ما هر قفسه را بصورت یک آرایه قابل پیمایش دیده‌ایم که رابط IEnumerable را پیاده‌سازی کرده و کالا‌ها را در خود جای داده است. برای پیمایش کالاهای داخل قفسه هم دو رویکرد پیمایش LIFO و FIFO را مد نظر قرار داده ایم. شما ابتدا باید ساختار کلاس دربرگیرنده کالاها را تکمیل کنید، و بعد از آن رویکردهای پیمایش Enumerator را برای استراتژی‌های عنوان شده پیاده‌سازی نمایید.

در انتها، قفسه شما باید بتواند اطلاعات داخل خود را به صورت یک فایل XML ذخیره نموده و در صورت لزوم بازیابی نماید.

راهنمایی

  • در استراتژی FIFO، محصولاتی که زودتر از بقیه وارد قفسه شده‌اند، ابتدا پیمایش می‌شوند.
  • در استراتژی LIFO، محصولاتی که دیرتر از بقیه وارد قفسه شده‌اند، ابتدا پیمایش می‌شوند.

نکات

  • برای دانلود فایل پروژه بر روی این لینک کلیک کنید
  • ساختار تعریف شده نیاز به اضافه کردن هیچ کلاس یا نوع جدیدی ندارد. شما می‌توانید خود یک نمونه پیاده در کلاس program.cs داشته باشید، اما تست‌کیس‌های نوشته شده با عملکرد کلاس‌ها و توابع شما کدها را می‌سنجند.

ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.