|
YZM3013 | Betik Diller | 2+0+0 | AKTS:4 | Yıl / Yarıyıl | Güz Dönemi | Ders Duzeyi | Lisans | Yazılım Şekli | Seçmeli | Bölümü | YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ | Ön Koşul | Yok | Eğitim Sistemi | Yüz yüze | Dersin Süresi | 14 hafta - haftada 2 saat teorik | Öğretim Üyesi | Öğr. Gör. Dr Celal ATALAR | Diğer Öğretim Üyesi | | Öğretim Dili | Türkçe | Staj | Yok | | Dersin Amacı: | Dersin amacı istemci taraflı script dillerinden biri olan Python'ı detaylı olarak incelemektir. Dersin sonunda dersi alan kişilerin Python kodlama konusunda genel bir hakimiyete sahip olması beklenmektedir.
|
Öğrenim Kazanımları | PÖKK | ÖY | Bu dersi başarı ile tamamlayan öğrenciler : | | | ÖK - 1 : | Python hakkında uygulama geliştirebilecek kadar bilgiye sahip olma | 1,3,7 | 1, | ÖK - 2 : | Python programlama dilinde kullanıcı etkişimli (form veya konsol) programlar yazabilme | 1,3,7 | 1, | ÖK - 3 : | Python kütüphanelerini kullanabilme | 1,3,7 | 1, | ÖK - 4 : | Built-in olmayan paket veya modüller çalışabilme yeteneğinin kazandırma | 1,3,7 | 1, | PÖKK :Program öğrenim kazanımlarına katkı, ÖY : Ölçme ve değerlendirme yöntemi (1: Yazılı Sınav, 2: Sözlü Sınav, 3: Ev Ödevi, 4: Laboratuvar Çalışması/Sınavı, 5: Seminer / Sunum, 6: Dönem Ödevi / Proje),ÖK : Öğrenim Kazanımı | |
1. Python Hakkında , Test ve Geliştirme Ortamlarının Kurulumu
2. print Fonksiyonu, Kaçış Dizileri, Yorum Satırları, input Fonksiyonu
3. Değişkenler, Tür Dönüşümleri, Karar Kontrol Yapıları, İşleçler
4. Döngü Kontrol Yapıları, Hata Yakalama
5. Karakter Dizileri, Karakter Dizi Metotları, Karakter Dizilerinin Biçimlendirmek
6. Listeler, Demetler, Liste Metotları, Demet Metotları
7. Sayma Sistemleri, Sayılar, Temel Dosya İşlemleri, Dosya Metotları
8. Binary Dosyalar, Karakter Kodlama, Baytlar, Bayt Dizileri, Sözlükler, Sözlük Metotları
9. Kümleler, Küme Metotları, Fonksiyonlar
10. Gömülü Fonksiyonlar, İleri Düzey Fonksiyonlar
11. Modüller, Nesne Tabanlı Programlama, Sınıflar
12. Nesne Tabanlı Programlama; Sınıf ve Örnek Nitelikleri, Sınıf ve Örnek Metotları, _init_ fonksiyonu ve self
13. Nesne Tabanlı Programlama; @classmethod @staticmethod ve alternatif inşacılar, Sınıf üyeleri, Miras Alma
14. Paketler |
|
Haftalık Detaylı Ders Planı | Hafta | Detaylı İçerik | Önerilen Kaynak | Hafta 1 | Python Hakkında, Python Nasıl Kurulur ve Çalıştırılır, Python 3, Etkileşimli Python | | Hafta 2 | print Fonksiyonu; sep, end, file, flush parametleri, Kaçış Dizileri, Yorum ve Açıklama Cümleleri, Kullanıcıdan Bilgi Alma input Fonksiyonu | | Hafta 3 | Değişkenler, Tip Dönüşümleri, eval, exec ve format Fonksiyonları, Koşullu Durumlar (if, elif , else) , İşleçler (Aritmetik, Karşılaştırma, Bool, Değer Atama, Aitlik, Kimlik) | | Hafta 4 | Döngüler (while, for) , range Fonksiyonu, pass deyimi, break deyimi, continue deyimi, else deyimi, Hata Yakalama (try except, try except as, try except else, try except finally), raise ve assert Fonksiyonları | | Hafta 5 | Karakter Dizilerine; Erişmek, Dilimlemek, Ters Çevirmek, Alfabe Sırasına Göre Dizmek, Üzerinde Değişiklik Yapmak. dir, enumerate ve help fonksiyonları. Karakter Dizilerinin Metotları (replace, split, rsplit, splitlines, lower, upper, islower, isupper, endswith, startswith, capitalize, title, swapcase, casefold, strip, lstrip, rstrip, join, count, index, rindex, find , rfind, center, rjust, ljust, zfill, partition, rpartition,..... ) Karakter Dizilerini Biçimlendirme ve format Fonksiyonu | | Hafta 6 | Listeler; list Fonksiyonu, Liste Öğelerine Erişme, Liste Öğelerini Değiştirme, Listeye Öğe Ekleme, Listeleri Birleştirme, Listeden Öğe Çıkarma, Listeleri Silmek, Listeleri Kopyalama, Liste Üreteçleri
Demetler; Demet Tanımlama, Demet Öğelerine Erişme
Liste Fonksiyonları ( append, extend, insert, remove, reverse, pop, sort, index, count, copy, clear)
Demet Fonksiyonları ( index, count) | | Hafta 7 | Sayma Sistemleri ( Onlu, Sekizli, Onaltılı, İkili). Sayma Sistemlerini Dönüştürme (bin, hex, oct, int fonksiyonları)
Sayılar ve Aritmetik Fonksiyonlar( abs, divmod, max, min, sum). Temel Dosya İşlemleri ( Dosya; oluşturma, yazma, okuma, kapatma, kursoru ileri geri hareket ettirme, değişiklik yapma)
Dosya Metotlarının Niteliği (closed, readable, writable, truncate, mode, name, encoding). | | Hafta 8 | İkili Dosyalar (PDF ve Resim Dosyaları İncelemesi), Karakter Kodlama (repr, ascii, ord ve chr fonksiyonları). Baytlar ve Bayt Dizileri. bytes, decode ve fromhex fonksiyonları ve Bayt Dizilerinin Metotları.
Sözlükler ( Tanımlama, Öğelerine Erişme, Öğe Ekleme, Değişiklik Yapma, Üreçteçleri). Sözlük Metotları ( keys, values, items, get, clear, copy, fromkes, pop, popitem) | | Hafta 9 | Arasınav | | Hafta 10 | Kümeler (Oluşturma, Üreteçler) Küme Metotları( clear, copy, add, difference, discard, remove, intersection, union, pop)
Fonksiyonlar (Tanımlama, Çağırma, Parametreler ve Argümanlar, Sıralı Parametreler, İsimli Parametreler, Varsayılan Değerli Parametreler, Restgele Sayıda İsimsiz Parametre Belirleme, Rastgele Sayıda İsimli Parametre Belirleme, return deyimi, global deyimi) | | Hafta 11 | Gömülü Fonksiyonlar ( abs, round, all, any, ascii, repr, bool, bin, bytes, bytearray, chr, list, set, tuple, complex, float, int, str, dict, ord, oct, hex, eval, exec, dir, filter, map, len, open, pow, reversed, sorted, slice)
İleri Düzey Fonksiyonlar ( lambda fonksiyonları, rekürsif fonksiyonlar, iç içe fonksiyonlar, Üretaçler ( Tanımlama, yield deyimi, next deyimi, yield from deyimi)) | | Hafta 12 | Modüller ( Modül Nedir, Hazır Modüller, Modülleri İçe Aktarılması (import moduladi, from moduladi import ..., from moduladi import ... as farklisim, from moduladi import *)) Modüllerin Özel Nitelikleri ( _doc_ , _name_ , _loader_ , _spec_ , _package_ ) Nesne Tabanlı Programlama ( Giriş, Sınıflar , Sınıf Tanımlama) | | Hafta 13 | Nesne tabanlı Programlama ( Sınıf Nitelikleri, Sınıfların Örneklenmesi, Örnek Nitelikleri, Örnek Metotları, _init_ fonksiyonu ve self deyimi) | | Hafta 14 | Sınıf Metotları, @classmethod bezeyicisi ve cls deyimi, Statik Metotlar, @staticmethod bezeyicisi , @property bezeyicisi)
Sınıf Üyeleri ( Aleni, Gizli, İsim Bulandırma)
Miras Alma ( Taban Sınıflar, Miras Alma Türleri, super Fonksiyonu, object Sınıfı, Çoklu Miras Alma) | | Hafta 15 | Paketler ( Paket Nedir, Paket Türleri ( Standart Paketler, Üçüncü Şahıs Paketler), Paketlerin İçe Aktarılması ( import paket, import paket.modul, from paket import modul, from paket.modul import nitelik_veya_metot, from paket.modul import *)) | | Hafta 16 | Dönem Sonu Sınavı | | |
1 | https://python-istihza.yazbel.com/ | | |
1 | Su, G. 2018; Python Öğreniyorum, Kodlab Yayın Dağıtım | | |
Ölçme Yöntemi | Yöntem | Hafta | Tarih | Süre (Saat) | Katkı (%) | Arasınav | 9 | | 1 | 50 | Dönem sonu sınavı | 16 | | 2 | 50 | |
Öğrenci Çalışma Yükü | İşlem adı | Haftalık süre (saat) | Hafta sayısı | Dönem toplamı | Yüz yüze eğitim | 2 | 14 | 28 | Sınıf dışı çalışma | 3 | 14 | 42 | Arasınav için hazırlık | 2 | 6 | 12 | Arasınav | 1 | 1 | 1 | Dönem sonu sınavı için hazırlık | 3 | 6 | 18 | Dönem sonu sınavı | 2 | 1 | 2 | Toplam Çalışma Yükü | | | 103 |
|