Programlama Temelleri

Bu kitap programlamayı ilk kez öğrenecek öğrenciler için yazıldı. Dönem boyunca Python dilini kullanacağız. Daha önce hiç kod yazmamış olmanız sorun değil.

Bu derste ne öğreneceksiniz?

Bir dersten aldığınız üç notun ortalamasını hesaplayıp dersi geçip geçmediğinizi söyleyen bir program düşünün. Bu işi kâğıt üzerinde siz de yaparsınız: notları toplar, üçe böler, sonucu 50 ile karşılaştırırsınız. Bilgisayara aynı işi yaptırmak için bu adımları tek tek ve doğru sırayla yazmanız gerekir. Bir işi yapmak için izlenen bu sıralı adımlara algoritma, algoritmanın bilgisayarın çalıştırabileceği bir dilde yazılmış hâline program denir.

Python’ın yazım kurallarını (söz dizimi) öğrenmek işin yalnız bir parçası. Bu kitapta şunları da yapabilir hâle geleceksiniz:

  • Ortalama problemini “notları al, topla, böl, 50 ile karşılaştır” gibi küçük adımlara ayırmak.
  • Birkaç satırlık bir kodun ne yaptığını kendi cümlelerinizle anlatmak.
  • Kodu çalıştırmadan önce ekrana ne yazacağını tahmin etmek.
  • Program yanlış sonuç verdiğinde hatanın hangi satırda olduğunu adım adım aramak.
  • Programı 49, 50 ve 51 gibi değerlerle deneyip gerçekten doğru çalıştığını göstermek.

Bölümler nasıl ilerler?

Her bölüm tanımlarla değil, bir soruyla açılır. Kavramları o soruyu cevaplarken, gerek duyduğumuz yerde tanımlarız.

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

Parça Ne işe yarar
Bu bölümün kapsamı Sınavda neyin sorulacağını, neyin yalnız bilgi için verildiğini ayırır
Açılış sorusu Haftanın konusunu tek soruda toplar
Etkinlikler Tahmin et, çalıştır, incele ve düzelt, değiştir, üret
Sınav provası Sınavdakiyle aynı biçimde, beş seçenekli sorular
Tek sayfa özet Sınavdan önce okunacak kısa liste
Bu bölümün kazanımları Bölümü bitirince yapabilmeniz gerekenler

Alıştırmalar çoğunlukla şu sırayla ilerler:

Oku/Tahmin Et → Çalıştır → İncele/Düzelt → Değiştir → Üret

Sitedeki bazı kod kutularında Run Code düğmesi bulunur. Bu kutulara kod hücresi denir. Hücredeki kod tarayıcıda çalışır, bunun için bilgisayarınıza bir şey kurmanız gerekmez. Kodu değiştirip Run Code düğmesiyle sonucu görebilirsiniz. Bazı alıştırmalarda ipucu, çözüm ve kodunuzu kontrol eden otomatik geri bildirim de açılır.

PDF sürümünde aynı alıştırmalar var, ama hücreler çalışmaz. Kodu kendi bilgisayarınıza kurduğunuz Python ile deneyebilirsiniz (kurulumu 1. bölümde yapacağız). Kod okuma ve çıktı tahmini alıştırmalarını PDF üzerinden de çözebilirsiniz.

ImportantCevap anahtarını mutlaka okuyun

Sınav provasının cevap anahtarı yalnız doğru şıkkı söylemez. Her yanlış şıkkın neden doğru gibi göründüğünü ve neden yanlış olduğunu da açıklar. Yanlış şıklar rastgele yazılmadı. Bu konularda öğrencilerin gerçekten yaptığı hatalardan seçildi. Soruyu çözdükten sonra anahtarı okumadan geçmeyin. En çok şeyi orada öğrenirsiniz.

Sınav biçimi

Vize ve final beş seçenekli, 25 soruluk çoktan seçmeli sınavlardır. Sorular çoğunlukla tanım sormaz, bir kod parçasıyla başlar: “Bu kod ne yazdırır?”, “Bu program neden yanlış sonuç veriyor?” ya da “Bu iki yazım neden farklı çalışıyor?” gibi.

Kitaptaki sınav provası soruları çalışmanız için orada. Sınavda aynı kazanımları ölçen başka sorular çıkar. Kitabı çalışmak sizi sınava hazırlar, ama sınav soruları kitaptakilerin aynısı olmaz.

Bölüm başındaki kapsam kutusu

Her bölüm, kapsamı ikiye ayıran bir kutuyla başlar:

  • Sınavda sorulur: bölümün ana konuları, sınav soruları bunlardan gelir.
  • Sınav dışı (bilgi amaçlı): konuyu genişleten ama ezberlemeniz beklenmeyen ayrıntılar.
ImportantÇalıştırmadan önce tahmin edin

Bir kodu çalıştırıp doğru sonucu görmek, onu anladığınızı göstermez. Özellikle ilk bölümlerde her kodu çalıştırmadan önce ekrana ne yazacağını tahmin edin. Tahmininiz tutmazsa kodun hangi satırını yanlış okuduğunuzu bulun.

Haftalar

Bölümleri dönem boyunca bu sırayla işleyeceğiz. Her bölümün başlığının üstündeki gezinme çubuğuyla önceki ya da sonraki haftaya geçebilir, 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, kodu satır satır izleme ve sık yapılan döngü hataları.

Hafta 5

for, range ve döngü problem kalıpları

Sayma, arama ve özetleme kalıpları, girişin bittiğini bildiren özel değer (sentinel) ve tekrarlanan işlemlerle problem çözme.

Hafta 6

Fonksiyonlara giriş

Fonksiyon tanımlama ve çağırma, 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 (iki adın aynı listeyi göstermesi) ve sığ kopya.

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 ve CSV dosyalarını okuma, dosyaya yazma ve dosyadaki veriyle küçük hesaplar.

Hafta 13

İstisnalar, modüller ve hata ayıklama

Program çalışırken çıkan hataları yakalama (istisnalar), kodu ayrı dosyalara (modüllere) bölme ve hatanın yerini adım adım bulma.

Hafta 14

Bütünleştirici mikro uygulama

Dönem boyunca öğrendiklerinizi küçük bir uygulamada bir arada kullanma.

Ek çalışmalar

Bu sayfalar isteğe bağlıdır ve yeni konu öğretmez. Bölümlerdeki alıştırmaları bitirdikten sonra çıktı tahmini, hata bulma ve sınır değerleri üzerine tekrar yapmak için kullanabilirsiniz.

NoteEk çalışmaları nasıl kullanmalı?

Çıktı tahmini ve hatalı kod sorularında ilk denemenizi çalıştırmadan yapın. Çözümü açtığınızda yalnız doğru cevabı not etmeyin. Hangi satırda yanıldığınızı bir cümleyle yazın.

İlk bölümde bir çözüm fikrinin önce açık adımlara, sonra çalıştırılabilir koda nasıl dönüştüğünü göreceğiz.

Back to top