Nesneye Yönelik Tasarım ve Programlama (COMPE 501) Ders Detayları

Benzer belgeler
Fundamentals of Object-Oriented Programming (COMPE 723) Ders Detayları

Makine Öğrenmesi (COMPE 565) Ders Detayları

İleri İşletim Sistemleri (COMPE 531) Ders Detayları

İleri Bilgisayar Mimarileri (COMPE 532) Ders Detayları

İleri Düzey Ağ Tabanlı Programlama (COMPE 505) Ders Detayları

Yüksek Lisans Semineri (ISE 589) Ders Detayları

Çoklu Ortam Sistemleri (COMPE 521) Ders Detayları

İleri Algoritma (COMPE 574) Ders Detayları

Kurumsal Yönetim ve Değişim (ISE 502) Ders Detayları

Semantik Web Programlama (COMPE 567) Ders Detayları

Sızma Testleri (COMPE 552) Ders Detayları

Süreç Analizi & İyileştirme (ISE 515) Ders Detayları

İleri Yazılım Proje Yönetimi (SE 552) Ders Detayları

BT Güvenliği (ISE 542) Ders Detayları

İleri Veri Madenciliği (COMPE 506) Ders Detayları

Sağlık Hizmetinde Bilişim Teknolojileri (ISE 553) Ders Detayları

Makine Mühendisliğine Giriş (ME 102) Ders Detayları

Isı Transferi (ME 303) Ders Detayları

Bilgisayar Destekli Teknik Çizim I (ME 103) Ders Detayları

Metallerin Korozyonu ve Oksidasyonu (MATE 440) Ders Detayları

Statik (ME 201) Ders Detayları

Kompozit Malzemeler (MATE 446) Ders Detayları

Makine Teorisi (ME 307) Ders Detayları

Yaz Stajı I (ME 399) Ders Detayları

Genel Fizik II (PHYS 102) Ders Detayları

Bilgisayar Programlama (COMPE 102) Ders Detayları

Polimer Bilimi ve Teknolojisi (MATE 466) Ders Detayları

Reaktör Tasarımı (ENE 316) Ders Detayları

Mühendislik Mekaniği I (ENE 207) Ders Detayları

Termal Sistem Tasarımı (ME 408) Ders Detayları

Proje Tasarımı (ME 404) Ders Detayları

Bilgisayar Ağları (COMPE 734) Ders Detayları

Programlama Dilleri (COMPE 325) Ders Detayları

Mekanik Sistem Tasarımı (ME 403) Ders Detayları

Enerji Sistemleri I (ENE 201) Ders Detayları

Termodinamik (ENE 203) Ders Detayları

Nesne Tabanlı Programlama (COMPE 225) Ders Detayları

Bilgi Teknolojileri Stratejik Planlama ve Yönetimi (ISE 511) Ders Detayları

Mukavemet (ME 210) Ders Detayları

e-ticaret - Bir Yönetimsel Perspektif (ISE 552) Ders Detayları

Fosil Enerji Kaynakları (Petrol, Gaz, Kömür) I (ENE 409) Ders Detayları

Biyoenerji Teknolojileri (ENE 420) Ders Detayları

Cam Bilimi ve Teknolojisi (MATE 456) Ders Detayları

Jeotermal Enerji Teknolojileri (ENE 314) Ders Detayları

Enerji Depolama Teknolojisi (ENE 415) Ders Detayları

Web Tasarımı ve Geliştirme (COMPE 518) Ders Detayları

Nesne Tabanlı Programlama (COMPE 225) Ders Detayları

Java Programlama (COMPE 438) Ders Detayları

Seramik Malzeme Üretim Süreçleri (MATE 474) Ders Detayları

Ekonominin Temelleri (ECON 211) Ders Detayları

Akışkanlar Mekaniği II (ME 302) Ders Detayları

Güneş Enerjisi Teknolojileri (ENE 308) Ders Detayları

Boru Hattı Temelleri ve Tasarımı (ME 438) Ders Detayları

Enerji Yönetimi (ENE 406) Ders Detayları

Bulut Bilişim (ISE 514) Ders Detayları

