| Dersin Kodu | Dersin Adı | Dersin Türü | Yıl | Yarıyıl | AKTS | Kredi |
|---|---|---|---|---|---|---|
| EYON221 | Yapısal Programlama | Ders | 2 | 3 | 5.00 | 3.00 |
Lisans
Türkçe
Öğrencilere algoritmik düşünme becerisi kazandırmak, yapısal programlamanın temel kavramlarını öğretmek, C dili ile düşük seviye programlama mantığını, Python dili ile güncel ve hızlı uygulama geliştirme becerilerini kazandırmak.
Dr. Öğr. Üyesi Gülsüm ŞANAL
| 1 | Bilgisayar programlamada kullanılan temel terminolojiyi anlamak. |
| 2 | C tabanlı çalışan yazılımlarının alt yapısını kavrayabilme. |
| 3 | Değişken, veri tipi, koşul ve döngüleri kullanabilme |
| 4 | C Programlama dilinin temel komutlarını, fonksiyon ve dizi yapılarını, giriş-çıkış işlemlerini tanımlama ve kullanma |
| 5 | C dilinde program yazmak, derlemek ve hata ayıklamak. |
| 6 | Değerle çağırmak ve referansla çağırmak arasındaki farkı açıklamak. |
| 7 | Yapılar (struct) ve modüller ile programı modüler hale getirebilme |
Birinci Öğretim
Yazılım Geliştirme Temelleri
GCC/Clang, VS Code + C/C++ uzantısı, (isteğe bağlı) Code::Blocks/CLion
- Temel programlama dillerinin ve özelliklerinin tanımlanması - Algoritmalar ve akış diyagramları - Temel giriş/çıkış işlemleri - Değişkenler, veri tipleri, operatörler - Karar yapıları ve döngüler - Fonksiyonlar, parametre aktarımı - Diziler ve string işlemleri - Arama ve sıralama algoritmaları - Dosya işlemleri - Yapılar (C) / Modüller (Python) - Hata ayıklama ve test - Küçük ölçekli proje geliştirme
| Hafta | Teorik | [OgretimYontemVeTeknikleri] | [OnHazirlik] |
|---|---|---|---|
| 1 | Yapısal programlamaya giriş (genel kavramlar) | ||
| 2 | C derleyici/ortam, programın yapısı, temel I/O | Anlatım, Soru-Cevap, Uygulama-Lab | GCC/VS Code kurulumu |
| 3 | Veri tipleri, ifadeler, operatörler | Anlatım, Gösterim, Uygulama-Lab | Operatör önceliği tablosu |
| 4 | Seçim yapıları (if/else, switch) | Problem Çözme, Gösterim, Uygulama-Lab | Karar tabloları |
| 5 | Döngüler (for/while/do-while), break/continue | Uygulama-Lab, Mini-quiz | Döngü örnekleri |
| 6 | Fonksiyonlar, prototip, değerle/gönderim | Anlatım, Problem Çözme, Gösterim, Uygulama-Lab | Fonksiyon parçalama egzersizi |
| 7 | Diziler (1D/2D), temel arama-sıralama | Anlatım, Problem Çözme, Gösterim, Uygulama-Lab | Doğrusal/ikili arama |
| 8 | Vize Sınavı | ||
| 9 | Karakter dizileri (string), <string.h> | Uygulama, Gösterim, Problem çözme | Metin işleme alıştırmaları |
| 10 | Gelişmiş fonksiyonlar, özyineleme (recursion) | Anlatım, Problem Çözme, Gösterim, Uygulama-Lab | Özyinelemeli örnek |
| 11 | Göstergeler (pointer) temelleri | Gösterim, Uygulama-Lab | Adres & işaretçi zihinsel modeli |
| 12 | Pointer + dizi/parametre ilişkisi | Problem Çözme, Gösterim, Uygulama-Lab | Dizi-fonksiyon örnekleri |
| 13 | Yapılar (struct), enum, typedef | Gösterim, Uygulama-Lab | Kayıt defteri tasarımı |
| 14 | Dosya işlemleri (fopen/fscanf/fprintf) | Lab, Proje Çalışması | CSV okuma-yazma |
| 15 | Final |
• Brian W. Kernighan, Dennis M. Ritchie – The C Programming Language • K. N. King – C Programming: A Modern Approach • Al Sweigart – Automate the Boring Stuff with Python • Python Resmi Dokümantasyonu (https://docs.python.org) • Çeşitli ders notları ve çevrimiçi kaynaklar
• Quiz/Ödev (%10): Haftalık küçük alıştırmalar • Lab (%5): Kod çalışma, doğruluk, stil • Ara Sınav (%25): Algoritma + kısa kodlama • Proje (%40): Modülerlik, dosya işlemleri, rapor • Final (%20): Kapsamlı uygulama soruları
| Yarıyıl (Yıl) İçi Etkinlikleri | Adet | Değer |
|---|---|---|
| Ara Sınav | 1 | 100 |
| Toplam | 100 | |
| Yarıyıl (Yıl) Sonu Etkinlikleri | Adet | Değer |
| Final Sınavı | 1 | 30 |
| Rapor Sunma | 1 | 35 |
| Proje Sunma | 1 | 35 |
| Toplam | 100 | |
| Yarıyıl (Yıl) İçi Etkinlikleri | 40 | |
| Yarıyıl (Yıl) Sonu Etkinlikleri | 60 | |
YOK
| Etkinlikler | Sayısı | Süresi (saat) | Toplam İş Yükü (saat) |
|---|---|---|---|
| Ara Sınav | 1 | 2 | 2 |
| Final Sınavı | 1 | 2 | 2 |
| Derse Katılım | 1 | 30 | 30 |
| Ara Sınav İçin Bireysel Çalışma | 1 | 25 | 25 |
| Final Sınavı içiin Bireysel Çalışma | 1 | 30 | 30 |
| Performans | 1 | 40 | 40 |
| Toplam İş Yükü (saat) | 129 | ||
| PÇ 1 | PÇ 2 | PÇ 3 | PÇ 4 | PÇ 5 | PÇ 6 | PÇ 7 | PÇ 8 | PÇ 9 | PÇ 10 | PÇ 11 | PÇ 12 | PÇ 13 | PÇ 14 | PÇ 15 | |
| ÖÇ 1 | 4 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
| ÖÇ 2 | 1 | 2 | 2 | 3 | 4 | 4 | 4 | 4 | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
| ÖÇ 3 | 1 | 1 | 2 | 2 | 3 | 3 | 4 | 4 | 4 | 4 | 5 | 5 | 5 | 5 | 5 |
| ÖÇ 4 | 1 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 3 | 4 | 4 | 5 | 5 | 5 | 5 |
| ÖÇ 5 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 4 | 4 | 5 | 5 | 5 | 5 |
| ÖÇ 6 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 4 | 5 | 5 | 5 | 5 |
| ÖÇ 7 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 3 | 3 | 4 | 5 | 5 |