Programlama Temelleri
Bu kitap, programlamayla ilk kez karşılaşan öğrenciler için Python ile algoritmik düşünme ve temel programlama becerilerini geliştirmek amacıyla hazırlanmıştır.
Buradaki amaç yalnızca Python sözdizimini öğrenmek değildir. Bir problemi küçük adımlara ayırmayı, kısa bir kodun ne yaptığını açıklamayı, programın çıktısını çalıştırmadan önce tahmin etmeyi, hataları sistematik biçimde araştırmayı ve çözümünüzü örneklerle doğrulamayı da öğreneceksiniz.
Kitabı nasıl kullanmalısınız?
Bölümlerde yeni kavramlar küçük örneklerle tanıtılır. Uygulamalar mümkün olduğunda şu sırayı izler:
Oku/Tahmin Et → Çalıştır → İncele/Düzelt → Değiştir → Üret
Web sürümündeki Python hücreleri tarayıcı içinde çalışır. Kod üzerinde değişiklik yapabilir, Run Code ile sonucu görebilir ve bazı alıştırmalarda ipucu, çözüm ve otomatik geri bildirim kullanabilirsiniz.
PDF sürümünde aynı etkinlikler statik olarak yer alır. Kodu kendi Python ortamınızda çalıştırabilir veya kod okuma ve çıktı tahmin etme görevlerini doğrudan kitap üzerinden yapabilirsiniz.
Bir örneği çalıştırmak, onu anladığınız anlamına gelmez. Özellikle başlangıç bölümlerinde çalıştırmadan önce çıktıyı tahmin etmeyi alışkanlık hâline getirin.
Haftalar
Aşağıdaki sıra dönem boyunca izleyeceğimiz öğrenme yolunu gösterir. Bir bölümü tamamladıktan sonra bölüm başlığının üstündeki gezinme çubuğuyla önceki haftaya, sonraki haftaya veya bu sayfaya dönebilirsiniz.
Hafta 1
Program, algoritma ve ilk Python programı
Programlamanın amacı, algoritma–program ayrımı, sözde kod, girdi–işlem–çıktı ve ilk Python programı.
Hafta 2
Değişkenler, türler ve ifadeler
Değişkenler, temel veri türleri, kullanıcı girdisi, tür dönüşümü ve ifadeler.
Hafta 3
Koşullar ve girdi doğrulama
if, elif, else, bileşik koşullar, sınır değerleri ve geçersiz girdileri ele alma.
Hafta 4
while, koşullu tekrar ve kod izleme
Koşula bağlı tekrar, sayaç ve biriktirici kullanımı, yürütme izleme ve yaygın döngü hataları.
Hafta 5
for, range ve döngü problem kalıpları
Sayma, arama, özetleme, sentinel yaklaşımı ve tekrarlanan işlemlerin problem çözmede kullanımı.
Hafta 6
Fonksiyonlara giriş
Fonksiyon tanımı ve çağrısı, parametre, dönüş değeri ve problemi küçük parçalara ayırma.
Hafta 7
Fonksiyon tasarımı ve doğrulama
Kapsam, varsayılan parametreler, saf fonksiyonlar, fonksiyon sözleşmeleri, assert ve sınır durumları.
Hafta 8
String işlemleri
İndeksleme, dilimleme, arama, dönüştürme, biçimlendirme ve metin doğrulama.
Hafta 9
Listeler, demetler ve referans sezgisi
Liste ve demet işlemleri, değiştirilebilirlik, aliasing ve sığ kopya sezgisi.
Hafta 10
Sözlükler, kümeler ve koleksiyon seçimi
Anahtar–değer modeli, üyelik, benzersizlik, frekans sayımı ve uygun koleksiyonu seçme.
Hafta 11
İç içe kayıtlar ve küçük veri işleme
İç içe koleksiyonlarla kayıt tutma; filtreleme, gruplama, güncelleme ve özetleme.
Hafta 12
Dosyalar ve basit CSV
Metin dosyaları ve CSV verisiyle okuma, yazma ve küçük veri işleme görevleri.
Hafta 13
İstisnalar, modüller ve hata ayıklama
İstisnaları ele alma, kodu modüllere ayırma ve hataları sistematik biçimde araştırma.
Hafta 14
Bütünleştirici mikro uygulama
Dönem boyunca öğrenilen kavramları küçük bir uygulamada birlikte kullanma.
İlk bölümde, bir çözüm fikrinin nasıl açık adımlara ve ardından çalıştırılabilir koda dönüştüğünü inceleyerek başlayacağız.