Genel Fizik I (PHYS 101) Ders Detayları

Internet Güvenliği & Meşru Haklama (ISE 543) Ders Detayları

Malzeme Seçimi ve Tasarım (MATE 410) Ders Detayları

Akademik İngilizce II (ENG102) Ders Detayları

Elektromekanik Enerji Dönüşümü (ENE 309) Ders Detayları

Bilgisayar Programlama II (COMPE 114) Ders Detayları

Biometrik tanıma ve kimlik doğrulama sistemleri (COMPE 551) Ders Detayları

Bitirme Projesi (COMPE 494) Ders Detayları

C ile Programlama (COMPE 112) Ders Detayları

İleri Veritabanları (COMPE 502) Ders Detayları

Makine Elemanları II (ME 306) Ders Detayları

Seramik Malzemeler (MATE 468) Ders Detayları

Elektriksel Güç İletimi ve Dağıtımı (ENE 403) Ders Detayları

Bilgisayar Programlama I (COMPE 113) Ders Detayları

Bilgisayar Programlama I (COMPE 113) Ders Detayları

Ayrık Hesaplamalı Yapılar (COMPE 251) Ders Detayları

Nesneye Dayalı Analiz ve Tasarım (SE 321) Ders Detayları

Enerji ve Çevre (ENE 404) Ders Detayları

Bilgisayar Mühendisliğine Giriş (COMPE 111) Ders Detayları

Enerji Sistemleri Mühendisliğinin Temelleri (ENE 102) Ders Detayları

Hidrojen Teknolojileri (ENE 421) Ders Detayları

Lisans Seminer (MATE 419) Ders Detayları

Sistem Analizi ve Tasarımı (IE 503) Ders Detayları

İşletim Sistemleri (COMPE 431) Ders Detayları

Kaynak Metalurjisi ve Teknolojisi (MATE 442) Ders Detayları

İleri Yapay Zeka (COMPE 568) Ders Detayları

Yazılım Mühendisliği (SE 346) Ders Detayları

Enerji Sistemleri II (ENE 202) Ders Detayları

Veri Yapıları (MCS 301) Ders Detayları

Bilgisayarlı Çizim (COMPE 473) Ders Detayları

Bilgisayarlara ve Programlamaya Giriş (COMPE 101) Ders Detayları

Malzeme Karakterizasyonu (MATE 403) Ders Detayları

Plastik Malzemeler (CEAC 431) Ders Detayları

İş Yaşamı İçin İletişim Becerileri II (ENG 302) Ders Detayları

Mühendislik Malzemelerinin Kırılması ve Yetmezlik Analizi (MATE 452) Ders Detayları

Dijital Görüntü İşleme (COMPE 464) Ders Detayları

Sistem Modelleme ve Simülasyon (SE 360) Ders Detayları

Gereksinim Mühendisliği (SE 560) Ders Detayları

Mezuniyet Projesi (CEAC 404) Ders Detayları

İleri Java Programlama (COMPE 515) Ders Detayları

Yazılım Mühendisliğine Giriş (SE 112) Ders Detayları

Yazılım Mimarisi (SE 322) Ders Detayları

Transkript:

Nesneye Yönelik Tasarım ve Programlama (COMPE 501) Ders Detayları Ders Adı Ders Kodu Dönemi Ders Saati Uygulama Saati Laboratuar Kredi AKTS Saati Nesneye Yönelik Tasarım ve Programlama COMPE 501 Güz 3 0 0 3 7.5 Ön Koşul Ders(ler)i Dersin Dili Dersin Türü Dersin Seviyesi Ders Verilme Şekli Dersin Öğrenme ve Öğretme Teknikleri İngilizce Seçmeli Dersler Fen Bilimleri Yüksek Lisans Yüz Yüze Anlatım Dersin Koordinatörü

