| Ders Adı | Kodu | Yerel Kredi | AKTS | Ders (saat/hafta) | Uygulama (saat/hafta) | Laboratuar (saat/hafta) |
|---|---|---|---|---|---|---|
| Tasarım Kalıpları ve Refactoring | BLM5222 | 3 | 7.5 | 3 | 0 | 0 |
| Önkoşullar | Yok |
|---|
| Yarıyıl | Güz, Bahar |
|---|
| Dersin Dili | İngilizce, Türkçe |
|---|---|
| Dersin Seviyesi | Yüksek Lisans |
| Dersin Türü | Seçmeli @ Bilgisayar Mühendisliği ABD Bilgi Teknolojileri Yüksek Lisans Programı (Tezsiz, 2. Öğretim) Seçmeli @ Bilgisayar Mühendisliği ABD Bilgi Teknolojileri Yüksek Lisans Programı (Tezsiz, 2. Öğretim, İngilizce) |
| Ders Kategorisi | Uzmanlık/Alan Dersleri |
| Dersin Veriliş Şekli | Yüz yüze |
| Dersi Sunan Akademik Birim | Bilgisayar Mühendisliği Bölümü |
|---|---|
| Dersin Koordinatörü | Y.Emre Selçuk |
| Dersi Veren(ler) | Banu Diri |
| Asistan(lar)ı |
| Dersin Amacı | Dersin amacı, nesneye yönelik modelleme ve tasarımda yaygın olarak karşılaşılan sorunların çözümüne yönelik tasarım kalıplarını ve refactoring eylemlerini öğretmektir. |
|---|---|
| Dersin İçeriği | NYP temel ilkelerinin ve UML şemalarının hatırlatılması, Dörtlü çete tasarım kalıpları, Seçme kod kusurları ve Refactoring eylemleri |
| Ders Kitabı / Malzemesi / Önerilen Kaynaklar |
|
| Opsiyonel Program Bileşenleri | Yok |
Ders Öğrenim Çıktıları
- Öğrenciler literatürdeki temel tasarım kalıplarını kullanarak yazılım gerçekleştirebilme yeteneği kazanır.
- Öğrenciler en sık ortaya çıkan kodlama kusurlarını tanıma ve düzeltme yeteneği kazanır.
- Öğrenciler nesne yönelimli analiz, tasarım ve kodlama etkinliklerini daha yetkin düzeyde yürütebilme yeteneği kazanır.
- Öğrenciler yazılım bakım etkinliklerinde adım adım iyileştirme yöntemini kullanma yeteneği kazanır.
- Öğrenciler bir yazılımın dışarıya verdiği servisleri değiştirmeden o yazılımı iyileştirebilme yeteneği kazanır.
Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları
| Hafta | Konular | Ön Hazırlık |
|---|---|---|
| 1 | NYP temel ilkelerinin ve UML şemalarının hatırlatılması | Yok |
| 2 | Kod Kusurları (Duplicate code, Long method, Large Class) ve Yeniden Düzenleme Eylemleri | İlgili yeniden düzenleme eylemlerinin ön incelemesi |
| 3 | Kod Kusurları (Divergent Change, Shotgun Surgery, Primitive Obsession) ve Yeniden Düzenleme Eylemleri | İlgili yeniden düzenleme eylemlerinin ön incelemesi |
| 4 | Dörtlü Çete tasarım kalıpları ve uygulamaları | MVC, Abstract Factory, Factory Method kalıplarının incelenmesi |
| 5 | Dörtlü Çete tasarım kalıpları ve uygulamaları | Prototype, Bridge, Proxy kalıplarının incelenmesi |
| 6 | 1. ara sınav | 1-3 haftaların tekrarı |
| 7 | Dörtlü Çete tasarım kalıpları ve uygulamaları | Memento, Builder, Iterator kalıplarının incelenmesi |
| 8 | Dörtlü Çete tasarım kalıpları ve uygulamaları | Strategy, Template Method, Visitor kalıplarının incelenmesi |
| 9 | Dörtlü Çete tasarım kalıpları ve uygulamaları | Chain of Responsibility, Command, Façade kalıplarının incelenmesi |
| 10 | Dörtlü Çete tasarım kalıpları ve uygulamaları | Mediator, Observer, Flyweight kalıplarının incelenmesi |
| 11 | Dörtlü Çete tasarım kalıpları ve uygulamaları | State, Singleton, Composite kalıplarının incelenmesi |
| 12 | Dörtlü Çete tasarım kalıpları ve uygulamaları | Decorator, Adapter kalıplarının incelenmesi |
| 13 | 2. Ara Sınav | 4-12 haftaların tekrarı |
| 14 | Telafi Sınavları ve Konu Tekrarı | 1-12 haftaların tekrarı |
| 15 | Dönem Projesi Sunumu | Yapılacak sunumun gözden geçirilmesi |
| 16 | Final sınavı | 1-12 haftaların tekrarı |
Değerlendirme Sistemi
| Etkinlikler | Sayı | Katkı Payı |
|---|---|---|
| Devam/Katılım | ||
| Laboratuar | ||
| Uygulama | ||
| Arazi Çalışması | ||
| Derse Özgü Staj | ||
| Küçük Sınavlar/Stüdyo Kritiği | ||
| Ödev | ||
| Sunum/Jüri | ||
| Projeler | 1 | 20 |
| Seminer/Workshop | ||
| Ara Sınavlar | 2 | 40 |
| Final | 1 | 40 |
| Dönem İçi Çalışmaların Başarı Notuna Katkısı | ||
| Final Sınavının Başarı Notuna Katkısı | ||
| TOPLAM | 100 | |
AKTS İşyükü Tablosu
| Etkinlikler | Sayı | Süresi (Saat) | Toplam İşyükü |
|---|---|---|---|
| Ders Saati | 45 | 3 | |
| Laboratuar | |||
| Uygulama | |||
| Arazi Çalışması | |||
| Sınıf Dışı Ders Çalışması | 16 | 4 | |
| Derse Özgü Staj | |||
| Ödev | |||
| Küçük Sınavlar/Stüdyo Kritiği | |||
| Projeler | 1 | 10 | |
| Sunum / Seminer | |||
| Ara Sınavlar (Sınav Süresi + Sınav Hazırlık Süresi) | 2 | 7 | |
| Final (Sınav Süresi + Sınav Hazırlık Süresi) | 1 | 6 | |
| Toplam İşyükü : | |||
| Toplam İşyükü / 30(s) : | |||
| AKTS Kredisi : | |||
| Diğer Notlar | Yok |
|---|