Ders Adı İleri Programlama
Ders Kodu IAT-3255
Dersin Türü Zorunlu
Ders Biriminin Seviyesi Ön Lisans
Yıl 2
Dönem 3.Yarıyıl
AKTS 3
Dersi Veren(ler) Dr. Öğr. Üyesi Birkan BÜYÜKARIKAN
Dersin Yardımcıları
Ders İşleme Biçimi Yüz Yüze
Önkoşul Dersleri
Dersin İçeriği Bu dersin içeriği, temel Python programlamanın yanı sıra diziler, çizim, sembolik hesaplama, bilimsel algoritmalar, nesne yönelimli programlama ve rastgele değişkenleri içerir. Öğrenciler NumPy, Matplotlib, Math ve diğerleri gibi popüler Python paketleriyle tanıştırılacaklardır. Ayrıca dosyalama uygulamalarını da öğrenecektir.
Dersin Verildiği Diller Türkçe
Dersin Amacı Dersin temel amacı, belirlenen yüksek seviyeli programlama diline (Python, C# gibi) hakim olup, ileri programlama tekniklerini kullanarak uygulama geliştirmek.
No Dersin Kazanımları  
1 Python programlama dilini tanır.
2 Python ile nesne tabanlı programlar uygulama becerisi kazanır.
3 Python'daki veri türlerini ve yapılarını kavrar.
4 Sorunları bilimsel hesaplamalarla çözer.
5 Hesaplama sonuçlarını görselleştirebilir.
6 Dosya sistemleri ve regex kullanılan işlemleri tanımlayabilir.
7 Python'da kullanılan kapsülleme, kalıtım ve polimorfizm gibi Nesne Tabanlı Programlama kavramlarını ifade eder.
DERSİN KAZANIMLARI / PROGRAM YETERLİKLERİ İLİŞKİ MATRİSİ
DKPY1PY2PY3PY4PY5PY6PY7PY8
1
2
3
4
5
6
7
5-Çok Yüksek İlişkili 4- Yüksek İlişkili 3-Orta İlişkili 2- Zayıf İlişkili 1-Çok Zayıf İlişkili 0-İlişkisiz
Hafta Konular  
1 Programlamaya giriş, temel kavramlar ve kullanılan editörlerin tanıtımı.
2 Veri tipleri ve Karar mekanizmaları
3 Döngüler ve Kontrol ifadeleri
4 Kontrol yapıları, Liste, Tuple, Dictionary
5 Matrisler (Çoklu listeler)
6 Matematiksel İşlemler
7 Dahili fonksiyonlar ve modüller
8 Exception yakalama ve Debug etme
9 Metinsel işlemler
10 Nesneye yönelik programlama - Method aşırı yükleme - Statik ve Sınıf İçi methodlar - Sınıf özelliklerine erişme
11 İleri Seviye Sınıflar - Sınıfı dökümante etmek - Kapsülleme - Soyut sınıflar - Sınıf dekoratörleri
12 Veri işleme
13 Veri görselleştirme
14 Çoklu Thread ve Çoklu İşleme - Thread senkronizasyonu - Rlock & Semaphore - Global interpreted - Çoklu işlem modülü
No Bölüm Öğrenme Çıktısı Katkı Düzeyi
1 Genel veya mesleki orta öğretimde kazanılan yeterlilikler üzerine kurulan ve orta öğretim düzeyi üzerindeki dersler-uygulama araç ve gereçleri ile desteklenen bir alandaki bilgi ve becerilere sahip olur ve o alandaki temel kavramları kavradığını gösterir 4
2 Bilgisayar Ağları ve İnternet programcılığı alanında tanımı iyi yapılmış problemlerin çözümü için gerekli olan verileri tanımlama, toplama ve kullanmayı etkin bir biçimde yapar; pratik uygulamalarda gereken teorik bilgileri, el ve/veya düşünsel becerileri kullanabildiğini gösterir 4
3 Bilgisayar Ağları ve İnternet programcılığı alanı ile ilgili tasarımları ve uygulamaları çalışma arkadaşlarına, üstlerine ve hizmet verdiği kişi ve gruplara açık bir biçimde anlatabilir; takım çalışması yapabilir 4
4 Bilgisayar Ağları ve İnternet programcılığı alanında bağımsız olarak öğrenmeyi ve öğrendiklerini uygulayabildiğini gösterir 4
5 Bilgisayar Ağları ve İnternet programcılığı ile ilgili çalışmalarda öngörülmeyen durumlarla ilgili sorunları belirleme ve çözüm arama yeteneğini kazandığını gösterir 4
6 Sorumluluğu altında çalışanların performanslarını objektif olarak değerlendirebilir ve denetleyebilir 3
7 Alanında yeterli olacak düzeyde yabancı dil bilgisine sahip olur 3
8 Mesleğinin gerektirdiği yazılım ve donanımları kullanabilir 3
Yarıyıl İçi Çalışmaları Sayısı Katkı Payı
Ara Sınav 1 50
Kısa Sınav 0 0
Ödev 0 0
Devam 0 0
Uygulama 1 30
Labaratuvar 1 20
Proje 0 0
Atölye 0 0
Seminer 0 0
Arazi Çalışması 0 0
Sözlü sınav 0 0
Portfolyo 0 0
Doküman İncelemesi 0 0
Performans değerlendirme 0 0
Sunum 0 0
Alan Çalışması 0 0
Vaka Çalışması 0 0
Video Kaydı 0 0
Öz değerlendirme 0 0
Akran Değerlendirme 0 0
Eşleştirme Testleri 0 0
Çoktan seçmeli test 0 0
Kısa Cevaplı test 0 0
Kontrol listeleri 0 0
Dereceleme Ölçekleri 0 0
Zihin Haritalama 0 0
Araştırma yazısı 0 0
Çevrimiçi anket 0 0
Çevrimiçi Kısa sınav 0 0
TOPLAM 0
Yıliçinin Başarıya Oranı 40
Finalin Başarıya Oranı 60
TOPLAM 100
AKTS kredilerinin belirlenmesinde öğrenci işyükü anketlerinden faydalanılmaktadır.
Etkinlik Sayısı Süresi Toplam
Ders Süresi (Sınav Haftaları Hariç) 14 2 28
Sınıf Dışı Ders Çalışma Süresi 14 2 28
Ödevler 0 0 0
Sunum 0 0 0
Proje 0 0 0
Laboratuar Çalışması 14 2 28
Arazi ya da Alan Çalışması 0 0 0
Ara Sınavlar 1 0 0
Yarıyıl Sonu Sınavı 1 0 0
İşyükü Saati (30) 0
Toplam İşyükü / Saat 84    
Dersin Akts Kredisi 3    
Ders Notu 1) Kent D. Lee, ""Python Programming Fundamentals"", 2nd edition, Springer 2) Tony Gaddis, ""Starting out With Python"", 4th edition, Pearson"
Diğer Kaynaklar 1) Kent D. Lee, ""Python Programming Fundamentals"", 2nd edition, Springer 2) Tony Gaddis, ""Starting out With Python"", 4th edition, Pearson"
Materyal
Dökümanlar 1) Kent D. Lee, ""Python Programming Fundamentals"", 2nd edition, Springer 2) Tony Gaddis, ""Starting out With Python"", 4th edition, Pearson"
Ödevler
Sınavlar
Materyal Diğer
Planlanmış Öğrenme Faaliyetleri ve Öğretim Yöntemleri