Yazılım Tasarım Kalıpları – Software Design Patterns 2022
Bu dersin amacı, öğrencilere etkin, kaliteli, bakımı ve geliştirmesi kolay kompleks yazılımların mimari tasarımlarında, tasarım kalıplarının kullanımını öğretmektir. Tasarım kalıplarının belirli bir bağlamda karşımıza çıkan yazılım problemini en iyi çözümü için uzun yıllar boyunca edinilmiş tecrübelerle oluşturulmuş kalıplardır. Ders, yazılım mimarisinde tasarım kalıplarının kullanılmasının ardında yatan temelleri ve avantajları irdeler. Nesneye dayalı tasarım prensiplerinin tekrar edilmesi ve UML diyagramları dersin içerikleri arasındadır. C++/Python veya Javascript dilinde yapılması istenen programlama ödevleri ve proje öğrenciye tasarım şablonlarının kullanımında deneyim kazandıracaktır.
Tüm ders notları, ödev takibi ve proje gönderimi için
http://edestek2.kocaeli.edu.tr/course/view.php?id=48
adresi kullanılacaktır.
DEĞERLENDİRME ÖLÇÜTLERİ | ||
Yarıyıl İçi Çalışmaları | Sayısı | Katkı Payı |
Proje/Sunum | 1 | 60 |
Ara Sınav | 1 | 40 |
Toplam | 100 | |
Yıl İçinin Başarıya Oranı | 60 | |
Dönem Sonu Sınavının Başarıya Oranı | 40 | |
Toplam | 100 |
Ders İzlencesi
Hafta | Konular |
1 | Tasarım kalıplarına giriş |
2 | UML’e Giriş |
3 | UML gösterimleri ; Kullanım-durum diyagramları, sınıf diyagramları, İlişkiler |
4 | “Singleton”, “Factory” ve “Abstract Factory” Kalıbı (Oluşturucu) |
5 | Object Pool ve Builder Kalıbı (Oluşturucu) |
6 | “Iterator” Kalıbı (Davranışsal) |
7 | “Observer/Publish-Subscribe” Kalıbı (Davranışsal) |
8 | Vize |
9 | “Mediator”, “Chain of Responsibility” ve “Command” Kalıbı (Davranışsal) |
10 | “Visitor”, “State” Kalıbı (Davranışsal) |
11 | “Decorator”, “Adapter” ve “Facade” Kalıbı (Yapısal) |
12 | “Composite” Kalıbı (Yapısal) |
13 | “Dependency Injection” Kalıbı |
14 | MVC Kalıbı |
15 | Repository Kalıbı Repository Pattern |
16 | Final |