Ders Bilgileri

Ders Bilgileri
Ders Adı Kodu Dili Türü Yarıyıl T+U Saat Kredi AKTS
Programlama II ROB1204 Türkçe Zorunlu 2. Yarıyıl 3 + 1 4,0 4,0
Ön Koşul Dersleri
Dersin Seviyesi Ön Lisans
Dersin Verilişi yüz yüze
Dersin Koordinatörü
Dersi Veren(ler) Öğr. Gör. Erdi YALÇIN (Bahar)
Dersin Amacı Bu dersin amacı, öğrencilerin nesne yönelimli programlama (OOP) yaklaşımını derinlemesine kavrayarak sınıf, nesne, kalıtım, çok biçimlilik ve arayüzler gibi yapıları uygulayabilmesini sağlamaktır. Ayrıca dosya işlemleri, koleksiyon yapıları, temel veri yapıları ve algoritmalar üzerinden yazılım geliştirme becerisi kazandırılması amaçlanmaktadır. Ders, gerçek dünya problemlerine yönelik küçük ölçekli uygulamalarla desteklenmektedir.
Dersin İçeriği Nesne yönelimli programlamanın temel kavramlarını açıklar. Sınıf, nesne, metod, kalıtım ve arayüz yapılarını kullanarak modüler programlar geliştirir. İstisna (exception) yönetimini programlarda uygular. Koleksiyonlar ve dosya işlemlerini kullanarak veri işleme görevlerini yürütür. Temel veri yapıları (liste, yığın, kuyruk, ağaç) ile algoritmalar (arama, sıralama) üzerinde uygulama yapar. Küçük çaplı yazılım projelerinde test ve hata ayıklama adımlarını uygular. Programlama dillerinin evrimi ve yeni teknolojiler hakkında temel farkındalık kazanır.
Ders Planı (Haftalık Konular)
Hafta Konular/Uygulamalar Yöntem
1. Hafta Nesne yönelimli programlamaya genel bakış: sınıf-nitelik-metod ilişkisi Diğer Faaliyetler, Görüşme
2. Hafta Sınıflar ve nesnelerle yazılım modelleme, yapıcı-yıkıcı metodlar Diğer Faaliyetler, Görüşme
3. Hafta Kalıtım (inheritance), override ve polymorphism kavramları Diğer Faaliyetler, Görüşme
4. Hafta Arayüz (interface), soyut sınıflar ve iç içe sınıf kullanımı Diğer Faaliyetler, Görüşme
5. Hafta Hata ve istisna yönetimi: try-catch-finally blokları Diğer Faaliyetler, Görüşme
6. Hafta Koleksiyonlar ve generic veri yapıları (List, Set, Map vs.) Diğer Faaliyetler, Görüşme
7. Hafta Dosya işlemleri ve veri serileştirme (JSON/XML/CSV) Diğer Faaliyetler, Görüşme
8. Hafta Temel veri yapıları: bağlı liste, yığın, kuyruk kavramları Diğer Faaliyetler, Görüşme
9. Hafta Basit algoritmalar: sıralama (bubble, selection), arama (binary, linear) Diğer Faaliyetler, Görüşme
10. Hafta Ağaç yapısı ve temel graf algoritmalarına giriş Diğer Faaliyetler, Görüşme
11. Hafta Yazılım geliştirme süreçleri: analiz, tasarım, kodlama, test Diğer Faaliyetler, Görüşme
12. Hafta Birim testi, hata ayıklama teknikleri ve araçları Diğer Faaliyetler, Görüşme
13. Hafta Uygulama geliştirme: robotik ya da veri işleme temelli mini proje Diğer Faaliyetler, Görüşme
14. Hafta Yeni nesil programlama yaklaşımları ve çoklu dil perspektifi (Python, Kotlin, Rust, Go vs.) Diğer Faaliyetler, Görüşme
*Ara sınav ve final sınav tarihleri 14 haftalık ders işleyiş planında belirtilmemiştir. Ara sınav ve final sınav tarihleri Üniversitemiz Senatosu kararı ile akademik takvimde belirtilen tarihlerde yapılmaktadır.
Kaynaklar
Ders Kitabı veya Notu Ders Kitabı veya Ders Notu bulunmamaktadır.
Diğer Kaynaklar
  • Horstmann, C. S. Object-Oriented Programming with Java / Python Liang, Y. Daniel. Introduction to Java Programming and Data Structures
AKTS / İş Yükü Tablosu
AKTS / İş Yükü Tablosu Sayısı Süresi (Saat) Toplam İş Yükü (Saat)
Ders İçi
Ders Saati (14 Hafta) 56 2 112
Ders Dışı
Ödev 10 2 20
Araştırma 4 2 8
Sunum (Hazırlık) 15 1 15
Diğer Faaliyetler 15 1 15
Sınavlar
Ara Sınav 1 1 1 1
Final 1 1 1
Toplam İş Yükü 172
*AKTS = (Toplam İş Yükü) / 25,5 Dersin AKTS Kredisi 4,0