İzmir Ekonomi Üniversitesi
  • ENGLISH

  • LİSANSÜSTÜ EĞİTİM ENSTİTÜSÜ

    Bilgisayar Mühendisliği Yüksek Lisans Programı (Tezsiz)

    CE 611 | Ders Tanıtım Bilgileri

    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;

    • tasarım şablonlarının formu ve içeriğini tanımlayabilecekler,
    • şablonların neyi içermediğini ve yazılım tasarımlarında nasıl uygulanabildiğini belirleyebilecekler,
    • uygun tasarım şablonunu belirleyip, seçebilecekler ve yazılım çözümlerinde kullanabilecekler,
    • yeniden kod düzenlemesi ile mevcut yazılımları iyileştirerek onları daha bakılabilir ve genişleyebilir hale getirebilecekler,
    • uygun yeniden kod düzenleme tekniklerini seçerek özel problemlerin çözümünde kullanabilecekler.
    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.

     



    Dersin Kategorisi

    Temel Ders
    Uzmanlık/Alan Dersleri
    Destek Dersleri
    İletişim ve Yönetim Becerileri Dersleri
    Aktarılabilir Beceri Dersleri

     

    HAFTALIK KONULAR VE İLGİLİ ÖN HAZIRLIK ÇALIŞMALARI

    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ı

     

    DEĞERLENDİRME ÖLÇÜTLERİ

    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

    AKTS / İŞ YÜKÜ TABLOSU

    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

     

    DERSİN ÖĞRENME ÇIKTILARININ PROGRAM YETERLİLİKLERİ İLE İLİŞKİSİ

    #
    PÇ Sub Program Yeterlilikleri / Çıktıları
    * Katkı Düzeyi
    1
    2
    3
    4
    5
    1 Bilgisayar Mühendisliği alanında bilimsel araştırma yaparak bilgiye genişlemesine ve derinlemesine ulaşır, bilgiyi değerlendirir, yorumlar ve uygular.
    -
    -
    -
    -
    -
    2 Bilgisayar Mühendisliği alanında uygulanan güncel teknik ve yöntemler ile bunların kısıtları hakkında kapsamlı bilgi sahibidir.
    -
    -
    -
    -
    -
    3 Belirsiz, sınırlı ya da eksik verileri kullanarak, bilimsel yöntemlerle bilgiyi tamamlar ve uygular, değişik disiplinlere ait bilgileri bir arada kullanabilir.
    -
    -
    -
    -
    -
    4 Mesleğinin yeni ve gelişmekte olan uygulamalarının farkındadır, ihtiyaç duyduğunda bunları inceler ve öğrenir.
    -
    -
    -
    -
    -
    5 Bilgisayar Mühendisliği alanı ile ilgili problemleri tanımlar ve formüle eder, çözmek için yöntem geliştirir ve çözümlerde yenilikçi yöntemler uygular.
    -
    -
    -
    -
    -
    6 Yeni ve/veya özgün fikir ve yöntemler geliştirir, karmaşık sistem veya süreçleri tasarlar ve tasarımlarında yenilikçi/alternatif çözümler geliştirir.
    -
    -
    -
    -
    -
    7 Kuramsal, deneysel ve modelleme esaslı araştırmaları tasarlar ve uygular, bu süreçte karşılaşılan karmaşık problemleri irdeler ve çözümler.
    -
    -
    -
    -
    -
    8 Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilir, bu tür takımlarda liderlik yapabilir ve karmaşık durumlarda çözüm yaklaşımları geliştirebilir, bağımsız çalışabilir ve sorumluluk alır.
    -
    -
    -
    -
    -
    9 Bir yabancı dili en az Avrupa Dil Portföyü B2 Genel Düzeyinde kullanarak, sözlü ve yazılı iletişim kurar.
    -
    -
    -
    -
    -
    10 Çalışmalarının süreç ve sonuçlarını, o alandaki veya alan dışındaki ulusal ve uluslararası ortamlarda sistematik ve açık bir şekilde yazılı ya da sözlü olarak aktarır.
    -
    -
    -
    -
    -
    11 Bilgisayar Mühendisliği uygulamalarının sosyal, çevresel, sağlık, güvenlik, hukuk boyutları ile proje yönetimi ve iş hayatı uygulamalarını bilir ve bunların bilgisayar mühendisliği uygulamalarına getirdiği kısıtların farkındadır.
    -
    -
    -
    -
    -
    12 Verilerin toplanması, yorumlanması, duyurulması aşamalarında ve mesleki tüm etkinliklerde toplumsal, bilimsel ve etik değerleri gözetir.
    -
    -
    -
    -
    -

    *1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest

     


    YENİ GÜZELBAHÇE KAMPÜSÜMÜZ

    Detaylar

    KÜRESEL KARİYER

    İ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ı..

    BİLİME KATKI

    İzmir Ekonomi Üniversitesi, nitelikli bilgi ve yetkin teknolojiler üretir.

    Daha Fazlası..

    İNSANA DEĞER

    İzmir Ekonomi Üniversitesi, toplumsal fayda üretmeyi varlık nedeni olarak görür.

    Daha Fazlası..

    TOPLUMA FAYDA

    22 yıllık güç ve deneyimini toplumsal çalışmalara aktarmak..

    Daha Fazlası..
    İzmir Ekonomide yapacağın Lisansüstü eğitimle bir adım öndesin