Velo Games Sanal Staj Programı için yapılmış olan ilk görevdir.
Program Çerçevesi
- Bir kitaptan elimizde belirli bir sayıda var. CopyCount.
- Bir kitabı ödünç verdiğimizde kitabın geri getirilmesi gereken tarihi not edilir. Bu tarihlerin sayısı ödünç verilen kitap sayısına eşittir. DueDates.Count.
- Boşta olan kopya sayısı AvailableCount() isimli fonksiyonla CopyCount - DueDates.Count olarak hesaplanır.
- Ödünç al aksiyonunda AvailableCount() > 0 koşulu kontrol edilir. Koşul sağlanırsa geri getirilmesi gereken tarihlere yeni bir tarih eklenir sağlanmazsa hata verilir.
- İade et aksiyonunda DueDates.Count > 0 koşulu kontrol edilir. Koşul sağlanırsa geri getirilmesi gereken tarihler arasından en yakın tarih listeden çıkartılır sağlanmazsa hata verilir.
Not: ISBN numarası bir kitabın ismi değişerek yeniden basılacaksa ya da yayımcı firma değişecekse değişir. Bizim projemizde ismi farklı olan kitapları farklı kitaplar gibi düşüneceğimizden ve yayımcı firma bilgisini verilerimiz arasında bulundurmadığımızdan ISBN numarasını eşsiz(unique) kabul ediyoruz.
Not: Yaptığımız sistem çerçevesinde kitap iade işlemlerinde kullanıcı ve kitap eşleşmesi yapmadığımız için iade işleminde getirilmesi gereken tarihiak en yakın olanı baz alarak listeden siliyoruz.