Design Patterns Take-Home Midterm, 15 April 2013 17.00pm Her bir soru için uygun olan Tasarım Şablonlarını Niye kullandığınızı belirtini uygun UML çizimlerini ve bu çizimleri karşılayan Client kod ve Sınıf kodlarını yazılı olarak rapor halinde teslim ediniz. Teslim anına kadar hiçbir şekilde sorularınıza yanıt verilmeyecektir. Q1) (40 puan) Bir Web servis sağlayıcı firması müşterilerine Web Alan Adı hizmetiyle birlikte Video İzletme, Veri Tabanı İşletme ve Versiyon Kontrolü hizmetlerini de ek olarak sunmakta. Aylık olarak müşterilerinden de fatura karşılığında ücret almakta. Örnek bir faturada aylık Web Alan Hizmeti ve eğer var ise diğer hizmetlere ilişkin tutarlar da yer almakta. Bu duruma uygun şekilde tasarlayınız ve kodlayınız. Q2) (30 puan) Bir projede Log tutmak için bir sınıf bulunmakta. Bu Log tutma sınıfında tüm projede tek bir tane obje aktif olarak yer almakta ve dinamik olarak metin-tabanlı log bilgilerine zaman etiketi (timestamp), kullanıcı adı (user name), büyük-harf uyarılar, veya bunlardan birden fazlasının kombinasyonu eklenebilmekte. Bu duruma uygun şekilde tasarlayınız ve kodlayınız. Q3) (30 puan) Farklı fotoğraf türlerini (JPG, GIF, BMP, PNG) dosyadan okuyan ve thumbnail (küçük resim) oluşturan bir proje yapmak istiyorsunuz. Dosyalardan okuyan ve küçük resme çeviren sınıflarınız olabileceği gibi ayrıca yakın gelecekte başka kaynaklardan (video gibi, AVI veya MPG formatında) thumbnail oluşturma olasılığınız var. Muhtemelen başka fotoğraf türleri de yakın gelecekte sisteme eklenecektir. Bu duruma uygun şekilde tasarlayınız ve kodlayınız.