Ders Adı Kodu Yarıyıl T+U Saat Kredi AKTS
Bilgisayar Programlama Dilleri I EBO 203 3 2 + 2 3 5
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin Dili Türkçe
Dersin Seviyesi Lisans
Dersin Türü Zorunlu
Dersin Koordinatörü
Dersi Verenler
Dersin Yardımcıları Abdullah Sevin, Maruf Öztürk
Dersin Kategorisi Diğer
Dersin Amacı Bu dersin amacı öğrenenlere; giriş çıkış işlemlerini, veri tiplerini, karar yapılarını, döngüleri, fonksiyonları, dizileri, işaretçileri ve karakter katarlarını, sınıf tanımlamalarını, aşırı yüklü fonksiyonları, aşırı yüklü operatörleri, tekli ve çoklu miras alma işlemlerini, sanal fonksiyonları, şablonları içeren nesne yönelimli programları C++ dilini kullanarak tasarlatmak ve tasarlanan programı kodlatmak, test ettirmek ve hatalarını ayıklatmaktır.
Dersin İçeriği 1. C++ programının genel yapısı, değişkenler, veri tipleri, sabitler, operatörler, kontrol yapıları (if else, for, while, switch-case, do-while).
2. Fonksiyon tanımları, fonksiyon kullanımları, hazır fonksiyonlar, parametre kullanımı, dönüş tipi ve kullanımı, diziler, karakter katarları, işaretçiler, işaretçi aritmetiği, fonksiyon işaretçisi, işaretçi dizileri, dinamik bellek kullanımı.
3. Sınıf tanımı, sınıf bileşenleri, yapıcı ve yıkıcılar, referanslar, üye değişkenler, üye fonksiyonlar, kopya yapıcılar, this işaretçisi, tekli ve çoklu miras alma.
4. Fonksiyon ve operatörlerin aşırı yüklenmesi, baskın fonksiyonlar.
5. Sanal fonksiyonların tanımlanması, özetleme, şablonlar, fonksiyon gizleme, arkadaş sınıfı, istisnalar.
# Ders Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri
1 Verilen bir programda komutları ayrıştırarak temel işlemler, değişkenler ve kontrol yapılarını listeler ve açıklar Anlatım, Soru-Cevap, Tartışma, Bireysel Çalışma,
2 Fonksiyonları giriş/çıkış tiplerini belirleyerek tanımlar ve program içinde kullanır Anlatım, Soru-Cevap, Tartışma, Bireysel Çalışma,
3 Dizileri tanımlar ve döngüsel yapılarda kullanır Anlatım, Soru-Cevap, Tartışma, Bireysel Çalışma,
4 İşaretçi kavramını açıklar ve işaretçileri döngüsel yapılarda kullanır Anlatım, Soru-Cevap, Tartışma, Bireysel Çalışma,
5 Yapıları ve birlikleri tanımlar ve bunları kullanarak veri yapıları oluşturur Bireysel Çalışma, Anlatım, Soru-Cevap, Tartışma,
6 Sınıf kavramını açıklar ve sınıfları nesne yönelimli programlamada kullanır Anlatım, Soru-Cevap, Tartışma, Bireysel Çalışma,
7 Sanal fonksiyonlar, özetleme ve şablonlama yapılarını kavrar ve sınıf yapıları ile beraber kullanır Anlatım, Soru-Cevap, Tartışma, Bireysel Çalışma,
Hafta Ders Konuları Ön Hazırlık
1 C++ Dilinin Özellikleri, Kullanım Alanları,Sistemsel Bakış, Dillerin Sınıflandırılması, Yorumlayıcı, Derleyici
2 Veri Türleri, Değişken ve sabit tanımlama,Basit Program Örnekleri, printf
3 Çıktıların biçimlendirilmesi, Giriş Fonksiyonları, Aritmetik İşleçler, İlişkisel İşleçler, Mantıksal ve Bitsel İşleçler
4 Karşılaştırma ve karar verme komutları: if-else, switch-case
5 Döngü komutları: while, for, do-while, break-continue, iç içe döngü
6 Fonksiyon tanımlama, kullanma, parametre alma
7 Fonksiyon tanımlama, kullanma, parametre alma
8 Özyineleme li(recursion) fonksiyon tanımları ve kullanım alanları
9 Dizi tanımlama ve kullanımı, parametre olarak kullanımı, sıralama,arama
10 Arasınav
11 İşaretçi (pointer) tanımlama, kullanma, işleçler, değerle v ereferansla çağırma, işaretçi aritmetiği,İşaretçi dizisi, fonksiyon işaretçisi, dinamik bellek tahsisi
12 Referans tanımı ve kullanımı ve işaretçi ile benzer ve farkları Karakter dizgeleri (string) fonksiyonları,
13 Yapı (struct) ve Birlikler (union)
14 Nesne Yönelimli programlama: Kılıflama, Çok şekillilik, Kalıtım, Yapıcı ve Yokedici metotlar ve metot tanımlama ve kullanma
Kaynaklar
Ders Notu Bilg. Programlama-I Sakarya Üniversitesi, Ders Notu
Ders Kaynakları R.Çölkesen, "C Programlama Dili", Papatya yayıncılık
Schildt Herbert C++ Temel Öğretim Kılavuzu, Alfa
Liberty Jesse , 24 Saatte C++ Öğrenme, SAMS Publishing
Deitel & Deitel, "C: How to program", Prentice Hall
www.cs.wustl.edu/~schmidt/C++/
www.cplusplus.com/doc/tutorial
Sıra Program Çıktıları Katkı Düzeyi
1 2 3 4 5
1 Bilgisayar teknolojisi alanında araştırma ve uygulamaya yönelik güncel bilgi ve becerilere sahip olmak.
2 Bilgisayar teknolojisi ile ilgili eğitim araç ve gereçleri etkin kullanabilmek. X
3 Bilgisayar teknolojisi ile ilgili konularda eğitim programı geliştirebilmek, bunları yazılı ve sözlü olarak uygulayabilecek iletişim yeteneğine sahip olmak. X
4 Bilgisayar teknolojisi alanında projelendirme, tasarlama ve uygulama çalışmalarını gerek bağımsız olarak ve gerekse ortak zeminlerde yürütme bilgi ve becerilere sahip olmak. X
5 Bilgisayar teknolojisi alanında bilimsel ve toplumsal sorunlar karşısında sorgulayıcı, yorumlayıcı, çözüme katkı sağlayıcı ve etik denetime açık yaklaşımlara sahip olmak. X
6 Çevre bilincine sahip olmak, bunu uygulamak ve yaygınlaştırmak. X
7 Toplumla ve çeşitli toplum örgütleriyle etkin bir şekilde çalışabilmek. X
8 Sorumluluğu altında çalışanların mesleki gelişimine ve sosyal haklarının korunmasına yönelik etkinlikleri planlayıp yönetebilmek, onların küresel ölçekte sorumlu bireyler olarak yetişmesine katkıda bulunmak. X
9 Kendi kendine ve hayat boyu öğrenim ilkelerini benimsemek. X
10 Bilgisayar teknolojisi alanında profesyonel gelişimlerini sürdürebilmek ve farklı uygulamaları yerinde inceleyebilmek üzere ulusal/uluslararası hareketlilik ve ortaklık faaliyetlerinde bulunmak. X
# Ders Öğrenme Çıktılarının Program Çıktılarına Katkısı PÇ 1 PÇ 2 PÇ 3 PÇ 4 PÇ 5 PÇ 6 PÇ 7 PÇ 8 PÇ 9 PÇ 10
1 Verilen bir programda komutları ayrıştırarak temel işlemler, değişkenler ve kontrol yapılarını listeler ve açıklar
2 Fonksiyonları giriş/çıkış tiplerini belirleyerek tanımlar ve program içinde kullanır
3 Dizileri tanımlar ve döngüsel yapılarda kullanır
4 İşaretçi kavramını açıklar ve işaretçileri döngüsel yapılarda kullanır
5 Yapıları ve birlikleri tanımlar ve bunları kullanarak veri yapıları oluşturur
6 Sınıf kavramını açıklar ve sınıfları nesne yönelimli programlamada kullanır
7 Sanal fonksiyonlar, özetleme ve şablonlama yapılarını kavrar ve sınıf yapıları ile beraber kullanır
Değerlendirme Sistemi
Yarıyıl Çalışmaları Katkı Oranı
1. Ara Sınav 60
1. Kısa Sınav 10
1. Ödev 20
2. Kısa Sınav 10
Toplam 100
1. Yıl İçinin Başarıya 50
1. Final 50
Toplam 100
AKTS - İş Yükü Etkinlik Sayı Süre (Saat) Toplam İş Yükü (Saat)
Final 1 20 20
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) 16 2 32
Sınıf Dışı Ders Çalışma Süresi(Ön çalışma, pekiştirme) 16 2 32
Ara Sınav 1 15 15
Ödev 1 2 2
Proje / Tasarım 14 1 14
Toplam İş Yükü 115
Toplam İş Yükü / 25 (Saat) 4,6
Dersin AKTS Kredisi 5