Python ile Programlama

Python 20 yılı aşkın süredir geliştirilmekte olan ve dünya devi firmalardan evinde hobi olarak kod yazanlara kadar çok geniş bir kitleye hitap eden genel amaçlı bir programlama dilidir.

 

Ders temel programlama bilgisine sahip kişilere hitap etmektedir. Dersteki hedefimiz, katılımcıları sorun çözebilen ve fikirlerini gerçekleştirebilen Python yazılımcıları yapmaktır. Bu yüzden ders sırasında bir çok proje yapıyor olacağız. Bu projeler önceki projelerin üzerine kurgulanacak ve her gün önceki bilgilerinizi pekiştiriyor ve yeni konular ile ilerliyor olacaksınız.

 

Gereksinimler

Derse katılmadan önce Python çalışmanıza gerek yoktur, en temelden başlayacağız. Başka bir dil biliyorsanız aradaki benzerlik ve farkları da size açıklamaya çalışacağız.

Derste Python 3.4 kullanıyor olacağız, 3.5 ve 3.6 da kullanabilirsiniz. Derste GNU/Linux kullanıyor olacağız. Sizin de sanal ya da gerçek bir kurulum ile katılmanızı istiyoruz. Diğer işletim sistemleri için de desteğimiz kısıtlı kalacaktır, kendi başınızın çaresine bakmanız gerekir.

 

Konular

  • Program nedir?
  • Python programlama dili nedir?
  • Doğal ve Formal dil arasındaki farklar
  • Değerler ve temel veri türleri
  • Değişkenler
    • Değişken isimleri ve Anahtar kelimeler
    • İfadeler
  • İşlemler
    • İşlem terimleri
    • İşlem sırası
    • Kısaltılmış atama işaretleri
    • Karakter dizileri (string) üzerindeki işlemler (basit)
  • Yorum satırları
  • Fonksiyonlar:
    • Tanımı ve kullanımı
    • Çalıştırma akışı
    • Parametreler, argümanlar ve import ifadesi
    • Seçimli parametreler
  • Koşullu Yapılar
    • Mantıksal işlemler
  • Döngüler
    • while
    • for
    • continue
    • break
  • Algoritma
  • Karakter dizileri üzerindeki işlemler (genişletilmiş)
  • Listeler
    • Oluştur, Ekle, Sil, Çokla (clon) vs.
    • Listeler ve for döngüsü
    • Liste parametreleri
    • İç içe listeler
    • Matrisler
    • Karakter dizileri ve listeler (split, join fonksiyonları)
  • Tuple ve Değişkenlik (Mutability)
  • Özyineleme (Recursion)
  • Sözlükler
  • Sınıflar (nesneler, fonksiyonlar ve methodlar)
  • Miras
  • Yığınlar
  • Kuyruklar
  • Bağlı listeler
  • Genel programlama kavramları:
    • Hata ayıklama (debugging),
    • Söz dizimi hatası (syntax error),
    • Program hatası (runtime error),
    • Mantıksal hatalar (semantic error),
    • Deneysel hata ayıklama (experimental debugging)
  • Bilimsel Hesaplama