COME428 Java Programlama (Teorik + Uygulama) Kredi : (3+0)3 - AKTS : 6 Ders Koordinatörü : Öğr.Gör. Bülent HAZNEDAR Ön Şartlı Dersler : Ders Dili : en Dersi Verenler: _______________________________________________________________________________ Öğr.Gör. Bülent HAZNEDAR Dersin Yardımcıları: _______________________________________________________________________________ Dersin Amacı: _______________________________________________________________________________ Bu ders nesneye yönelik programlamaya çokça kullanılan Java programlama dili kullanarak kavramsal ve uygulama tabanlı bir giriş niteliğindedir. Nesneye yönelik programlama ile ilişkilendirilen temel kavramlar (örnek olarak nesneler, sınıflar, protokol, sıradüzen, kalıt, sarma, çok biçimlilik, kodun tekrar kullanımı, arayüzler, beraber çalışma v.b.) Java Programlama dili kullanılarak tanıtılacak ve örneklerle açıklanacaktır. Bu ders öğrencilere Java dili ve nesne tabanlı program geliştirme konusunda daha ileri çalışmaları destekleyecek şekilde sağlam bir temel verir. Dersin Öğrenim Çıktıları: _______________________________________________________________________________ 1. Öğrenciler program tasarımında soyutlama kullanımının temel prensiplerini bileceklerdir. 2. Öğrenciler yükleme kavramını bileceklerdir. 3. Öğrenciler sınıflar, sınıf yapıcılar ve diğer araçları kullanarak nesne tabanlı programlamayı bileceklerdir. 4. Öğrenciler kalıt kavramını bileceklerdir. 5. Öğrenciler arayüz kavramını bileceklerdir Dersin içeriği: _______________________________________________________________________________ Bu ders öğrencilere Java programlama dilini kullanarak nesne tabanlı programlamanın temel kavramlarını öğretir. Haftalık Program _____________________________________________________ 1. - Java tanıtımı * Ön çalışma - Dersin kitap üzerinden okunması _____________________________________________________ 2. - Nesne tabanlı tasarım * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 3. - Sınıflar * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 4. - Sınıf yapıcılar nesne oluşturulması ve silinmesi * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 5. - Kalıt * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 6. - Soyut sınıflar, arayüzler ve çoklu kalıt * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 7. - Çok biçimlilik ve sanal fonksiyonlar * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 8. - Ara Sınav * Ön çalışma _____________________________________________________ 9. - Kural dışı durum işleme * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 10. - Java Collections Framework (containers) * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 11. - Akışlar, serileştirme ve dosya giriş/çıkış * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 12. - Tasarım kalıplarına giriş * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 13. - Grafik arayüz programlama araçları * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi _____________________________________________________ 14. - Proje sunumu * Ön çalışma - Geçen hafta ve bu haftaki konuların kitap üzerinden incelenmesi Kaynaklar Ders Kitabı: Core Java, Volume IFundamentals, 8/e, Horstmann Diğer Kitaplar:İnternet Değerlendirme Sistemi Değerlendirme Türü Adet Arasınav Final Sınavı 1 1 40 60 Toplam: Ders Kategorisi Yüzde(%) 4 200 Uzmanlık / Alan Dersleri AKTS Tablosu / İşyükü Aktiviteler Dönemlik İşyükü Ders Saati Laboratuar sınıf Dışı Ders Çalışması Ara Sınav Final Sınavı 42 42 84 2 2 Toplam İş yükü(saat) Toplam İş yükü / 30 saat 172 6 Dersin Program Çıktılarına Katkısı Katkı Düzeyi 1 2 3 Program Öğrenme Çıktıları 4 5 X 1 - Bilim, matematik ve mühendislik bilgisini ilgili alana uygulayabilmek. X 2 - Problemin analizi, deneyin yürütülmesi, ve çözüme uygun gereksinimlerin tespiti/tanımlanması, aynı zamanda veri analizi ve yorumlaması yapabilme. X 3 - Bilgisayar tabanlı bir sistemin, işlemin, bileşenlenin veya programlamanın ekonomik/sosyal/çevresel/siyasal/ahlaki/sağlıklı/güvenli/üretilebilirlik/ sürdürülebilirliği gibi ihtiyaçları karşılayaçak şekilde tasarımı, uygulanması ve değerlendirilmesi. X 4 - Bir sınıf ortamında veya değişik alanları kapsayan proje gruplarında ortak bir hedefe ulaşmak için etkin olarak görev alabilmek. X 5 - Mühendislik problemlerini tespit edebilme, formüle edebilme ve çözümleyebilme. 6 - Profesyonellik, ahlak, yasal, güvenlik, sosyal mesele ve soysal sorumluluk anlayışı. 7 - Bilimsel ve sosyal konularda etkin olarak iletişimde bulunmak ve yazabilmek. X 8 - Küresel, ekonomik, çevresel ve sosyal meselelerde mühendislik çözümlerine etkisini anlayabilecek engin bir eğitime sahip olabilmek. X 10 - Çağdaş meseleler hakkında bilgi sahibi olmak ve takip edebilmek. X 11 - Mühendislik uygulamaları için gerekli güncel mühendislik teknikleri, becerileri ve araçları kullanabilmek.