CENG 557
İleri Yazılım Tasarım Şablonları
Bu ders ileri yazılım tasarım şablonları üzerine odaklanmıştır. Dersin ana konularını; ileri nesneye dayalı programlama presipleri, nesneye dayalı tasarım şablonları, kurumsal uygulama mimarisi şablonları, kurumsal uygulama bütünleştirme şablonları ve alana dayalı tasarım şablonları oluşturmaktadır. Bu derste öğrenciler tasarım şablonları kullanarak modern yazılım geliştirme kavramlarını öğrenecek ve bu kavramları kullanarak orta büyüklükteki bir yazılımı takım olarak geliştirecektir.
Dersin Amacı
Öğrencileri modern yazılım geliştirmede kullanılan güncel yazılım tasarım şablonları konusunda ileriye götürmek
Kaynakça
Design Patterns: Elements of Reusable Object-Oriented Software, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Addison-Wesley, 1995. ,Patterns of Enterprise Application Architecture, Martin Fowler, Addison-Wesley, 2003. ,Enterprise Integration Patterns, Gregor Hohpe, Bobby Wolf, Addison-Wesley, 2011. ,Patterns, Principles, and Practices of Domain-Driven Design, Scott Millett, Nick Tune, John Wiley & Sons, 2015.
Öğrenme Çıktıları
1. Yazılım tasarım prensiplerini ve şablonlarını belirleyebilme ve açıklayabilme
2. Tasarım prensiplerini ve şablonlarını takım olarak yazılım geliştirmede uygulayabilme
3. Tasarım şablonlarının talep edilen yazılım özellikleri ile ilgisini detaylı bir şekilde değerlendirebilme ve raporlayabilme
4. Tasarım prensipleri ve tasarım şablonlarının; programlama dili tasarımı, uygulama çerçeveleri veya uygulama alanları ile ilişkisini analiz edebilme ve raporlayabilme
| Hafta | Konu |
| 1 | Nesneye Dayalı Analiz ve Tasarıma Giriş |
| 2 | Abstrakt Sınıflar ve Arayüzler ile Kalıtım ve Polimorfizm |
| 3 | Nesneye Dayalı Programlama Prensipleri |
| 4 | Mimari Tasarım Şablonu – Model Görünüm Yönetici |
| 5 | Gözlemci Tasarım Şablonu |
| 6 | Üretim Tasarım Şablonları |
| 7 | Yapısal Tasarım Şablonları |
| 8 | Davranışsal Tasarım Şablonları |
| 9 | Kurumsal Uygulama Mimarisi Şablonlarına Giriş |
| 10 | Nesne-İlişki Tasarım Şablonları |
| 11 | Kurumsal Uygulama Bütünleştirme Şablonlarına Giriş |
| 12 | Mesajlaşma Tasarım Şablonları |
| 13 | Alana Dayalı Tasarıma Giriş |
| 14 | Mikroservis Tasarım Şablonları |
Notlandırma
Ödev 20%
Araştırma Sunumu 40%
Final 40%
- CENG 501
- CENG 502
- CENG 503
- CENG 504
- CENG 505
- CENG 506
- CENG 507
- CENG 508
- CENG 509
- CENG 511
- CENG 512
- CENG 513
- CENG 514
- CENG 515
- CENG 516
- CENG 517
- CENG 518
- CENG 521
- CENG 522
- CENG 523
- CENG 524
- CENG 525
- CENG 531
- CENG 532
- CENG 533
- CENG 534
- CENG 541
- CENG 542
- CENG 543
- CENG 544
- CENG 551
- CENG 552
- CENG 555
- CENG 556
- CENG 561
- CENG 562
- CENG 563
- CENG 564
- CENG 565
- CENG 566
- CENG 600
- CENG 608
- CENG 611
- CENG 612
- CENG 613
- CENG 631
- CENG 632
- CENG 641
- CENG 642
- CENG 643
- CENG 651
- CENG 661
- CENG 662
- CENG 663
- CENG 690
