İşleminiz Devam Ediyor.
Lütfen Bekleyiniz...
Dersin Ayrıntıları
KTO KARATAY ÜNİVERSİTESİ
Ticaret ve Sanayi Meslek Yüksekokulu
Bilgisayar Programcılığı Programı
Ders Bolognaları
Ders Kodu Ders Adı Yıl Dönem Yarıyıl T+U+L Kredi AKTS
03820106 Programlama Temelleri II 2025 Bahar 2 3+2+0 5 5
Dersin Türü Zorunlu
Dersin Düzeyi Önlisans (TYYÇ: 5. Düzey / QF-EHEA: Kısa Düzey / EQF-LLL: 5. Düzey)
Dersin Dili Türkçe
Yöntem ve Teknikler 1. Teorik Anlatım: Konular ders kapsamında teorik olarak anlatılır. Öğrenciler programlamanın temel kavramlarını ve algoritmaların mantığını kavrayabilmeleri için konu anlatımları dinler. 2. Uygulamalı Çalışmalar: Öğrenciler, teorik olarak anlatılan konuların uygulamasını yapmak için ders eğitmeni mentorlüğünde çeşitli örneklerle çalışmalar gerçekleştirir. Kazanımlar elde edilmeye çalışılır. 3. Adım Adım Çözümleme: Karşılaşılan problemler adım adım çözülerek her adımın nasıl işlediği açıklanır. Bu yöntemle öğrencilerin konulara daha hakim olması sağlanır. 4.Gerçek Hayat Örnekleri: Konuların daha iyi anlaşılması için gerçek hayattan örnekler ve problem senaryoları sunulur. Böylece öğrenciler öğrendiklerini pratikte nasıl kullanacağını görür. 5. Laboratuvar Föyleri ve Quizler: Haftalık laboratuvar föyleri ve sınav öncesi quizler ile öğrencilerin ilerlemesi değerlendirilir, konuların anlaşılıp anlaşılmadığı takip edilir.
Dersin Veriliş Şekli Yüz Yüze
Ön Koşullar Dersin herhangi bir ön koşulu bulunmamaktadır. Tüm öğrencilere temel seviyeden başlanarak eğitim verilmektedir.
Dersin Koordinatörü -
Dersi Veren(ler) Öğr.Gör. Uğur POLAT
Yardımcı(lar) -
Dersin Öğretim Eleman(lar)ı
Adı Soyadı Oda No. E-Posta Adresi Dahili Görüşme Saatleri
Öğr.Gör. Uğur POLAT C-129 [email protected] 7860 Perşembe
14.00-16.00
Dersin İçeriği
Modüler programlama ve fonksiyon mimarisi; Diziler (Arrays), çok boyutlu diziler ve temel arama/sıralama algoritmaları; String sınıfı, metin işleme ve karakter dizisi operasyonları; İşaretçiler (Pointers), bellek adresleme, fonksiyon ve dizilerle işaretçi ilişkisi; Dinamik bellek tahsisi, bellek yönetimi, Stack ve Heap bellek alanlarının kullanımı; Jenerik programlama, Şablonlar (Templates) ve Standart Şablon Kütüphanesi (STL - vector, list, map vb.) kullanımı; Özyineleme (Recursion) mantığı ve özyinelemeli algoritma tasarımı; Nesneye Yönelik Programlamaya (OOP) giriş, sınıf (class) ve nesne (object) kavramları; Uygulamalı dönem sonu proje tasarımı ve geliştirilmesi.
Dersin Amacı
Bu dersin amacı; öğrencilere temel programlama kavramlarının ötesinde modüler yazılım geliştirme, bellek yönetimi ve ileri düzey veri yapılandırma tekniklerini kavratmaktır. Ders kapsamında; fonksiyonlar, diziler, metinsel (string) işlemler, işaretçiler (pointers), dinamik bellek yönetimi (stack/heap), şablonlar (templates), Standart Şablon Kütüphanesi (STL), özyinelemeli (recursive) algoritmalar ve Nesneye Yönelik Programlamaya (OOP) giriş konuları incelenerek; öğrencilerin karmaşık problemleri analitik yaklaşımlarla çözme, bellek odaklı verimli kod yazma ve proje geliştirme yetkinliklerinin kazandırılması hedeflenmektedir.
Dersin Alan Öğretimini Sağlamaya Yönelik Katkısı
Temel Meslek Dersleri X
Uzmanlık / Alan Dersleri
Destek Dersleri
Aktarılabilir Beceri Dersleri
Beşeri, İletişim ve Yönetim Becerileri Dersleri
Dersin Öğrenim Kazanımlarının Program Kazanımları ile Olan İlişkileri
İlişki Düzeyleri
En Düşük Düşük Orta Yüksek En Yüksek
1 2 3 4 5
# Program Yeterlilikleri Düzey
P4 Mesleği ile ilgili bilişim teknolojilerini (yazılım, program, animasyon vb.) etkin kullanır. 5
P1 Mesleği ile ilgili temel, güncel ve uygulamalı bilgilere sahip olur. 5
P3 Mesleği için güncel gelişmeleri ve uygulamaları takip eder, etkin şekilde kullanır. 4
P5 Mesleki problemleri ve konuları bağımsız olarak analitik ve eleştirel bir yaklaşımla değerlendirme ve çözüm önerisini sunabilme becerisine sahiptir. 4
P6 Bilgi ve beceriler düzeyinde düşüncelerini yazılı ve sözlü iletişim yolu ile etkin biçimde sunabilir, anlaşılır biçimde ifade eder. 3
P11 Algoritma ve veri yapılarını oluşturur ve matematiksel hesapları yapar. 5
P14 Yazılımları test eder ve hataları giderir. 5
Dersin Öğrenim Kazanımları
Bu dersin başarılı bir şekilde tamamlanmasıyla öğrenciler şunları yapabileceklerdir:
No Öğrenme Çıktıları Prog. Yet. İlişkisi Ölçme Yöntemi **
Ö1 Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. P.4.1 1,6
Ö2 Güncel yazılım dilleri hakkında bilgi sahibi olur. P.4.5 1,6
Ö3 Bilgisayar temel elemanlarını bilir. P.1.1 1,7
Ö4 İnternet kullanımını ve araştırma yapmayı bilir. P.1.2 6,7
Ö5 Mesleği ile ilgili temel matematiksel çözümlemeleri yapabilir. P.1.3 6,7
Ö6 Güncel yazılım geliştirme platformlarını bilmeli ve kullanır. P.3.2 6,7
Ö7 Karmaşık problemleri analiz eder ve çözüm stratejileri geliştirir P.3.4 6,7
Ö8 Yazılımları test eder ve hataları giderir. P.5.1 1,6,7
Ö9 Sorunların tespiti için analitik etkin araştırma ve çözüm tekniklerini bilir. P.5.2 1,6,7
Ö10 Alternatif çözüm yollarını değerlendirir ve en uygun olanını seçer P.5.3 6,7
Ö11 Eleştirel düşünme becerilerini kullanarak bilgisayar bilimiyle ilgili konuları ve algoritmaları değerlendirir P.5.4 1,6
Ö12 Matematiksel problemlere çözüm geliştirebilir P.5.6 1
Ö13 Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. P.11.1 1,6,7
Ö14 Güncel Bilişim Teknolojileri platformlarını bilir ve kullanır. P.11.2 6,7
Ö15 Güncel programlama dilleri hakkında bilgi sahibidir. P.11.3 1,6,7
Ö16 Nesneye Yönelik Programlama Tekniklerini bilir ve kullanır. P.11.4 1,6,7
Ö17 Yazılımları test eder ve hataları giderir. P.14.1 1,6,7
** Yazılı Sınav: 1, Sözlü Sınav: 2, Ev Ödevi: 3, Lab./Sınav: 4, Seminer/Sunum: 5, Dönem Ödevi: 6, Uygulama: 7
Dersin Haftalık İçeriği
Hafta Konu
1 Programlama Temelleri Genel Tekrarı ve Modüler Yapı
2 Fonksiyonlar: Parametre Aktarımı, Değer Döndürme ve Aşırı Yükleme
3 Diziler (Arrays) ve Temel Algoritmalar (Arama ve Sıralama)
4 String Sınıfı, Karakter Dizisi İşlemleri ve Metin Manipülasyonu
5 İşaretçiler (Pointers): Bellek Adresleme ve İşaretçi Aritmetiği, Fonksiyonlar ve Dizilerle İşaretçi İlişkisi
6 Dinamik Bellek Yönetimi: Stack vs Heap ve Bellek Tahsisi
7 Sınav Öncesi Quiz ve Genel Tekrar
8 Ara Sınav
9 Şablonlar (Templates) ve Jenerik Programlamaya Giriş
10 Standart Şablon Kütüphanesi (STL) I: Vektörler ve İteratörler
11 Standart Şablon Kütüphanesi (STL) II: Listeler, Haritalar ve Algoritmalar
12 Özyineleme (Recursion) Mantığı ve Özyinelemeli Algoritma Tasarımı
13 Nesneye Yönelik Programlamaya (OOP) Giriş: Sınıf (Class) ve Nesne (Object)
14 Dönem Sonu Proje Değerlendirmeleri ve Sunumlar
15 Sınav Öncesi Quiz ve Genel Tekrar
16 Final Sınavı
Ders Kitabı veya Malzemesi
Kaynaklar Deitel, P., & Deitel, H. (2022). C++ How to Program (10th ed. or Late Objects Version). Pearson
Stroustrup, B. (2014). Programming: Principles and Practice Using C++ (2nd ed.) Addison-Wesley Professional
Prata, S. (2011). C++ Primer Plus (6th ed.). Developer's Library / Addison-Wesley
Değerlendirme Yöntemi ve Geçme Kriterleri
Yarıyıl Çalışmaları Sayısı Katkı (%)
Devam - -
Laboratuvar - -
Uygulama - -
Alan Çalışması - -
Derse Özgü Staj (Varsa) - -
Ödev - -
Sunum - -
Projeler 1 20 (%)
Seminer - -
Kısa sınav (Quiz) 2 10 (%)
Dinleme - -
Ara Sınavlar 1 30 (%)
Yarıyıl Sonu Sınavı 1 40 (%)
Toplam 100 (%)
AKTS / Çalışma Yükü Tablosu
Etkinlik Sayı Süre Toplam İş Yükü (Saat)
Ders Hafta Sayısı ve Saati 16 4 64
Sınıf Dışı Ders Çalışma Süresi (Ön çalışma, Kütüphane, Pekiştirme) 14 2 28
Ara Sınav 1 10 10
Kısa Sınav 2 2 4
Ödev 0 0 0
Uygulama 14 4 56
Laboratuvar 0 0 0
Proje 7 1 7
Atölye 0 0 0
Sunum/Seminer Hazırlama 0 0 0
Alan Çalışması 0 0 0
Dönem Sonu Sınavı 1 10 10
Diğer 0 0 0
Toplam İş Yükü: 179
Toplam Yük / 30 5,97
Dersin AKTS Kredisi: 6
Ders - Öğrenme Çıktıları İlişkisi
İlişki Düzeyleri
En Düşük Düşük Orta Yüksek En Yüksek
1 2 3 4 5
# Öğrenme Çıktıları P1 P3 P4 P5 P11 P14
Ö1 Bilgisayar temel elemanlarını bilir. 5 - - - - -
Ö2 İnternet kullanımını ve araştırma yapmayı bilir. 4 3 - - - -
Ö3 Mesleği ile ilgili temel matematiksel çözümlemeleri yapabilir. 4 - - 3 - -
Ö4 Güncel yazılım geliştirme platformlarını bilmeli ve kullanır. - 5 5 - 3 -
Ö5 Karmaşık problemleri analiz eder ve çözüm stratejileri geliştirir - 4 - 5 4 -
Ö6 Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. - - 5 - 5 -
Ö7 Güncel yazılım dilleri hakkında bilgi sahibi olur. - - 5 - 4 -
Ö8 Yazılımları test eder ve hataları giderir. - - - 3 - 5
Ö9 Sorunların tespiti için analitik etkin araştırma ve çözüm tekniklerini bilir. - - - 5 - 4
Ö10 Alternatif çözüm yollarını değerlendirir ve en uygun olanını seçer - 3 - 5 - -
Ö11 Eleştirel düşünme becerilerini kullanarak bilgisayar bilimiyle ilgili konuları ve algoritmaları değerlendirir - - - 4 4 -
Ö12 Matematiksel problemlere çözüm geliştirebilir - - - 4 4 -
Ö13 Algoritma geliştirmeyi bilir ve algoritmaya uygun veri yapısı oluşturur. - - 4 - 5 -
Ö14 Güncel Bilişim Teknolojileri platformlarını bilir ve kullanır. - 3 4 - 5 -
Ö15 Güncel programlama dilleri hakkında bilgi sahibidir. - - 4 - 5 -
Ö16 Nesneye Yönelik Programlama Tekniklerini bilir ve kullanır. - - 4 - 4 -
Ö17 Yazılımları test eder ve hataları giderir. - - - 3 - 5