Dersin Adı |
Tasarım Şablonları ve Yeniden Kod Düzenleme
|
Kodu
|
Yarıyıl
|
Teori
(saat/hafta) |
Uygulama/Lab
(saat/hafta) |
Yerel Kredi
|
AKTS
|
CE 611
|
Güz/Bahar
|
3
|
0
|
3
|
7.5
|
Ön-Koşul(lar) |
Yok
|
|||||
Dersin Dili |
İngilizce
|
|||||
Dersin Türü |
Seçmeli
|
|||||
Dersin Düzeyi |
Doktora
|
|||||
Dersin Veriliş Şekli | - | |||||
Dersin Öğretim Yöntem ve Teknikleri | - | |||||
Ulusal Meslek Sınıflandırma Kodu | - | |||||
Dersin Koordinatörü | - | |||||
Öğretim Eleman(lar)ı | ||||||
Yardımcı(ları) | - |
Dersin Amacı | Bu ders, tasarım şablonları ve yeniden kod düzenlenmesi üzerine derinlemesine çalışmayı amaçlar. Tasarım şablonları yazılım uzmanlarının daha önceden üzerinde çalışılmış ve kabul edilmiş çözümleri yeniden üretmesinin önüne geçmeye çalışırken, kodların yeniden düzenlenmesi ise özensiz geliştirilmiş yazılımların, harici davranışı değiştirmeden iyileştirilmesi, düzeltilmesi ve hatalardan arındırılmasını amaçlar. Tasarım Şablonları kod yazılmadan tasarımı iyileştirmek, yeniden düzenleme is kod yazıldıktan sonra tasarımı iyileştirmeyi hedefler. Hem tasarım şablonları hemde yeniden kod düzenleme teknikleri karmaşık, bakılabilir ve genişleyebilen yazılım sistemleri geliştirmeye yardım eder. Her iki metodun avantajları ve dezavantajları dersde tartışılacak, öğrenciler bu teknikleri ödevler aracılığı ile uygulama fırsatı bulacaklardır. |
Öğrenme Çıktıları |
Bu dersi başarıyla tamamlayabilen öğrenciler;
|
Ders Tanımı | Bu ders karmaşık, bakılabilir ve genişleyebilen yazılım sistemlerin geliştirilmesinde kullanılan tasarım şablonları ve kod yeniden düzenleme teknikleri üzerine derinlemesine bir çalışmayı içerir. |
|
Temel Ders | |
Uzmanlık/Alan Dersleri |
X
|
|
Destek Dersleri | ||
İletişim ve Yönetim Becerileri Dersleri | ||
Aktarılabilir Beceri Dersleri |
Hafta | Konular | Ön Hazırlık | Öğrenme Çıktısı |
1 | Yazılım, Yazılım Tasarımı, UML, Tasarım Desenleri ve Yeniden Kod Düzenlemeye Giriş | Bölüm 1 Design Patterns. | |
2 | Yapısal Şablonlar 1 | ||
3 | Yapısal Şablonlar 2 | ||
4 | Yaratıcı Şablonlar 1 | ||
5 | Yaratıcı Şablonlar 2 | ||
6 | Davranışsal Şablonlar 1 | ||
7 | Davranışsal Şablonlar 2 | ||
8 | Sunum 1 - Literatürde Desenler | ||
9 | Arasınav | ||
10 | Test Yönelimli Geliştirme | ||
11 | Yeniden Kod Düzenleme 1 | ||
12 | Yeniden Kod Düzenleme 2 | ||
13 | Yeniden Kod Düzenleme 3 | ||
14 | Sunum 2 - Literatürde Yeniden Kod Düzenleme | ||
15 | Tekrar | ||
16 | Final |
Ders Kitabı | “Design patterns: Elements of Reusable Object-Oriented Software” by E. Gamma, R. Helm, R. Johnson and J. Vlissides.Addison-Wesley. 1995. ISBN-13: 978-0-201-63361, ISBN-10: 0-201-63361-2 “Refactoring, Improving the design of existing code” by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts. 1999 ISBN-13: 978-0-201-48567-7, ISBN-10: 0-201-48567-2 |
Önerilen Okumalar/Materyaller | Okutman yansıları |
Yarıyıl Aktiviteleri | Sayı | Katkı Payı % |
Katılım | ||
Laboratuvar / Uygulama | ||
Arazi Çalışması | ||
Küçük Sınav / Stüdyo Kritiği | ||
Portfolyo | ||
Ödev |
2
|
10
|
Sunum / Jüri Önünde Sunum |
2
|
10
|
Proje |
1
|
20
|
Seminer/Çalıştay | ||
Sözlü Sınav | ||
Ara Sınav |
1
|
20
|
Final Sınavı |
1
|
40
|
Toplam |
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı |
3
|
70
|
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı |
1
|
30
|
Toplam |
Yarıyıl Aktiviteleri | Sayı | Süre (Saat) | İş Yükü |
---|---|---|---|
Teorik Ders Saati (Sınav haftası dahildir: 16 x teorik ders saati) |
16
|
3
|
48
|
Laboratuvar / Uygulama Ders Saati (Sınav haftası dahildir. 16 x uygulama/lab ders saati) |
16
|
0
|
|
Sınıf Dışı Ders Çalışması |
14
|
4
|
56
|
Arazi Çalışması |
0
|
||
Küçük Sınav / Stüdyo Kritiği |
0
|
||
Portfolyo |
0
|
||
Ödev |
2
|
10
|
20
|
Sunum / Jüri Önünde Sunum |
2
|
20
|
40
|
Proje |
1
|
20
|
20
|
Seminer/Çalıştay |
0
|
||
Sözlü Sınav |
0
|
||
Ara Sınavlar |
1
|
21
|
21
|
Final Sınavı |
1
|
40
|
40
|
Toplam |
245
|
#
|
PÇ Sub | Program Yeterlilikleri / Çıktıları |
* Katkı Düzeyi
|
||||
1
|
2
|
3
|
4
|
5
|
|||
1 | Bilgisayar Mühendisliği temel kuramlarını üst düzeyde anlar ve uygular, |
-
|
-
|
-
|
-
|
X
|
|
2 | Bilgisayar Mühendisliği'nde en son gelişmeler dahil olmak üzere genişlemesine ve derinlemesine bilgi sahibidir, |
-
|
-
|
-
|
X
|
-
|
|
3 | Bilgisayar Mühendisliği'nde en yeni bilgilere ulaşır ve bunları kavrayarak araştırma yapabilmek için gerekli yöntem ve becerilerde üst düzeyde yeterliğe sahiptir, |
-
|
-
|
-
|
X
|
-
|
|
4 | Bilime veya teknolojiye yenilik getiren, yeni bir bilimsel yöntem veya teknolojik ürün/süreç geliştiren ya da bilinen bir yöntemi yeni bir alana uygulayan kapsamlı bir çalışma yapar, |
-
|
-
|
-
|
X
|
-
|
|
5 | Özgün bir araştırma sürecini bağımsız olarak algılar, tasarlar, uygulama ve sonuçlandırır; bu süreci yönetir, |
-
|
-
|
-
|
X
|
-
|
|
6 | Akademik çalışmalarının çıktılarını saygın akademik ortamlarda yayınlayarak bilim ve teknoloji literatürüne katkıda bulunur, |
-
|
-
|
-
|
X
|
-
|
|
7 | Bilimsel, teknolojik, sosyal ve kültürel gelişmeleri değerlendirir ve bilimsel tarafsızlık ve etik sorumluluk bilinciyle topluma aktarır, |
-
|
-
|
-
|
-
|
-
|
|
8 | Bilgisayar Mühendisliği'nde fikirlerin ve gelişmelerin eleştirel analizini, sentezini ve değerlendirmesini yapar, |
-
|
-
|
X
|
-
|
-
|
|
9 | Bilgisayar Mühendisliği'nde çalışanlarla ve daha geniş bilimsel ve sosyal topluluklarla yazılı ve sözlü etkin iletişim kurar, İngilizce'yi en az Avrupa Dil Portföyü C1 Genel Düzeyinde kullanarak ileri düzeyde yazılı, sözlü ve görsel iletişim kurar ve tartışır, |
-
|
-
|
X
|
-
|
-
|
|
10 | Bilgisayar Mühendisliğinin kullanıldığı sistem ve konularla ilgili strateji, politika ve planlar geliştirir ve elde edilen sonuçları yorumlar. |
-
|
-
|
-
|
-
|
-
|
*1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest
İzmir Ekonomi Üniversitesi, dünya çapında bir üniversiteye dönüşürken aynı zamanda küresel çapta yetkinliğe sahip başarılı gençler yetiştirir.
Daha Fazlası..İzmir Ekonomi Üniversitesi, nitelikli bilgi ve yetkin teknolojiler üretir.
Daha Fazlası..İzmir Ekonomi Üniversitesi, toplumsal fayda üretmeyi varlık nedeni olarak görür.
Daha Fazlası..