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.

Bu kitap nasıl kurgulandı?

Her bölüm bir tanım listesiyle değil, bir soruyla başlar. Haftanın kavramları o soruyu cevaplarken, ihtiyaç duyulduğu anda tanımlanır.

Her bölümde aynı parçalar bulunur:

Parça Ne işe yarar
Bu bölümün kapsamı Neyin sınavda sorulacağını, neyin bilgi amaçlı olduğunu baştan ayırır
Açılış sorusu Haftanın tamamını tek bir soruya indirger
Etkinlikler Tahmin et, çalıştır, incele ve düzelt, değiştir, üret
Sınav provası Sınavdaki biçimiyle, beş şıklı maddeler
Tek sayfa özet Sınav öncesi okunacak madde listesi
Bu bölümün kazanımları Bölümü bitirince yapabilmeniz beklenenler

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.

ImportantEn değerli bölüm cevap anahtarıdır

“Sınav provası” maddelerinin cevap anahtarı yalnız doğru şıkkı söylemez; her yanlış şıkkın neden cazip ve neden yanlış olduğunu açıklar. Çeldiriciler uydurma değil, bu konularda gerçekten yapılan hatalardır. Maddeyi çözdükten sonra anahtarı okumadan geçmeyin — asıl öğrenme orada.

Sınav biçimi

Vize ve final beş seçenekli, 25 soruluk çoktan seçmeli sınavlardır. Maddeler tanım sormak yerine çoğunlukla bir kod bloğundan yola çıkar: soru “şu kod ne yazdırır”, “bu program neden yanlış sonuç veriyor” ya da “bu iki yazım neden farklı davranır” biçimindedir.

Kitaptaki “Sınav provası” maddeleri öğretmek içindir; onları önceden görürsünüz. Sınav maddeleri aynı kazanımların farklı örnekleridir; yani kitabı çalışmak sınava hazırlar ama sorular kitaptan birebir kopyalanmaz.

Kapsam işaretleri

Her bölümün başında kapsam ikiye ayrılır:

  • Sınavda sorulur: çekirdek içerik ve ölçme kapsamı.
  • Sınav dışı (bilgi amaçlı): bağlamı genişleten, ezberlenmesi beklenmeyen ayrıntılar.
ImportantHız yerine anlama

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.

Ek çalışma merkezi

Bölümlerdeki temel etkinlikleri tamamladıktan sonra aşağıdaki sayfaları ek tekrar için kullanabilirsiniz. Bu sayfalar yeni konu öğretmekten çok, çıktı tahmini, hata bulma ve sınır durumlarını tekrar ettirmek amacıyla hazırlanmıştır.

NoteEk çalışmalar nasıl kullanılmalı?

Çıktı tahmin ve bozuk kod sorularında ilk denemenizi çalıştırmadan yapın. Çözümü açtıktan sonra yalnız doğru cevabı not etmek yerine, ilk düşüncenizin hangi satırda bozulduğunu bir cümleyle açıklayın.

İ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.

Back to top