PROGRAMI
DERS TANITIM VE UYGULAMA BİLGİLERİ

Ders AdıKoduVerildiği YılVerildiği YarıyılSüresi (T+U)Yerel KredisiAKTS Kredisi
Nesneye Yönelik ProgramlamaCENG 241223 + 245,00
 
Ders Bilgileri
Dersin Öğretim Diliİngilizce
Dersin SeviyesiLisans
Dersin TürüZorunlu
Dersin Veriliş BiçimiYüz Yüze
 
Dersin Öğrenme Kazanımları:

Bu dersi başarı ile tamamlayan öğrenciler:
1. Nesneye yönelik programlamaya (NYP) ihtiyacın anlaşılması
2. Bir problemi çözerken ne zaman NYP kullanılacağının (ve ne zaman kullanılmayacağının) anlaşılması.
3. Diğer NYP dillerinin farkında olunması ve bu dillerin göreli zayıflıklarıyla beraber kuvvetli yönlerinin anlaşılması.
4. C++ dillinin temel özelliklerinin ve polimorfik sınıf hiyerarşilerinin problem çözüm dizaynında kullanılması.
5. Modüler ve yapısal NYP C++ programlarının yazımı ve kodlaması.
6. Halihazırdaki kütüphane ve fonksiyonların kullanımı.
 
Dersin Önkoşulları ve Birlikte Alınması Gereken DerslerCENG 114 veya CENG162
Daha Önce Alınmış Olması Önerilen DerslerYok
 
Dersin Tanımı:

Bu ders C++ diliyle beraber Yapılar ve Soyut Veri Yapılarına girişi sağlar. Fonksiyon aşırı yüklemesi, C++ sınıfları ve operator aşırıyüklemesi, kalıtım, sanal fonksiyonlar, şablonlar ve polimorfizm işlenen konular arasındadır.
 
Dersin İçeriği (Haftalık Konu Dağılımı):
 
HaftaKonu
1İşaretçiler (yapı işaretçileri, işaretçi işaretçileri)
2Diziler ve Çok Boyutlu Diziler
3Dinamik Hafıza Tahsisi (Dinamik Diziler ve Yapılar)
4C Katarları ve C++ Katarlari
5Sınıflar, Metodlar, Yapıcılar ve Yapıcıların Aşırıyüklemesi
6Nesne yapımı, static anahtar kelimesi, nesne yıkımı
7C++ Sınıf Notasyonları, Başlık Dosyaları, Kopya Yapıcı, Kapsamlı Kopya ve Basit Kopya
8Operator Aşırıyüklemesi
9NYP Kavramları, Kompozisyon, Birleştirme, Özelleştirme, Soyutlama ve Sınıf Şemaları
10Kalıtım, Altsınıf Kavramı, Ağırbasma
11Kalıtım, Kapsülleme, Görünürlük Niteleyicileri
12Polimorfizm
13İsim Uzayları, Şablon Fonksiyonları ve Şablon Sınıfları
14Vektörler, Listeler
 
Kaynaklar:
D.S. Malik C++ Programming: From Problem Analysis to Program Design, 4th Edition Cengage Course Technology 2009 9780538798082
 
Diğer Kaynaklar:
Tony Gaddis Starting Out with C++: Early Objects Addison Wesley 2005 0-321-38348-6
 
Öğretim Yöntem ve Teknikleri:
Haftada 3 saat ders. Lab oturumları ile pratik kazanımı.
 
Değerlendirme Sistemi:
YöntemAdetKatkı (%)
Ara sınav1%30
Proje1%15
Laboratuvar14%20
Final sınavı1%35
 
Ders İşbaşı Eğitimi (iş yerinde eğitim) Gerektiriyor mu?
Gerektirmiyor