Ders Adı Nesne Yönelimli Programlama
Ders Kodu SBT-3156
Dersin Türü Zorunlu
Ders Biriminin Seviyesi Ön Lisans
Yıl 1
Dönem 2.Yarıyıl
AKTS 3
Dersi Veren(ler) Öğr.Gör.Kasım DELİKANLI
Dersin Yardımcıları
Ders İşleme Biçimi Yüz Yüze
Önkoşul Dersleri
Dersin İçeriği 1. Diziler ve dizi listeleri, dizi algoritmaları, Çok boyutlu diziler, Sıralama Algoritmaları 2. Nesneye yönelik programlama ve sınıf kavramı.Nesneye Yönelik Programlamanın Temel İlkeleri ve UML Diyagramları 3. Sınıf (Class) kavramı , static değişkenler ve void metotlar, 4. Sınıf (Class) ve fonksiyonlar 5. Overloading(Aşırı yükleme) 6. Recursive (Özyineli) Methotlar 7. Nesne yapısı ve kavramı 8. Nesne sınıfı ve nesne oluşturma Bellekte yer ayırma, başvuru değişkeni. 9. Constructorlar (Kurucu/Yapıcı) Fonksiyonlar 10. İnheritance ( Kalıtım) 11. Encapsulation (Kapsülleme) 12. Polymorphism (Çok Biçimlilik) 13. GUI'ye giriş ve bileşenleri, 14. Form ekranında Proje geliştirme ve uygulamalar
Dersin Verildiği Diller Türkçe
Dersin Amacı Bu dersin amacı, sözdiziminden (syntax) daha çok problem çözmeye odaklanan ve problem odaklı bir şekilde nesne yönelimli programlamayı (OOP) öğretmektir. Öğrenciler nesne tabanlı düşünme ve tasarımını öğrenir ve algoritmik düşünme becerilerini geliştirirler. OOP tekniklerini belirli bir probleme nasıl ve ne zaman etkili bir şekilde uygulayacaklarını öğrenirler. Ders, Java'daki temel tekniklerin gözden geçirilmesiyle başlar ve ardından nesneler ve sınıflar, nesne odaklı düşünme, kalıtım ve çok biçimlilik, istisna işleme ve metin I/O, soyut sınıflar ve arayüzler, Java GUI temelleri, olay güdümlü programlama ve animasyonlar, Java UI kontrolleri ve multimedya, ikili I/O, özyineleme, jenerikler, listeler, yığınlar, kuyruklar ve öncelik kuyrukları, kümeler ve eşlemeler, listelerin, yığınların, kuyrukların ve öncelik kuyruklarının uygulanması konularını öğretir.
No Dersin Kazanımları  
1 Diziler üzerinde işlemler yapabilecek, algoritmalar geliştirebilecektir.
2 Verilen bir problem için sınıf diyagramları üretebilecek, metod ve fonksiyonlar oluşturabilecektir.
3 Özel fonksiyonları (Yapıcı, Özyineli, Aşırı Yüklemeli) kullanabilecektir.
4 Nesne yönelimli programlama dilinin temel özelliklerini tanımlayabilecektir.
5 Nesne yönelimli tasarım, polimorfizm, bilgi saklaması ve miras kavramlarını tanımlayabilecektir.
6 Nesne yönelimli yazılımı test etme prensiplerini tanımlayabilecektir.
DERSİN KAZANIMLARI / PROGRAM YETERLİKLERİ İLİŞKİ MATRİSİ
DKPY1PY2PY3PY4PY5PY6PY7PY8PY9PY10
1
2
3
4
5
6
5-Çok Yüksek İlişkili 4- Yüksek İlişkili 3-Orta İlişkili 2- Zayıf İlişkili 1-Çok Zayıf İlişkili 0-İlişkisiz
Hafta Konular  
1 Diziler ve dizi listeleri, dizi algoritmaları, Çok boyutlu diziler, Sıralama Algoritmaları
2 Nesneye yönelik programlama ve sınıf kavramı.Nesneye Yönelik Programlamanın Temel İlkeleri ve UML Diyagramları
3 Sınıf (Class) kavramı , static değişkenler ve void metotlar,
4 Sınıf (Class) ve fonksiyonlar
5 Overloading(Aşırı yükleme)
6 Recursive (Özyineli) Methotlar
7 Nesne yapısı ve kavramı
8 Nesne sınıfı ve nesne oluşturma Bellekte yer ayırma, başvuru değişkeni.
9 Constructorlar (Kurucu/Yapıcı) Fonksiyonlar
10 İnheritance ( Kalıtım)
11 Encapsulation (Kapsülleme)
12 Polymorphism (Çok Biçimlilik)
13 GUI'ye giriş ve bileşenleri,
14 Form ekranında Proje geliştirme ve uygulamalar
No Bölüm Öğrenme Çıktısı Katkı Düzeyi
1 Sorunların çözümünde bilimsel yöntemler kullanmayı benimser ve problem çözme becerisini geliştirir. 4
2 Birlikte çalışacakları diğer disiplinlerden kişilerle diyalog kurabilme, bilgi paylaşabilme, ekip çalışması yapabilme, teknik yardımda bulunabilme, sözlü ve yazılı iletişim kurma becerisine sahiptir. 3
3 Mesleki ve etik sorumluluk bilincine sahiptir. 3
4 Temel bilimler, yaşam bilimleri, bilgisayar alanında temel kavramları anlama ve bu kavramları etkin şekilde kullanma becerisine sahiptir. 4
5 Alanında algoritmalar hazırlama becerisine sahip olmak, sorunları çözmek için gerekli bilgiyi vermek, yazılım geliştirme platformlarını ve ürünlerini belirlemek, tanımlanan yazılım bileşenlerini kodlamak, test etmek ve güncellemek ve sonuçların karşılaştırmalı yorumlama becerisine sahip olmak. 5
6 Yazılım tasarımı ve analizi gerçekleştirebilme; bilişim sektöründeki proje temelli program üretme çalışmalarında grup içinde görevleri yerine getirebilme becerisine sahiptir. 5
7 Bilgisayar sektöründe güncel olan kişisel bilgisayar işletim sistemlerini ve ağ işletim sistemlerini kullanma becerisi kazanır. 2
8 Genel hastalıklar bilgisi, tıbbi terimler ve biyomedikal cihazlar hakkında terminolojik bilgiye sahiptir 1
9 Sağlık kurumları yönetimi ve işletmeciliğinin prensiplerini bilir ve sağlık hukukuna uygun çalışma bilincine sahiptir. 1
10 Tıbbi dokumantasyon standartlarını, sağlık bilgi sistemlerini ve sağlık bilişimi teknolojilerini bilir. 1
Yarıyıl İçi Çalışmaları Sayısı Katkı Payı
Ara Sınav 1 60
Kısa Sınav 0 0
Ödev 1 40
Devam 0 0
Uygulama 0 0
Labaratuvar 0 0
Proje 0 0
Atölye 0 0
Seminer 0 0
Arazi Çalışması 0 0
Sözlü sınav 0 0
Portfolyo 0 0
Doküman İncelemesi 0 0
Performans değerlendirme 0 0
Sunum 0 0
Alan Çalışması 0 0
Vaka Çalışması 0 0
Video Kaydı 0 0
Öz değerlendirme 0 0
Akran Değerlendirme 0 0
Eşleştirme Testleri 0 0
Çoktan seçmeli test 0 0
Kısa Cevaplı test 0 0
Kontrol listeleri 0 0
Dereceleme Ölçekleri 0 0
Zihin Haritalama 0 0
Araştırma yazısı 0 0
Çevrimiçi anket 0 0
Çevrimiçi Kısa sınav 0 0
TOPLAM 0
Yıliçinin Başarıya Oranı 40
Finalin Başarıya Oranı 60
TOPLAM 100
AKTS kredilerinin belirlenmesinde öğrenci işyükü anketlerinden faydalanılmaktadır.
Etkinlik Sayısı Süresi Toplam
Ders Süresi (Sınav Haftaları Hariç) 14 3 42
Sınıf Dışı Ders Çalışma Süresi 14 2 28
Ödevler 5 2 10
Sunum 0 0 0
Proje 0 0 0
Laboratuar Çalışması 0 0 0
Arazi ya da Alan Çalışması 0 0 0
Ara Sınavlar 1 10 10
Yarıyıl Sonu Sınavı 1 10 10
İşyükü Saati (30) 30
Toplam İşyükü / Saat 100    
Dersin Akts Kredisi 3    
Ders Notu [1]Java ile Temel Programlama, Bora Güngören, Seçkin Yayıncılık Nisan 2008, [2]Java Uygulamaları, Murat İnan, Altaş Yayıncılık 2010, [3]Java Programlama Dili ve Yazılım Tasarımı,Altuğ B. Altıntaş,Papatya Yayıncılı 2010, [4]Java Programlama Teknikleri ,Bora Güngören, Seçkin Yayıncılık 2006
Diğer Kaynaklar [1]Java ile Temel Programlama, Bora Güngören, Seçkin Yayıncılık Nisan 2008, [2]Java Uygulamaları, Murat İnan, Altaş Yayıncılık 2010, [3]Java Programlama Dili ve Yazılım Tasarımı,Altuğ B. Altıntaş,Papatya Yayıncılı 2010, [4]Java Programlama Teknikleri ,Bora Güngören, Seçkin Yayıncılık 2006
Materyal
Dökümanlar [1]Java ile Temel Programlama, Bora Güngören, Seçkin Yayıncılık Nisan 2008, [2]Java Uygulamaları, Murat İnan, Altaş Yayıncılık 2010, [3]Java Programlama Dili ve Yazılım Tasarımı,Altuğ B. Altıntaş,Papatya Yayıncılı 2010, [4]Java Programlama Teknikleri ,Bora Güngören, Seçkin Yayıncılık 2006
Ödevler
Sınavlar
Materyal Diğer
Planlanmış Öğrenme Faaliyetleri ve Öğretim Yöntemleri