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 | 2 | 1 | 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.
|
|
Üretken Yapay Zeka Kullanımı:
|
|
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 |
|
Dersin Program Yeterlilikleri vs. Öğrenme Kazanımları:
|
# | Program Yeterlilikleri | Katkı |
1 | Matematik, fen bilimleri, temel mühendislik, bilgisayarla hesaplama ve ilgili mühendislik disiplinine özgü konularda bilgi; bu bilgileri, karmaşık mühendislik problemlerinin çözümünde kullanabilme becerisi. | 0 |
2 | Karmaşık mühendislik problemlerini, temel bilim, matematik ve mühendislik bilgilerini kullanarak ve ele alınan problemle ilgili BM Sürdürülebilir Kalkınma Amaçlarını gözeterek tanımlama, formüle etme ve analiz becerisi. | 0 |
3 | Karmaşık mühendislik problemlerine yaratıcı çözümler tasarlama becerisi; karmaşık sistemleri, süreçleri, cihazları veya ürünleri gerçekçi kısıtları ve koşulları gözeterek, mevcut ve gelecekteki gereksinimleri karşılayacak biçimde tasarlama becerisi. | 0 |
4 | Karmaşık mühendislik problemlerinin analizi ve çözümüne yönelik, tahmin ve modelleme de dahil olmak üzere, uygun teknikleri, kaynakları ve modern mühendislik ve bilişim araçlarını, sınırlamalarının da farkında olarak seçme ve kullanma becerisi. | 0 |
5 | Karmaşık mühendislik problemlerinin incelenmesi için literatür araştırması, deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama dahil, araştırma yöntemlerini kullanma becerisi. | 0 |
6 | Mühendislik uygulamalarının BM Sürdürülebilir Kalkınma Amaçları kapsamında, topluma, sağlık ve güvenliğe, ekonomiye, sürdürülebilirlik ve çevreye etkileri hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık. | 0 |
7 | Mühendislik meslek ilkelerine uygun davranma, etik sorumluluk hakkında bilgi; hiçbir konuda ayrımcılık yapmadan, tarafsız davranma ve çeşitliliği kapsayıcı olma konularında farkındalık. | 0 |
8 | Bireysel olarak ve disiplin içi ve çok disiplinli takımlarda (yüz yüze, uzaktan veya karma) takım üyesi veya lideri olarak etkin biçimde çalışabilme becerisi. | 0 |
9 | Hedef kitlenin çeşitli farklılıklarını (eğitim, dil, meslek gibi) dikkate alarak, teknik konularda sözlü, yazılı etkin iletişim kurma becerisi. | 0 |
10 | Proje yönetimi ve ekonomik yapılabilirlik analizi gibi iş hayatındaki uygulamalar hakkında bilgi; girişimcilik ve yenilikçilik hakkında farkındalık. | 0 |
11 | Bağımsız ve sürekli öğrenebilme, yeni ve gelişmekte olan teknolojilere uyum sağlayabilme ve teknolojik değişimlerle ilgili sorgulayıcı düşünebilmeyi kapsayan yaşam boyu öğrenme becerisi. | 0 |