Ders Adı | Kodu | Verildiği Yıl | Verildiği Yarıyıl | Süresi (T+U) | Yerel Kredisi | AKTS Kredisi |
Nesne Tabanlı Programlama | CPR 207 | 2 | 1 | 3 + 0 | 3 | 6,00 |
|
Ders Bilgileri |
Dersin Öğretim Dili | İngilizce |
Dersin Seviyesi | Ön 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. Nesne tabanlı programlama ihtiyacını anlar ve bir problemin ne zaman nesne tabanlı programlama ile çözüleceğini anlar. |
2. Sınıf ve obje kavramlarını ve nasıl tasarlayacağını öğrenir. |
3. Nesne tabanlı programlamada kalıtım ve çokbiçimlilik kavramlarını öğrenir ve uygular. |
|
Dersin Önkoşulları ve Birlikte Alınması Gereken Dersler | Yok |
Daha Önce Alınmış Olması Önerilen Dersler | Yok |
|
Dersin Tanımı:
Bu ders C++ programlama dilini kullanarak nesne tabanlı programlamaya giriş sağlar ve öğrencilere kapsülleme (encapsulation), kalıtım (inheritance) ve çokbiçimlilik (polymorphism) kavramlarını öğretir. Öğrenciler, sınıflar ve nesnelerle nasıl tasarım yapılacağı, uygulanacağı ve çalışılacağı konusunu öğrenecek ve C++ operatör aşırı yüklemesi (operator overloading) ve çokbiçimlilik kavramlarını öğrenir. |
|
Üretken Yapay Zeka Kullanımı:
Kullanılmamaktadır. |
|
Dersin İçeriği (Haftalık Konu Dağılımı): |
|
Hafta | Konu |
1 | Nesne Tabanlı Programlamaya Giriş |
2 | C Tekrarı, C++ Programlama Diline Giriş |
3 | C++ Fonksiyonları |
4 | C++ Dizileri, Dinamik Diziler ve Vektörler |
5 | Sınıflar ve Nesneler I |
6 | Sınıflar ve Nesneler II |
7 | Konu Tekrarı |
8 | C++ Operatör Aşırı Yükleme |
9 | Kalıtım I |
10 | Kalıtım II |
11 | Çokbiçimlilik I |
12 | Çokbiçimlilik II |
13 | Konu Tekrarı |
|
Kaynaklar: |
Deitel, P., Deitel, H. M. C++ How to Program (10th Edition), Pearson, 2016. ISBN-13: 978-0134448237 |
|
Diğer Kaynaklar: |
|
|
Öğretim Yöntem ve Teknikleri: |
Her hafta üç saat ders anlatılır. Sınavlara ek olarak quiz ve ödevler ile ara değerlendirmeler gerçekleştirilir. |
|
Değerlendirme Sistemi: |
Yöntem | Adet | Katkı (%) |
Ara Sınav | 1 | %30 |
Final Sınavı | 1 | %40 |
Ödev | 1 | %10 |
Test/Quiz/Kısa Sınav | 2 | %10 |
|
Ders İşbaşı Eğitimi (iş yerinde eğitim) Gerektiriyor mu? |
Gerektirmiyor |
|
Dersin AKTS İş Yükü:
|
# | Aktivite | Adet | Süre (Saat) | İş Yükü |
1 | Derslere Katılım (haftalık bazda) | 14 | 3,00 | 42,00 |
2 | Laboratuvarlara/Derslere Katılım (haftalık bazda) | 0 | 0,00 | 0,00 |
3 | Notların önceden hazırlanması ve son haline getirilmesi (haftalık bazda) | 0 | 0,00 | 0,00 |
4 | İlgili materyalin toplanması ve seçilmesi (bir kez) | 0 | 0,00 | 0,00 |
5 | İlgili materyalin kendi kendine incelenmesi (haftalık bazda) | 0 | 0,00 | 0,00 |
6 | Ev ödevleri | 1 | 15,00 | 15,00 |
7 | Sınavlara Hazırlık | 1 | 20,00 | 20,00 |
8 | Ara Sınavlara Hazırlık (Sınavların süresi dahil) | 1 | 20,00 | 20,00 |
9 | Dönem Ödevi/Vaka Çalışması Raporunun Hazırlanması (sözlü sunum dahil) | 1 | 15,00 | 15,00 |
10 | Dönem Projesi/Saha Çalışması Raporunun Hazırlanması (sözlü sunum dahil) | 0 | 0,00 | 0,00 |
11 | Final Sınavına Hazırlık (sınav süresi dahil) | 1 | 20,00 | 20,00 |
|
Dersin Program Yeterlilikleri vs. Öğrenme Kazanımları:
|
# | Program Yeterlilikleri | Katkı (0-4) |
1 | Bilgisayar sistemlerinde yeterli altyapıya sahip olma; bu alandaki kuramsal ve uygulamalı bilgileri bilgisayar sistemlerinde kullanabilme becerisi, Bilgisayar sistemindeki problemleri saptama, tanımlama ve çözme becerisi; bu amaçla uygun yöntemler ve tekniklerini seçme ve uygulama becerisi | 0 |
2 | Bir sistemi, sistem bileşenini ya da süreci analiz etme ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlama becerisi; bu doğrultuda modern tasarım yöntemlerini uygulama becerisi, Bilgisayar programında gerekli olan teknik araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin kullanma becerisi | 0 |
3 | Bilgisayar Teknolojileri ve Programlama alanında tanımı iyi yapılmış problemlerin çözümü için gerekli olan verileri tanımlama, toplama ve kullanmayı etkin bir biçimde yapabilmek; pratik uygulamalarda gereken teorik bilgileri, el ve/veya düşünsel becerileri kullanabildiğini göstermek | 0 |
4 | İleri düzey programlama becerisi kazanır. Güncel bilgisayar programlama teknolojilerini kullanarak sektörün beklentilerini karşılayacak şekilde Bilgisayar Programcılığı ile ilgili süreci/süreçleri planlama becerisine sahip olmak. | 0 |
5 | Bağımsız çalışabilme, inisiyatif alabilme, özgün içerikler oluşturabilme ve yazılım takımları içinde verimli çalışabilme becerisine sahip olmak. | 0 |
6 | Türkçeyi ve İngilizce yazılı ve sözlü olarak etkin bir biçimde kullanabilme, sunulan Bilgisayar Programcılığı bilgisini kolayca takip etme ve meslektaşlarıyla etkin bir biçimde iletişim kurabilme becerisine sahip olmak. | 0 |
7 | Sorunların çözümünde bilimsel yöntemler kullanmayı benimser ve problem çözme becerisini geliştirir. | 0 |
8 | Bilgiye erişebilmeye bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi, Yaşam boyu öğrenmenin gerekliliği bilinci; bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi | 0 |
9 | Kendi alanı ile ilgili çalışmalarda öngörülmeyen durumlarla ilgili sorunları belirleme ve çözüm arama yeteneğini kazandığını göstermek | 0 |
10 | Bilgiye erişebilme bilimde ve teknolojide gelişmeleri takip edebilme ve sürekli kişisel gelişimi sürdürebilme becerisine sahip olmak | 0 |
11 | Mesleki, hukuksal, sosyal ve etik sorumluluklarını anlayabilir ve uygular. | 0 |