MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI 2011 2012 Güz Yarıyılı Java Programlama YZM 363 5 AKTS 4. yıl 7 yarıyıl Lisans Seçmeli 3 s/hafta 3 kredi Teorik: 3 s/hafta Uygulama: 0 s/hafta İletişim: Öğr. Gör. Emel KARTAL e-posta: aemel.kartal@gmail.com Türkçe Dersin Genel Amacı Java Programlama Dili, nesneye dayalı bir programlama dilidir. Java ile nesneye dayalı teknikler kullanılarak nasıl problem çozüleceyi anlatılacaktır. Bu kursta Java kullanılarak sınıfların (classes), nesnelern (objects) ve uygulamaların (applications) nasıl yaratıldığı uygulamalı olarak gösterilecektir. Öğrenme Çıktıları ve Alt Beceriler Ders kapsamı içerisinde; * Java Nedir? * Java nın Tarihi * Java Platformu * Neden Java? * JVM(Java Sanal Makinesi) * Çöp Toplama(Garbage Collection) * Java Geliştirme Araçları (JDK, Eclipse, NetBeans) * Java Dilinin Temelleri * Kalıtım(Inheritance) * Kapsülleme(Encapsulation) * Çok Biçimlilik(Polymorphism) * Interface ve Abscract Classes * Değişkenler, Data tipleri, Tip değiştirme * Operatörler * Conditions * Loops * Sınıflar(Abstract, Final, Inner), Object ve Instance * Field, Property, Method, Constructor
Genel Yeterlikler Yazılım Mühendisliği temel kavram ve metotlarını bilme, yaratıcı ve analitik düşünebilme. Yazılım mühendisliği ve uygulama yöntemleri hakkında bilgi sahibi olma. Öğretim Yöntem ve Teknikleri Anlatım, tartışma, soru-cevap,uyuglama. Değerlendirme Yöntemi Yarıyıl içerisinde yazılı ara sınav (%25), bir yazılı final sınavı (60%) yapılacaktır. Ayrıca dönem içerisinde öğrencilere uygulama ödevleri (%15) verilecektir. Ön Koşul Yok. Ders Kitabı / Yardımcı Okumalar 1) http://www.complang.tuwien.ac.at/franz/papers/punt07a-slides Haftalar 1. Hafta 2. Hafta 3. Hafta Tartışılacak/İşlenecek Konular. Java Nedir? * Java nın Tarihi * Java Platformu * Neden Java? JVM(Java Sanal Makinesi) * Çöp Toplama(Garbage Collection) 4. Hafta 5. Hafta * Java Geliştirme Araçları (JDK, Eclipse, NetBeans) * Java Dilinin Temelleri Kalıtım(Inheritance) * Kapsülleme(Encapsulation) 6. Hafta * Çok Biçimlilik(Polymorphism 7. Hafta * Çok Biçimlilik(Polymorphism 8. Hafta Interface ve Abscract Classes * Değişkenler, Data tipleri, Tip değiştirme 9. Hafta Kalıtım(Inheritance) Kapsülleme(Encapsulation) 10. Hafta. Operatörler * Conditions
* Loops 11. Hafta to quiz 12. Hafta Sınıflar(Abstract, Final, Inner), Object ve Instance * Field, Property, Method, Constructor * Overloading Kavramı * Overriding Kavramı 13. Hafta 14. Hafta. This ve super anahtar kelimelerini kullanmak * Access Specifiers (Private, Protected, ve Public) * Static değişkenler ve Metodlar * Metoda arguman ile değer aktarma * Try-catch-finally * Checked/Unchecked Exceptions * User defined Exceptions * Appletler/GUI programlama DEĞERLENDİRME SİSTEMİ YARIYIL İÇİ ÇALIŞMALARI SAYISI KATKI PAYI Devam - - Laboratuar - - Uygulama - - Alan Çalışması - - Derse Özgü Staj (Varsa) - - Küçük Sınavlar - - Ödev 3 15 Sunum - - Projeler 1 25 Seminer - - Ara sınavlar 1 25 Final 1 35 TOPLAM 100 YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTUNA KATKISI 40 YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI 60 TOPLAM 100
DERSİN ÖĞRENİM ÇIKTILARININ PROGRAM YETERLİLİKLERİ İLE İLİŞKİSİ No 1 2 3 4 Program Yeterlikleri/Çıktıları Matematik ve diğer temel bilimler kapsamındaki uygun yöntemsel ve pratik bilgilere ve mühendislikle ilişkili problemleri tanımlamak üzere bu bilgileri uygulama becerilerine sahiptir. Teknolojinin güncel yöntemlerini, tekniklerini ve cihazlarını kullanarak Bilgisayar Mühendisliği ile ilişkili problemleri tanımlama, formülleştirme ve çözme yeteneklerine sahiptir. Bir bilgi işleme sisteminin donanım ve yazılım bileşenlerini kaliteli olacak şekilde analiz etmek ve tasarlamak üzere çeşitli teknikleri ve araçları kullanma becerilerine sahiptir. Test ve analiz yapma ve çıkan sonuçları yorumlama becerilerine sahiptir. *Katkı Düzeyi 1 2 3 4 5 5 Teknolojinin insan, etik ve ekolojik boyutlarını dikkate alır. 6 Şirketler, kurumsal kültür ve onların ekonomik, yönetim ve örgütsel bileşenleri hakkında bilgi sahibidir. 7 Bilişim sistemleri üzerinde karar verme yeteneklerine sahiptir. 8 İngilizce dilini yazılı ve sözlü bir biçimde küresel seviyede iletişim kurabilmek adına etkin kullanabilir. 9 Hayat boyu öğrenme becerisine sahiptir. 10 11 Yazılım yaşam döngüsü süreçlerinde, yazılım kalitesi, kalite modelleri ve karakteristikleri konularını bilmek, temel kalite ölçümlerini yapabilmek ve bunları yazılım geliştirme, doğrulama ve sınama konularıyla birlikte yorumlayabilmek. Başta bilgisayar mühendisliği, yönetim, matematik, proje yönetimi, kalite yönetimi, yazılım ergonomisi ve sistem mühendisliği olmak üzere, yazılım mühendisliği ile ortak sınırlara ve değerlere sahip diğer disiplinler hakkında bilgi sahibi olmak. 12 Genelde mühendislik özelde yazılım mühendisliği kültürü ve etik anlayışını kavrayabilmek, uygulayabilecek temel bilgilere sahip olmak.
AKTS (İŞ YÜKÜ TABLOSU) Etkinlikler Sayısı Süresi (Saat) Toplam İş Yükü Ders Süresi (Sınav haftası dâhildir: 14x toplam ders saati) 14 2 28 Laboratuar - - - Uygulama 14 2 28 Derse Özgü Staj (varsa) - - - Alan Çalışması - - - Sınıf Dışı Ders Çalışma Süresi (Ön çalışma, pekiştirme) 14 2 28 Sunum / Seminer Hazırlama - - - Proje - - - Ödevler 3 10 30 Ara sınavlar 1 4 4 Yarıyıl Sonu Sınavı 1 6 6 Toplam İş Yükü 120