| Ders Adı | Kodu | Yerel Kredi | AKTS | Ders (saat/hafta) | Uygulama (saat/hafta) | Laboratuar (saat/hafta) |
|---|---|---|---|---|---|---|
| İleri Programlama | YZM1022 | 4 | 6 | 3 | 0 | 2 |
| Önkoşullar | Yok |
|---|
| Yarıyıl | Bahar |
|---|
| Dersin Dili | İngilizce |
|---|---|
| Dersin Seviyesi | Lisans |
| Dersin Türü | Zorunlu @ Yapay Zeka ve Veri Mühendisliği Lisans Programı (%100 İngilizce) |
| Ders Kategorisi | Temel Meslek Dersleri |
| Dersin Veriliş Şekli | Yüz yüze |
| Dersi Sunan Akademik Birim | Yapay Zeka ve Veri Mühendisliği Bölümü |
|---|---|
| Dersin Koordinatörü | Ekrem Çetinkaya |
| Dersi Veren(ler) | Ekrem Çetinkaya |
| Asistan(lar)ı |
| Dersin Amacı | Bu ders programlama temellerini geliştirmeyi ve öğrencilere ileri programlama paradigmalarını ve yazılım mühendisliği kavramlarını tanıtmayı amaçlamaktadır. Öğrenciler; sağlam ve sürdürülebilir yazılım sistemleri oluşturmak için gerekli olan nesne yönelimli tasarım, fonksiyonel programlama, eşzamanlı programlama ve yazılım kalitesi uygulamaları konularında beceriler geliştireceklerdir. |
|---|---|
| Dersin İçeriği | Nesne yönelimli programlama ilkeleri ve tasarım kalıpları, SOLID ilkeleri ve temiz kod uygulamaları, Mimari kalıplar, Fonksiyonel programlama paradigmaları, Özyineleme ve dinamik programlama, Jenerik programlama ve tip sistemleri, Eşzamanlı ve paralel programlama |
| Ders Kitabı / Malzemesi / Önerilen Kaynaklar | |
| Opsiyonel Program Bileşenleri | Yok |
Ders Öğrenim Çıktıları
- Kapsülleme, kalıtım ve çok biçimlilik dahil olmak üzere nesne yönelimli ilkeleri kullanarak yazılım tasarlar ve uygular.
- Temiz ve birleştirilebilir kod yazmak için fonksiyonel programlama kavramlarını uygular.
- Eşzamanlı programlar geliştirir ve senkronizasyon mekanizmalarını anlar.
- Karmaşık problemleri çözmek için özyineleme ve dinamik programlama tekniklerini uygular.
- Temiz ve sürdürülebilir kod yazmak için SOLID ilkelerini uygular.
- Yazılım tasarımında mimari kalıpları anlar ve uygular.
Ders Öğrenim Çıktısı & Program Çıktısı Matrisi
| DÖÇ-1 | DÖÇ-2 | DÖÇ-3 | DÖÇ-4 | DÖÇ-5 | DÖÇ-6 | |
| 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 | - | - | - | - | - | - |
| PÇ-16 | - | - | - | - | - | - |
| PÇ-17 | - | - | - | - | - | - |
| PÇ-18 | - | - | - | - | - | - |
| PÇ-19 | - | - | - | - | - | - |
| PÇ-20 | - | - | - | - | - | - |
| PÇ-21 | - | - | - | - | - | - |
| PÇ-22 | - | - | - | - | - | - |
| PÇ-23 | - | - | - | - | - | - |
| PÇ-24 | - | - | - | - | - | - |
| PÇ-25 | - | - | - | - | - | - |
| PÇ-26 | - | - | - | - | - | - |
| PÇ-27 | - | - | - | - | - | - |
| PÇ-28 | - | - | - | - | - | - |
| PÇ-29 | - | - | - | - | - | - |
| PÇ-30 | - | - | - | - | - | - |
Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları
| Hafta | Konular | Ön Hazırlık |
|---|---|---|
| 1 | NYP Temelleri: Sınıflar, Nesneler, Kapsülleme | |
| 2 | Kalıtım ve Çok Biçimlilik | |
| 3 | Soyut Sınıflar, Arayüzler ve Bileşim | |
| 4 | Tasarım Kalıpları: Yaratımsal Kalıplar | |
| 5 | Tasarım Kalıpları: Yapısal ve Davranışsal | |
| 6 | İleri Tasarım Kalıpları (Observer, Strategy, Command) | |
| 7 | SOLID İlkeleri, Temiz Kod ve Mimari Kalıplar | |
| 8 | Ara Sınav 1 | |
| 9 | Fonksiyonel Programlama Temelleri | |
| 10 | İleri Fonksiyonel Programlama (YDF, Kapanışlar) | |
| 11 | Özyineleme ve Dinamik Programlama | |
| 12 | Jenerik Programlama ve Tip Sistemleri | |
| 13 | Eşzamanlı Programlama: İş Parçacıkları ve Senkronizasyon | |
| 14 | Paralel Programlama ve Asenkron Kalıplar | |
| 15 | Tekrar ve Proje Sunumları | |
| 16 | Final |
Değerlendirme Sistemi
| Etkinlikler | Sayı | Katkı Payı |
|---|---|---|
| Devam/Katılım | ||
| Laboratuar | 8 | 20 |
| Uygulama | ||
| Arazi Çalışması | ||
| Derse Özgü Staj | ||
| Küçük Sınavlar/Stüdyo Kritiği | ||
| Ödev | ||
| Sunum/Jüri | ||
| Projeler | 1 | 20 |
| Seminer/Workshop | ||
| Ara Sınavlar | 1 | 20 |
| Final | 1 | 40 |
| Dönem İçi Çalışmaların Başarı Notuna Katkısı | ||
| Final Sınavının Başarı Notuna Katkısı | ||
| TOPLAM | 100 | |
AKTS İşyükü Tablosu
| Etkinlikler | Sayı | Süresi (Saat) | Toplam İşyükü |
|---|---|---|---|
| Ders Saati | 14 | 3 | |
| Laboratuar | 8 | 2 | |
| Uygulama | |||
| Arazi Çalışması | |||
| Sınıf Dışı Ders Çalışması | 14 | 2 | |
| Derse Özgü Staj | |||
| Ödev | |||
| Küçük Sınavlar/Stüdyo Kritiği | |||
| Projeler | 1 | 20 | |
| Sunum / Seminer | |||
| Ara Sınavlar (Sınav Süresi + Sınav Hazırlık Süresi) | 1 | 20 | |
| Final (Sınav Süresi + Sınav Hazırlık Süresi) | 1 | 40 | |
| Toplam İşyükü : | |||
| Toplam İşyükü / 30(s) : | |||
| AKTS Kredisi : | |||
| Diğer Notlar | Yok |
|---|