Bir cümlelik özet
Scratch, komutları renkli blokları sürükleyerek yazdığımız görsel bir programlama ortamıdır; bu derste arayüzü tanıyıp yeşil bayrağa tıklanınca konuşan ve hareket eden ilk projemizi yapıyoruz.
Neden önemli?
Önceki derste bir algoritmayı adım adım yazmayı öğrendik. Ama o adımları kâğıda yazdığımızda ekranda hiçbir şey olmadı. Şimdi aynı düşünce biçimini alıp gerçekten çalışan bir programa çevireceğiz.
Scratch bunun için iyi bir başlangıçtır çünkü metin yazmak yerine hazır blokları birleştiririz. Bir noktalı virgülü unutup hata almazsın; yalnızca blokları doğru sıraya dizersin. Böylece dikkatini kodun mantığına, yani algoritmaya verebilirsin.
Ben Scratch'i ilk açtığımda ekranda çok fazla bölüm görünce şaşırmıştım. Bu yüzden önce her bölümün ne işe yaradığını sakince tanıyacağız, sonra ilk projemizi yapacağız.
Kısa tanım: Scratch, MIT tarafından geliştirilen, blokları sürükleyip birleştirerek program yazdığımız ücretsiz bir görsel kodlama ortamıdır.
Scratch nedir ve nerede kullanılır?
Scratch, animasyon, oyun, hikâye ve etkileşimli projeler yapmak için kullanılan bir platformdur. İnternet tarayıcısında scratch.mit.edu adresinden çevrimiçi çalışabilir; istersek "Scratch Desktop" uygulamasını bilgisayara kurup internetsiz de kullanabiliriz.
Scratch'te bir metin dilindeki gibi harf harf komut yazmayız. Bunun yerine, üzerinde hazır komut yazan blokları alır ve lego parçaları gibi birbirine geçiririz. Her blok bir işi yapar: "10 adım git", "Merhaba de", "1 saniye bekle" gibi.
Metin kodu değil, blok dizisi
Bu önemli bir fark: Scratch görsel bir blok dilidir. Bir metin editörüne yazıp "çalıştır" demeyiz. Blokları kod alanına sürükler, alt alta birleştirir ve yeşil bayrağa tıklarız.
Bu derste programları böyle blok dizileri olarak göstereceğim:
yeşil bayrağa tıklandığında
"Merhaba" de
Yukarıdaki iki satır iki ayrı bloktur ve üst üste birleşmiştir.
Arayüzü tanıyalım
Scratch'i açtığında ekran birkaç ana bölüme ayrılmıştır. Şimdi bunları tek tek tanıyalım.
Sahne (Stage)
Sağ üstteki büyük beyaz alan sahnedir. Projenin sonucunu burada görürüz; karakterler burada hareket eder, konuşur ve oyunlar burada oynanır.
Sahnenin sağ üstünde iki düğme vardır:
- Yeşil bayrak: Projeyi başlatır.
- Kırmızı sekizgen (dur): Çalışan her şeyi durdurur.
Kuklalar / Sprites
Sahnedeki karakterlere kukla (İngilizcesi *sprite*) denir. Yeni bir proje açtığında karşına genellikle turuncu bir kedi kukla çıkar; Scratch'in maskotu odur.
Sahnenin altındaki kukla listesinden yeni kuklalar ekleyebilir, silebilir veya seçebilirsin. Yazdığın kodlar, o an seçili olan kuklaya aittir.
Blok paletleri
Ekranın solunda renkli kategoriler vardır. Her renk bir blok paletini temsil eder:
- Hareket (Motion) — mavi: "10 adım git", "15 derece dön" gibi konum blokları.
- Görünüm (Looks) — mor: "Merhaba de", "kılığı değiştir" gibi görünüm blokları.
- Ses (Sound) — pembe: ses çalma blokları.
- Olaylar (Events) — sarı: "yeşil bayrağa tıklandığında" gibi başlatıcı bloklar.
- Kontrol (Control) — turuncu: "bekle", "tekrarla", "eğer ... ise" blokları.
- Algılama (Sensing) — açık mavi: "kenara değiyor mu?" gibi sorular.
- Değişkenler (Variables) — koyu turuncu: sayı ve puan saklama blokları.
Kod alanı (Script area)
Ortadaki geniş boşluk kod alanıdır. Blokları paletten buraya sürükler ve birleştiririz. Bir kuklayı çalıştıran blok yığınına genellikle kod veya script denir.
İlk proje: Konuşan ve hareket eden kedi
Şimdi öğrendiklerimizi kullanarak küçük bir program yapalım. Amaç: Yeşil bayrağa tıklayınca kedi "Merhaba" desin ve biraz sağa yürüsün.
Adım 1: Başlatıcı bloğu koy
Her projenin bir başlangıcı olmalı. Olaylar (Events) paletinden yeşil bayrağa tıklandığında bloğunu kod alanına sürükle. Bu blok, projenin ne zaman çalışacağını söyler.
Adım 2: Konuşma bloğunu ekle
Görünüm (Looks) paletine geç. "Merhaba!" de bloğunu sürükle ve ilk bloğun tam altına yaklaştır. Bloklar birbirine yaklaşınca gri bir gölge belirir; işte o an bırakırsan blok yerine oturur ve birleşir.
Adım 3: Hareket bloğunu ekle
Hareket (Motion) paletinden 10 adım git bloğunu al ve konuşma bloğunun altına birleştir. İstersen içindeki sayıya tıklayıp 50 yazarak kedinin daha uzağa yürümesini sağlayabilirsin.
Bitmiş programın blok dizisi
yeşil bayrağa tıklandığında
"Merhaba!" de
50 adım git
Adım 4: Çalıştır
Sahnenin üstündeki yeşil bayrağa tıkla. Kedi önce "Merhaba!" konuşma balonunu gösterir, sonra sağa doğru kayar. İşte ilk projeni çalıştırdın!
Programı durdurmak istersen kırmızı dur düğmesine basabilirsin.
İkinci örnek: Önce yürüsün, sonra selam versin
Blokların sırasını değiştirince sonuç da değişir. Aynı üç bloğu farklı sırayla dizelim:
yeşil bayrağa tıklandığında
50 adım git
"Buraya geldim!" de
Bu sefer kedi önce yürür, sonra konuşur. Bu, geçen dersteki sıralama fikrinin Scratch'teki karşılığıdır: blokların sırası sonucu belirler.
Mini uygulama
Kendi projeni yap. Yeşil bayrağa tıklandığında kuklan şunları sırayla yapsın:
- "Selam, ben hazırım!" desin.
- 30 adım gitsin.
- 1 saniye beklesin (Kontrol paletindeki
1 saniye beklebloğu). - "Görüşürüz!" desin.
Blok dizin şuna benzemeli:
yeşil bayrağa tıklandığında
"Selam, ben hazırım!" de
30 adım git
1 saniye bekle
"Görüşürüz!" de
Çalıştırdıktan sonra kendine sor: Kukla beklediğim sırayla mı hareket etti? Değilse hangi bloğu taşımam gerekir?
Uygulama laboratuvarı: Scratch Arayüzü ve İlk Proje
Scratch Arayüzü ve İlk Proje konusunu kalıcı hâle getirmenin en iyi yolu, kavramı küçük ve ölçülebilir bir göreve dönüştürmektir. Bu çalışmada Scratch nedir ve nerede kullanılır? ile Arayüzü tanıyalım arasındaki ilişkiyi kullanarak çalışan bir Scratch sahnesi, blok düzeni ve test listesi hazırlayacaksın. Amaç yalnız sonucun çalışması değil; hangi kararı neden verdiğini, neyi test ettiğini ve hangi durumda tasarımı değiştireceğini açıklayabilmektir.
Görev senaryosu
Şu senaryoyu ele al: basketbol atışlarını sayan ve seviye yükselten sahne. Dersin ana hedefi “Scratch arayüzünü tanı; sahne, kuklalar ve blokları kullanarak ilk projeni yap” olduğuna göre önce problemi tek cümleyle tanımla. Ardından sistemin alacağı girdiyi, uygulayacağı işlemi ve üreteceği çıktıyı ayrı ayrı yaz. Bilmediğin bir ayrıntı varsa onu varsayım olarak işaretle; varsayımı gerçek bilgi gibi kullanma.
- Planla: Başlangıç durumunu, beklenen sonucu ve kullanacağın kavramları yaz.
- En küçük sürümü kur: Yalnız temel davranışı çalıştır; süsleme ve ek özellikleri sonraya bırak.
- Üç test hazırla: Normal bir durum, sınırda bir durum ve hatalı ya da beklenmeyen bir durum seç.
- Sonucu kaydet: Beklenen ile gerçekleşeni yan yana yaz; fark varsa olası nedeni belirt.
- Tek değişiklik yap: Aynı anda birçok şeyi değiştirmek yerine bir kararı düzeltip testi yeniden çalıştır.
Başarı ölçütleri
- Yeşil bayrakla başlangıç durumu doğru kuruluyor mu?
- Olaylar yalnız gerektiğinde mi çalışıyor?
- Değişkenler anlaşılır adlarla mı kullanıldı?
- Klon veya döngü sayısı kontrol altında mı?
- Oyun yeniden başlatıldığında önceki durum temizleniyor mu?
“Scratch Arayüzü ve İlk Proje” çalışmasını bitirdiğinde ürünü bir arkadaşına yalnız bölüm başlıklarıyla anlat. Arkadaşın basketbol atışlarını sayan ve seviye yükselten sahne senaryosundaki adımları ve karar nedenlerini takip edebiliyorsa anlatım yeterince açıktır. Anlaşılmayan noktayı daha fazla terim ekleyerek değil, Scratch nedir ve nerede kullanılır? ve Arayüzü tanıyalım ilişkisini daha küçük adımlara bölerek düzelt.
Sık yapılan hatalar
Başlatıcı bloğu unutmak
Sadece "10 adım git" bloğunu koyup yeşil bayrağa tıklarsan bir şey olmaz. Kodun en üstünde yeşil bayrağa tıklandığında gibi bir olay bloğu bulunmalıdır.
Blokları birleştirmemek
Bloklar birbirine değecek kadar yaklaşmazsa ayrı ayrı dururlar ve tek bir program gibi çalışmazlar. Gri gölge belirene kadar sürükle, sonra bırak.
Yanlış kuklayı seçmek
Kodu yazarken kukla listesinden yanlış kuklayı seçmiş olabilirsin. Kod, o an seçili kuklaya yazılır. Yeşil bayrağa bastığında hiçbir şey olmuyorsa, doğru kuklayı seçtiğinden emin ol.
Yanlış paletten blok aramak
"Merhaba de" bloğunu Hareket paletinde ararsan bulamazsın; o blok Görünüm paletindedir. Rengi hatırlamak yardımcı olur: konuşma morudur, hareket mavidir.
Güvenlik notu
Scratch ekran başında yapılan bir çalışmadır. Uzun süre ekrana bakmamak için her 20–30 dakikada bir kısa mola ver ve gözlerini dinlendir.
Projelerini paylaşmak istersen bunu bir yetişkinle birlikte yap. Çevrimiçi ortamda gerçek adını, okulunu veya adresini yazma; kullanıcı adı olarak kişisel bilgi içermeyen bir takma ad seç.
Ders özeti
- Scratch, blokları sürükleyip birleştirerek program yazdığımız görsel bir kodlama ortamıdır.
- Arayüz sahne, kuklalar, blok paletleri ve kod alanından oluşur; yeşil bayrak başlatır, kırmızı düğme durdurur.
- Her blok paleti bir renkle temsil edilir: Hareket mavi, Görünüm mor, Olaylar sarı, Kontrol turuncu.
- Bir program yazmak için blokları alt alta birleştiririz; başta bir olay bloğu bulunmalıdır.
- Blokların sırası sonucu belirler; sırayı değiştirmek davranışı değiştirir.
Kontrol soruları
- Scratch'te komutları nasıl yazarız: harf harf metin olarak mı, yoksa blokları sürükleyerek mi?
- Sahnedeki karakterlere ne ad verilir?
- Bir projeyi başlatan düğme hangisidir?
- "Merhaba de" bloğu hangi renk paletinde bulunur?
yeşil bayrağa tıklandığındabloğu hangi kategoridedir ve ne işe yarar?
Cevaplar
- Blokları sürükleyip birleştirerek yazarız. Scratch görsel bir blok dilidir, metin kodu yazmayız.
- Kukla (İngilizcesi *sprite*) denir.
- Sahnenin sağ üstündeki yeşil bayrak.
- Mor renkli Görünüm (Looks) paletinde.
- Olaylar (Events) paletindedir ve projenin ne zaman başlayacağını belirler; yeşil bayrağa tıklanınca altındaki bloklar çalışır.
Kaynak ve doğrulama notu
“Scratch Arayüzü ve İlk Proje” dersi için doğrulama odağı Scratch nedir ve nerede kullanılır? ile Arayüzü tanıyalım arasındaki ilişkinin örnekler üzerinde tutarlı çalışmasıdır. Blok adları Scratch’in güncel temel kategorileriyle uyumlu tutulmuştur. Proje davranışı; başlangıç, normal oyun, hata ve yeniden başlatma durumlarında ayrı ayrı denenmelidir.
Sonraki ders
Hareket ve Koordinat Sistemi: Kuklayı sahnede istediğimiz noktaya götürmek için x ve y koordinatlarını kullanmayı öğreniyoruz.