ATATÜRK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BMS 301- JAVA PROGRAMLAMA 2014-2015 GÜZ DÖNEMİ ÖDEV-2 (Son Teslim Tarihi: 24.12.2014’e kadar) Teslim: Arş. Gör. Uğur Güven ADAR. ÖNBİLGİ Ödevde kullanacağınız metot ve sınıflar, dersinizde görmüş olduğunuz, Kalıtım, Sınıflar ve Arayüzler mantığı esas alınacaktır. Ders dışı veya bu konuların kullanılmadığı ödevler geçersiz sayılacaktır. Bu sebeple, aşağıdaki bilgilendirmede yazan yerler yanında kullandığınız yöntemlerin belirtilen yöntemleri de içerdiğine dikkat ediniz. ÖNBİLGİ Erzurum'da bulunan ERZURUM AVM bünyesinde bulundurduğu farklı bilişim firmalarında bulunan ürünleri kullanıcının ürün adına göre sorgulayabildiği ve sisteme ürünlerin eklenebildiği bir platform sağlamaktadır. Böylece kullanıcılar sadece ErzurumAvm sistemini ziyaret ederek tüm bilişim firmalarındaki ürünleri tek noktadan sorgulama ve karşılaştırmalı fiyat bilgisi alma imkânına kavuşmaktadır. ErzurumAvm sistemi, bilişim firmalarından ürün sorgulama ve sisteme ürün ekleme işlemleri için ErzurumBilisim adında standart bir arayüz belirlemiştir. Firmalar bu arayüzü gerçekleştiren sınıfları yazmakta, gerekli kaynak kodları kendileri geliştirmektedir. Böyle bir sistem düşünülerek A,B ve C adında 3 bilişim firmasına ait sınıflar yazılacaktır. Bahsedilen üç bilişim firması sınıfı Firma sınıfından türeyecektir. Bunun yanında bir Urun sınıfına sahip olacak ve bu tüm sisteme eklenmiş olacaktır. A,B ve C sınıfları Urun sınıfından türeyecek parametrelere sahip olmak zorundadır. Bütün firmalar için ortak ürün özellikleri şunlardır; UrunKodu , UrunAdi ve UrunFiyati. 1) B firmasının hazırlayacağı sınıfı aşağıdaki kısıtları dikkate alarak yazınız ErzurumBilisim arayüzündeki metodları gerçekleştirmeli. UrunKodu,UrunAdı ve UrunFiyatı alanlarına ilk değerlerinin atandığı 3 tane aşırı yüklenmiş kurucu metodu olmalı. UrunKodu alanına kurucu metodlarla değer atama haricinde programın işleyişi esnasında değer atanmasına izin verilmemeli. Hazırlanacak Bbilisim sınıfı hiçbir sınıf tarafından miras alınamamalı. 2) Sadece ABilisim sınıfında bulunan firmaInfo() adındaki bir metod A firmasına ait FirmaAdi, FKurulusYili, FFaliyetAlanı bilgilerini ekrana yazdırmaktadır. firmaInfo() metodunun yer aldığı ABilisim sınıfını ve bu firmaInfo() metodunun override edildiği Test adında bir sınıfı yazınız. Bu sınıfı yazabilir ya da main içerisinde test edebilirsiniz.(ABilisim sınıfı ErzurumBilisim arayüzünü uygulamaktadır.) 3) Aynı uygulama paketi altında bulunan Main isimli bir sınıfta bulunan PolyFirma() isimli static bir metod sadece ABilisim tipinde nesneleri parametre olarak almaktadır. Bu metodu kullanarak C firmasına ait firma bilgilerinin ekrana yazdırıldığı Main sınıfını yazınız.(CBilisim sınıfı Abilisim sınıfından türemiştir. Firma bilgilerini listeletmek için firmaInfo() metodu çağrılacaktır.) 4) FIRMA sınıfı içerisinde kampanya() metodu bulundurmaktadır. kampanya() metodu içerisinde kampanya ekle ve sil ve düzenle işlemleri bulunmalıdır. Bu metot ile türetilen her sınıf (A,B ve C sınıfları) içerisinde bulunan ürünlerin kampanya özelliklerini ErzurumBilisim arayüzünde gösterebilmektedir. 5) Oluşturulacak Musteri sınıfı ile müşterinin aldığı ürünleri, adını, soyadını, adresini ve fatura bilgilerini tutabilmektedir. 6) Fatura sınıfı ise müşteriye ait fatura bilgilerini ve A,B ve C firmalarına ait faturaları tutabilmektedir. 7) ErzurumAvm sistemine giren bir kullanıcının ürün adına göre arama yapabilmesini ve sisteme ürün ekleme işlemini gerçekleştirebilmesi için(Sadece Yönetici ürün ekleme yapabilir); ErzurumBilisim arayüzünü, bu arayüzü uygulayan C firmasına ait CBilisim adında bir sınıfı ve bu sınıfı kullanacağınız örnek bir main metodu yazınız?(Ürün arama için URUNARA() ,ürün ekleme için UEKLE() metodları yazılacaktır. Sisteme maksimum 50 ürün eklenebilecektir.) ÖDEVİN YAPISI Müşteri Fatura A Firma B Ürünler C ÖDEV TESLİMİ 1-Ödevinizi hazırlarken bir klasör içinde çalışınız. 2-Klasörü ad_soyad_numara şeklinde hazırlayınız ve dosyanın açıldığından emin olunuz. [email protected] adresine gönderiniz. Zamanında ulaşmayan, içeriği boş olan projelerinizle ilgili sorumluluk size aittir. 3-Ödevinizin çıktısına gerek yoktur. Fakat ödev tesliminde bir şeffaf dosya içinde bir kapak, içerisinde ödevinizin bulunduğu CD olmalıdır. 4-CD teslimi ve mail olarak göndereceğiniz tarih ödevi göndereceğiniz son tarih olmalıdır. Maili önce gönderip, CD teslimini ödev teslim tarihinden sonra vermeniz ödevden puan alamamanıza sebep olacaktır. DİKKAT EDİLECEK HUSUSLAR Teslim edeceğiniz ödevin sadece kendi emeğinizin ürünü olması gerektiğini, aksine hareket edenleri ciddi yaptırımlar beklediğini unutmayınız. Ödevin herhangi bir kısım ya da tamamında benzerlik olması durumunda paylaşımda bulunan bütün öğrencilere kopya muamelesi yapılacaktır. Teslim edeceğiniz ödev bir kapağa sahip olmalıdır. Bu kapak üzerine adınız, soyadınız, öğrenci numaranız ve ödev numarası yazılı olmalıdır. Yazdığınız kodları kendiniz yazmalısınız. Hazır şablon/bileşen kullanımı, internetten kopyalanmış veriler yasaktır. İnternette konu ile ilgili bulabileceğiniz kodlar hali hazırda araştırılmıştır. Bu kodların düzenlenerek sunulması durumunda, gerekli yaptırımlar uygulanacaktır. Zamanında teslim edilmeyen ödevlerden puan alamazsınız.
© Copyright 2024 Paperzz