Dersin Öğretmen(ler)i Dersin Asistanı Dersin Amacı Dersin Eğitim Çıktıları Bu dersin amacı öğrencilere Nesneye Yönelik Tasarim (NYT) kavramı bilgisinin verilmesidir. Ayrıca, Tümleşik Modelleme Dili (TMD) ve Nesneye Yönelik Programlama (NYP) kavramları, olay güdümlü programlama kavramı, sınıf, nesne ve mesaj iletimi kavramlarının verilmesi amaçlanmaktadır. Bunlara ek olarak, öğrencilerin Nesneye Yönelik Programlama tekniklerini Java programlama dili uygulama becerisini geliştirmeleri hedeflenmektedir. Bu dersi başarıyla tamamlayabilen öğrenciler; Nesneye Yonelik Tasarım (NYT) kavramlarını genel anlamda açıklayabilir Nesneye Yönelik Programlama (NYP) kavramlarını genel anlamda açıklayabilir Sınıf, Çokbiçimlilik, Sarma ve Kalıtım kavramlarını uygulayabilir Olay algılama ve olay güdümlü programlamayı anladığını gösterebilir Nesneye Yönelik Analiz ve Tasarım bilgilerini bir projede kullabilir. Tümleşik Modelleme Dili'ni (TMD) gereksinim analizi, tasarım ve bileşen arayüz tanımlarında kullanabilir Sorumluluk Güdümlü Tasarım (Resposibility Driven Design) kavram ve prensiplerini açıklayabilir Nesneye Yönelik model ve yazılım geliştirme sırasında yapılan genel işleri listeleyebilir Nesneye Yonelik Programlamanın genel yapılanması ve bileşenleri bildiğini gösterebilir

Dersin İçeriği Nesne Yönelimli düşünme. Soyutlama. Nesneye Yönelik Analiz ve tasarım kavramları ve tasarım kalıpları. Tümleşik Modelleme Dili (TMD): giriş, modellemin rolü, modeller ve görünümler, temel diyagramlar, temel elementler (yapısal elementler, Java'dan bağımsız olgular, Java'ya bağımlı olgular). Sıralama, sınıf ve paket diyagramlarına giriş. Geliştirme Yaşamdöngüsü ve TMD (Gereksinim Analizi ve Tasarım, Yapılanma, Test, Uygulama). Yaşamdöngüsi. Java ve TMD : Sorumluluk Güdümlü Tasarım metodu ve CRC kart kullanımı. Sınıflar ve Metodlar. Mesjlaşma, nesne yaratma ve ön değer tanımlama. Kalıtım, alt sınıf ve alt tür. Static and dynamic behavior. Statik ve dinamik davranış. Yerine geçme. Çoklu Kalıtım ve Çokbiçimlilik. Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları HaftaKonular Ön Hazırlık 1 Nesne Yönelimli düşünme Konu 1 (Ders Kitabı) 2 Nesne Yönelimli Programlamın tarihçesine genel bakış Konu 2 3 Nesne Yönelimli Tasarım Konu 3 4 Tümleşik Modelleme Dili (Giriş, elementler ve TMD Diyagramları ) 5 Paradigmayı anlama: Paradigma nedir? ( Programlama Yapıları, Erişim Etkenleri, Yaşamdöngüsü Etkenleri) 6 Paradigmayı anlama : Bir uygulama (Ball Words) (Veri alanları, Yapıldırma Fonksiyonu, Kalıtım, Java Grafik bileşenleri) Diğer Kaynaklar 1 Konu 4 Konu 5

7 Paradigmayı anlama : Bir Uygulama (A Cannon Game) (Dinleyiciler, İç Sınıflar, Arayüzler, Java Olay Modeli, Pencere Görünümü) 8 Paradigmayı anlama : Bir Uygulama (Pinball Game) (Koleksiyonlar, Fare Dinleyicileri, İş Parçacıkları, Eş Zamanlılık Programlaması) 9 Paradigmayı anlama : Bir Uygulama (Pinball Game) (Koleksiyonlar, Fare Dinleyicileri, İş Parçacıkları, Eş Zamanlılık Programlaması) Konu 6 Konu 7 Konu 7 10 Kalıtımı Anlama Konu 8 11 Kalıtım: örnek çalışma (Solitaire) Konu 9 12 Yazılım Bileşeni Yeniden kullanımı mekanizmaları Konu 10 13 Kalıtım kullanmanın sonuçları Konu 11 14 Çokbiçimliliği anlama Konu 12 15 Gözden geçirme 16 Gözden geçirme Kaynaklar Ders Kitabı: Diğer Kaynaklar: 1. Understanding Object Oriented Programming with Java, Updated Edition, T. Budd, Addison-Wesley Longman, 2000, ISBN: 0-201-61273-9. McGraw-Hill, 2006 1. Java Design: Objects, UML, and Process, K.Knoernschild, Addison Wesley 2002, ISBN: 0-201-75044-9 2. Object Oriented Design & Patterns, Cay S. Horstmann, 2nd ed., ISBN 0-471-74487-5

