Ders Adı | Kodu | Verildiği Yıl | Verildiği Yarıyıl | Süresi (T+U) | Yerel Kredisi | AKTS Kredisi |
Nesneye Yönelik Programlama | CENG 241 | | | 3 + 2 | 4 | 5,00 |
|
Ders Bilgileri |
Dersin Öğretim Dili | İngilizce |
Dersin Seviyesi | Lisans |
Dersin Türü | Zorunlu |
Dersin Veriliş Biçimi | Yü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 Dersler | CENG 114 veya CENG162 |
Daha Önce Alınmış Olması Önerilen Dersler | Yok |
|
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ı): |
|
Hafta | Konu |
1 | İşaretçiler (yapı işaretçileri, işaretçi işaretçileri) |
2 | Diziler ve Çok Boyutlu Diziler |
3 | Dinamik Hafıza Tahsisi (Dinamik Diziler ve Yapılar) |
4 | C Katarları ve C++ Katarlari |
5 | Sınıflar, Metodlar, Yapıcılar ve Yapıcıların Aşırıyüklemesi |
6 | Nesne yapımı, static anahtar kelimesi, nesne yıkımı |
7 | C++ Sınıf Notasyonları, Başlık Dosyaları, Kopya Yapıcı, Kapsamlı Kopya ve Basit Kopya |
8 | Operator Aşırıyüklemesi |
9 | NYP Kavramları, Kompozisyon, Birleştirme, Özelleştirme, Soyutlama ve Sınıf Şemaları |
10 | Kalıtım, Altsınıf Kavramı, Ağırbasma |
11 | Kalıtım, Kapsülleme, Görünürlük Niteleyicileri |
12 | Polimorfizm |
13 | İsim Uzayları, Şablon Fonksiyonları ve Şablon Sınıfları |
14 | Vektö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öntem | Adet | Katkı (%) |
Ara sınav | 1 | %30 |
Proje | 1 | %15 |
Laboratuvar | 14 | %20 |
Final Sınavı | 1 | %35 |
|
Ders İşbaşı Eğitimi (iş yerinde eğitim) Gerektiriyor mu? |
Gerektirmiyor |