GERİ DÖN

Ders Öğretim Planı


Dersin Kodu Dersin Adı Dersin Türü Yıl Yarıyıl AKTS
WTK-108 NESNE TABANLI PROGRAMLAMA Seçmeli Ders Grubu 1 2 4,00

Önlisans



Öğrencilere nesne yönelimli programlama (OOP) paradigma ve ilkelerini kavratmak; Sınıf (Class), Nesne (Object), Kapsülleme (Encapsulation), Kalıtım (Inheritance), Çok Biçimlilik (Polymorphism) ve Soyutlama (Abstraction) ilkelerini kullanarak modüler, sürdürülebilir ve yeniden kullanılabilir yazılımlar geliştirme becerisi kazandırmaktır.


Öğr. Gör. Hilmi Bahadır TEMUR


1 Prosedürel programlama ile Nesne Tabanlı Programlama (OOP) arasındaki farkları ve OOP'nin avantajlarını açıklar.
2 Gerçek dünya nesnelerini analiz ederek uygun Sınıf (Class) yapısını, niteliklerini (field/property) ve davranışlarını (metot) kurgular.
3 Kapsülleme (Encapsulation) ilkesini ve erişim belirleyicileri kullanarak veri güvenliğini sağlar.
4 Kalıtım (Inheritance) mekanizması ile kod tekrarını önler ve hiyerarşik sınıf yapıları oluşturur.
5 Çok Biçimlilik (Polymorphism), Soyut Sınıflar (Abstract Class) ve Arayüzler (Interface) kullanarak esnek ve genişletilebilir mimariler tasarlar.
6 Çalışma zamanı hatalarını yönlendirmek için İstisna Yönetimi (Exception Handling) bloklarını etkin bir şekilde uygular.

Birinci Öğretim


-


Öğrencilerin temel Programlama Temelleri veya Algoritma ve Programlama dersini almış ve temel veri tipleri ile akış kontrol yapılarını biliyor olması önerilir.


Nesne yönelimli programlama kavramları; Sınıf ve Nesne mimarisi; Yapıcı (Constructor) ve Yıkıcı (Destructor) metotlar; Erişim Belirleyiciler (Access Modifiers); Kapsülleme (Encapsulation); Kalıtım (Inheritance); Metot Aşırı Yükleme (Overloading) ve Ezme (Overriding); Çok Biçimlilik (Polymorphism); Soyut Sınıflar (Abstract Classes) ve Arayüzler (Interfaces); İstisna Yönetimi (Exception Handling); Koleksiyonlar (Collections) ve Temel Tasarım Desenlerine (Design Patterns) giriş.


Hafta Teorik Uygulama Laboratuvar
1 OOP Paradigmasına Giriş: Prosedürel programlama vs OOP, Sınıf (Class) ve Nesne (Object) kavramları
2 Sınıf Mimarisi: Nitelikler (Fields/Properties), Metotlar ve Nesne Örneği Oluşturma (new anahtar sözcüğü)
3 Yapıcı Metotlar (Constructors): Default, Parametreli yapıcılar, this kullanımı ve Bellek Yönetimi (Heap/Stack)
4 Erişim Belirleyiciler (public, private, protected, internal) ve Kapsülleme (Encapsulation)
5 Metot Detayları: Parametre aktarımı (Ref/Out kavramları), Metot Aşırı Yükleme (Method Overloading)
6 Kalıtım (Inheritance) Temelleri: Türetilmiş sınıflar, base / super anahtar sözcüklerinin kullanımı
7 Sanal Metotlar (Virtual Methods) ve Metot Ezme (Method Overriding)
8 Ara Sınav / Vize Haftası
9 Çok Biçimlilik (Polymorphism): Tip dönüşümleri (Casting), is ve as operatörlerinin kullanımı
10 Soyutlama (Abstraction): Soyut Sınıflar (Abstract Classes) ve Soyut Metot kullanımı
11 Arayüzler (Interfaces): Interface tanımlama, çoklu arayüz kalıtımı ve Dependency Injection temelleri
12 İstisna Yönetimi (Exception Handling): try-catch-finally blokları, Özel İstisna (Custom Exception) sınıfları
13 Dinamik Veri Yapıları ve Koleksiyonlar: List, Dictionary, ArrayList yapıları ve Generics kavramı
14 Temel Tasarım Desenlerine (Design Patterns) Giriş (Singleton, Factory) ve Dönem Sonu Proje Sunumları

- Head First Object-Oriented Analysis and Design - Brett McLaughlin, Gary Pollice, David West -:C# / Java ile Nesne Tabanlı Programlama - Akademik ve Güncel Yayınlar - Microsoft C# / Oracle Java Dokümantasyonları ve W3Schools.


Yüz yüze/çevrim içi teorik anlatım, bilgisayar laboratuvarında canlı kodlama (live-coding) egzersizleri, haftalık kodlama problemleri, vize sınavı ve dönem sonu OOP projesi.


Yarıyıl (Yıl) İçi Etkinlikleri Adet Değer
Ara Sınav 1 100
Toplam 100
Yarıyıl (Yıl) Sonu Etkinlikleri Adet Değer
Final Sınavı 1 100
Toplam 100
Yarıyıl (Yıl) İçi Etkinlikleri 40
Yarıyıl (Yıl) Sonu Etkinlikleri 60

-


Etkinlikler Sayısı Süresi (saat) Toplam İş Yükü (saat)
Ara Sınav 1 1 1
Final Sınavı 1 1 1
Derse Katılım 14 2 28
Bireysel Çalışma 14 4 56
Ara Sınav İçin Bireysel Çalışma 7 2 14
Final Sınavı içiin Bireysel Çalışma 7 2 14
Toplam İş Yükü (saat) 114

PÇ 1 PÇ 2 PÇ 3 PÇ 4 PÇ 5 PÇ 6 PÇ 7 PÇ 8 PÇ 9
ÖÇ 1 5 4
ÖÇ 2 5 5 1
ÖÇ 3 5 4 2
ÖÇ 4 5 4
ÖÇ 5 5 5 2
ÖÇ 6 5 4
* Katkı Düzeyi : 1 Çok düşük 2 Düşük 3 Orta 4 Yüksek 5 Çok yüksek