3. Case Studies in Object-Oriented Analysis and Design, Edward Yourdon, Prentice Hall, 1996 4. Robert A. Maksimchuk, Michael W. Engel, Bobbi J. Young, Jim Conallen, and Kelli A. Houston, Addison-Wesley Professional, 2007 Değerlendirme Sistemi Çalışmalar Sayı Katkı Payı Devam/Katılım 1 5 Laboratuar - - Uygulama - - Alan Çalışması - - Derse Özgü Staj - - Küçük Sınavlar/Stüdyo Kritiği - - Ödevler 3 15 Sunum - - Projeler - - Seminer - - Ara Sınavlar/Ara Juri 1 40 Genel Sınav/Final Juri 1 40 Toplam 6 100 Yarıyıl İçi Çalışmalarının Başarı Notu Katkısı 60

Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı 40 Toplam 100 Ders Kategorisi Temel Meslek Dersleri Uzmanlık/Alan Dersleri Destek Dersleri İletişim ve Yönetim Becerileri Dersleri Aktarılabilir Beceri Dersleri Dersin Öğrenim Çıktılarının Program Yeterlilikleri ile İlişkisi # Program Yeterlilikleri / Çıktıları Katkı Düzeyi 1 2 3 4 5 1 Matematik, fen bilgisi ve mühendislik bilgilerini uygulama becerisi 2 Deney tasarlama ve yapma ve deney sonuçlarını analiz ederek yorumlama becerisi.

3 Belirlenen gereksinimlere göre bir sistem, bileşen ve işlem tasarımlama becerisi. 4 Disiplinler arası alanlarda iş yapabilme becerisi. 5 Mühendislik problemlerini belirleme, formüle etme ve çözme becerisi. 6 Profesyonel ve meslek etiği sorumluluğunu kavrama. 7 Etkin iletişim kurma becerisi. 8 Yaşam boyu eğitimin bir gereksinim olduğunu tanımak ve aynı zamanda bu eğitime angaje olma becerisi. 9 Çağdaş konular hakkında bilgi sahibi olmak. 10 Mühendislik uygulamaları için gerekli modern mühendislik araçlarını, tekniklerini ve yetenekleri kullanma becerisi. 11 Proje yönetimi becerileri ve uluslar arası standartları ve metodolojileri tanıma. 12 Gerçek hayat problemleri için mühendislik ürünleri ve prototipleri yaratabilme yeteneği. 13 Profesyonel bilgiye katkı yeteneği. 14 Yöntembilimsel bilimsel araştırma yapabilme yeteneği 15 Orijnal ya da var olan bir bilgi kümesi etrafında bir bilimsel yapıt üretme, raporlama ve sunma yeteneği. 16 Üretilen orijinal fikri savunma yeteneği. ECTS/İş Yükü Tablosu Aktiviteler Sayı Süresi (Saat) Toplam İş Yükü Ders saati (Sınav haftası dahildir: 16 x toplam ders saati) 16 3 48

Laboratuar Uygulama Derse Özgü Staj Alan Çalışması Sınıf Dışı Ders Çalışma Süresi Sunum/Seminer Hazırlama Projeler 16 5 80 Ödevler 3 9 27 Küçük Sınavlar/Stüdyo Kritiği Ara Sınavlara/Ara Juriye Hazırlanma Süresi Genel Sınava/Genel Juriye Hazırlanma Süresi 1 30 30 1 40 40 Toplam İş Yükü 225