Berk Akademi
Ana Sayfa
ÖZEL KODLAMA DERSLERİ
Yazılım Özel Ders
Tüm birebir programlara genel bakış
Python Yazılım Kursu
Sıfırdan ileri seviyeye birebir Python
Java Yazılım Kursu
OOP odaklı birebir Java eğitimi
AP Computer Science Principles
AP CSP sınav hazırlığı
GRUP DERSLERİ
Python & Django Masterclass
SINIRLI KONTENJAN
Java & Spring Boot Masterclass
SINIRLI KONTENJAN
C# .NET Masterclass
SINIRLI KONTENJAN
VİDEO DERSLER
Sıfırdan Temel Python Kursu
Kendi Hızında Öğren
ÜCRETSİZ
Seviye Testi
Ücretsiz — Python, Java, algoritma seviye testleri
Kariyerini Keşfet
Sertifika Doğrula
Belge numarası ve soyad ile doğrulama

Scratch Projesi Nasıl Planlanır? Oyun Geliştirme Rehberi

scratch-projesi-planlama-oyun-gelistirme-rehberi
Bu yazıda neler var?
  1. Bir Scratch Oyun Fikri Önce Nasıl Planlanır?
  2. Amaç, Karakter, Olay, Kural ve Test Şablonu Nasıl Doldurulur?
  3. Yakalanan Nesneler Oyununun Minimum Oynanabilir Sürümü
  4. Olaylar, Koşullar, Döngüler ve Değişkenler Oyunda Ne İşe Yarar?
  5. Skor, Süre ve Seviye Nasıl Sonradan Eklenir?
  6. Çocuk Tek Başına İlerlesin Diye Nasıl Test ve Hata Ayıklama Yapılır?
  7. Veli Doğrudan Kod Yazmadan Nasıl Rehberlik Edebilir?
  8. Sık Sorulan Sorular

Bir Scratch oyun fikri doğrudan bloklara çevrilmeden önce amaç, karakter, olay, kural ve test başlıklarına ayrılmalıdır. Bu plan, çocuğun ne yapacağını, oyunda neyin hareket edeceğini ve oyunun doğru çalıştığının nasıl anlaşılacağını netleştirir.

En kolay başlangıç yöntemi, fikri “Oyuncu ne yapacak?”, “Kim veya ne hareket edecek?”, “Hangi olay neyi başlatacak?”, “Hangi kurala uyulacak?” ve “Oyunun çalıştığını nasıl anlayacağız?” sorularıyla küçültmektir. Böylece görsel programlama süreci karışık görünen birçok blok yerine, takip edilebilir küçük görevlere dönüşür.

Bir Scratch Oyun Fikri Önce Nasıl Planlanır?

Scratch oyun yapımında ilk adım, bilgisayarın ne yapacağını düşünmeden önce oyuncunun ne yapacağını açıklamaktır. “Uzayda bir oyun yapacağım” veya “Eğlenceli bir macera olacak” fikir vermek için yeterli olabilir; ancak bu cümleler henüz uygulanabilir bir oyun planı değildir.

Uygulanabilir bir fikir, oyuncunun yapacağı görevi ve bu görevin sonucunu açıklar. Örneğin “Oyuncu, hareket eden yıldızı yakalayacak; yıldız yakalanınca bir puan kazanacak ve yıldız başka bir yere geçecek” cümlesi, başlangıç için daha kullanışlıdır. Bu cümlede amaç, karakter, olay ve kural hakkında ipuçları bulunur.

Fikri beş kısa soruya bölün

Bir Scratch projesine başlamadan önce aşağıdaki soruların cevaplarını bir kâğıda, dijital not alanına veya proje günlüğüne yazmak faydalıdır:

  • Amaç: Oyuncu oyunda ne yapmaya çalışacak?
  • Karakter: Oyuncu kimi kontrol edecek ve sahnede hangi nesneler bulunacak?
  • Olay: Oyunu ne başlatacak veya bir davranışı ne tetikleyecek?
  • Kural: Bir şey olduğunda hangi sonuç ortaya çıkacak?
  • Test: Oyunun doğru çalıştığını hangi gözlemlerle anlayacağız?

Bu soruların her birine tek cümleyle cevap vermek başlangıç için yeterlidir. İlk planda bütün ayrıntıları yazmaya çalışmak çocuğu gereksiz kararlarla yorabilir. Önce oynanabilir bir çekirdek oluşturmak, daha sonra ses, animasyon, seviye veya görsel süslemeler eklemek daha sağlıklı bir yoldur.

Her başlığın beklenen çıktısı nedir?

Amaç bölümünün çıktısı, oyuncunun görevidir. “Topları yakala”, “Engellere çarpmadan ilerle” veya “Doğru cevabı seç” gibi cümleler bu bölüme uygundur. Amaç belirsizse oyun ilerledikçe neyin başarı sayılacağı da belirsizleşir.

Karakter bölümünün çıktısı, projede bulunacak temel varlıkların listesidir. Oyuncu karakteri, yakalanacak nesne, engel ve sahne bu listede yer alabilir. İlk sürümde çok fazla karakter eklemek yerine, oyunun çalışması için gereken en az sayıda nesne seçilmelidir.

Olay bölümünün çıktısı, oyunun hangi durumlarda tepki vereceğini gösterir. Oyunun başlaması, bir tuşa basılması, iki nesnenin temas etmesi veya bir mesajın gönderilmesi olaylara örnektir. Buradaki soru şudur: “Bu davranışın başlaması için ne olması gerekiyor?”

Kural bölümünün çıktısı, olaydan sonra gerçekleşecek davranıştır. Örneğin oyuncu nesneye temas ederse nesne kaybolabilir, yeni bir konuma geçebilir veya oyuncuya bir geri bildirim verilebilir. Kural yazılmadığında karakterler hareket etse bile ortada bir oyun döngüsü oluşmayabilir.

Test bölümünün çıktısı ise gözlemlenebilir kontrol cümleleridir. “Oyuncu hareket ediyor mu?”, “Temas gerçekleşince sonuç ortaya çıkıyor mu?”, “Oyun yeniden başlatılınca karakter başlangıç konumuna dönüyor mu?” gibi sorular test planının temelini oluşturur.

İlk fikri küçültmek neden önemlidir?

Çocuklar bazen tek projede hikâye, karakter seçimi, bölüm geçişi, puan, süre, müzik, animasyon ve özel efektlerin tamamını yapmak isteyebilir. Bu istek yaratıcılık açısından değerlidir; ancak bütün özellikleri aynı anda kurmaya çalışmak hata ayıklamayı zorlaştırır.

Bu nedenle ilk hedef “mükemmel görünen oyun” değil, oynanabilir ve test edilebilir oyun olmalıdır. Örneğin ilk sürümde yalnızca bir karakterin hareket etmesi ve bir nesneye temas ettiğinde anlaşılır bir sonuç alınması yeterlidir. Oyun fikri çalıştıktan sonra puan, süre, seviye ve görsel iyileştirmeler eklenebilir.

Amaç, Karakter, Olay, Kural ve Test Şablonu Nasıl Doldurulur?

Amaç, Karakter, Olay, Kural ve Test Şablonu Nasıl Doldurulur?

Şablonu anlamanın kolay bir yolu, “yakalanan nesneler” türünde küçük bir Scratch oyunu tasarlamaktır. Bu örnekte oyuncu bir karakteri hareket ettirir, sahnedeki nesneye ulaşmaya çalışır ve temas gerçekleştiğinde oyun anlaşılır bir tepki verir.

Scratch’te her nesne bir sprite olarak ele alınır; sahnenin arka planı ise oyunun geçtiği görsel alanı oluşturur. Sprite ekleme ve sahne düzenleme akışını öğrenirken Scratch’in resmî başlangıç rehberi kullanılabilir. Olay kategorisindeki başlangıç tetikleyicileri, hareket ve kontrol kategorilerindeki davranış bloklarıyla birlikte düşünülür.

Aşama Çocuğun cevaplayacağı soru Beklenen sonuç Sık karşılaşılan hata
Amaç Oyuncu ne yapmaya çalışacak? “Karakter, nesneye ulaşacak ve onu yakalayacak.” gibi tek cümlelik görev oluşur. Hikâye anlatılır ancak oyuncunun görevi açıkça yazılmaz.
Karakter Kim hareket edecek, hangi nesne yakalanacak? Bir oyuncu karakteri, bir yakalanacak nesne ve bir sahne seçilir. İlk sürüm için gerekli olmayan çok sayıda karakter eklenir.
Olay Oyun veya davranış ne zaman başlayacak? Başlangıçta karakterin konumu ayarlanır; hareket ve temas için tetikleyiciler belirlenir. Bir davranışın ne zaman başlayacağı düşünülmeden bloklar eklenir.
Kural Temas olunca ne olacak? Nesne kaybolur, yer değiştirir veya oyuncuya görsel/sesli bir geri bildirim verilir. Temas algılanır fakat oyuncuya anlaşılır bir sonuç gösterilmez.
Test Oyunun doğru çalıştığını nasıl anlayacağız? Başlangıç, hareket, temas, sonuç ve yeniden başlatma ayrı ayrı kontrol edilir. Yalnızca bir kez çalıştırılır; farklı durumlar denenmez.

1. Amaç: Oyuncunun görevini yazın

Amaç cümlesi mümkün olduğunca kısa olmalıdır. “Oyuncu, karakteri yönlendirerek yıldızı yakalayacak” iyi bir başlangıçtır. Bu cümle, projeye eklenecek her özelliğin gerekli olup olmadığını değerlendirmeye de yardımcı olur.

Örneğin ilk sürümde bir mağara, üç farklı düşman, süre sayacı ve beş bölüm bulunması gerekmeyebilir. Bunlar daha sonra eklenebilir. Önce oyuncunun gerçekten bir karakteri kontrol edip etmediği ve yakalanacak nesneyle etkileşim kurup kurmadığı görülmelidir.

2. Karakter: Sprite ve sahne rollerini ayırın

Karakter bölümünde yalnızca “Kedi ve elma olacak” demek yerine her nesnenin rolünü yazmak daha açıklayıcıdır:

  • Oyuncu sprite’ı: Kullanıcının hareket ettirdiği karakter.
  • Hedef sprite’ı: Yakalanacak veya ulaşılacak nesne.
  • Sahne: Oyunun gerçekleştiği görsel alan.
  • Geri bildirim: Yakalama gerçekleştiğinde gösterilecek mesaj, ses veya görünüm değişikliği.

Bu ayrım, hangi davranışın hangi nesneye ait olduğunu anlamayı kolaylaştırır. Oyuncu karakterinin hareket kodu ile hedef nesnenin temas sonrası davranışı aynı yerde düşünülse bile, görev olarak ayrı ayrı planlanmalıdır.

3. Olay: Başlangıç ve etkileşim tetikleyicilerini belirleyin

Olay, bir davranışın başlamasını sağlayan durumdur. Proje açıldığında veya yeşil bayrakla başlatıldığında karakterin başlangıç konumuna dönmesi bir başlangıç olayıdır. Bir tuşa basılması karakterin yön değiştirmesini başlatabilir. Karakter ile hedef nesnenin temas etmesi ise yakalama sonucunu tetikleyebilir.

Bu aşamada çocuğun kendisine şu soru sorulabilir: “Oyuncu hiçbir tuşa basmazsa ne olacak? Bir tuşa basarsa hangi nesne tepki verecek? Temas gerçekleştiğinde hangi davranış başlayacak?” Soruların amacı doğrudan cevabı vermek değil, davranışların zamanlamasını çocuğun kendisinin kurmasını sağlamaktır.

4. Kural: Yakalama ve kaçırma sonuçlarını netleştirin

Kural, oyunun “eğer bu olursa, şu sonucu göster” mantığıdır. Yakalanan nesneler oyununda temel kural şöyle yazılabilir:

“Oyuncu karakteri hedef nesneye temas ederse hedef nesne başka bir konuma geçer ve yakalama gerçekleştiğini belirten bir geri bildirim gösterilir.”

İlk sürümde kaçırma sonucu ayrıca tanımlanmayabilir. Ancak nesnenin ekranın dışına çıkması veya karakterin yanlış bir alana gitmesi gibi durumlar ortaya çıkıyorsa şu sorular kullanılabilir:

  • Hedef nesne sahnenin dışına çıkarsa ne olacak?
  • Oyuncu karakteri bir engele temas ederse hareket duracak mı?
  • Yakalama gerçekleştiğinde hedef nesne görünür kalacak mı?
  • Oyuncu sonucu ses, mesaj, görünüm değişikliği veya hareket ile mi anlayacak?

Her kuralın oyuncu tarafından fark edilebilir bir sonucu olması önemlidir. Temas gerçekleştiği hâlde ekranda hiçbir değişiklik olmuyorsa çocuk kendi kodunun çalışıp çalışmadığını anlayamaz.

5. Test: Beklenen davranışları önceden yazın

Test bölümü, oyunu oynarken bakılacak davranışların listesidir. Test yazmak yalnızca hata bulmak için değil, hedef davranışı önceden tanımlamak için de kullanılır. Örneğin şu kontrol listesi hazırlanabilir:

  1. Oyun başlatıldığında oyuncu karakteri belirlenen konumda mı?
  2. Karakter, seçilen kontrollerle beklenen yönde hareket ediyor mu?
  3. Hedef nesne sahnede görünüyor mu?
  4. Karakter hedef nesneye temas ettiğinde sonuç oluşuyor mu?
  5. Oyun yeniden başlatıldığında önceki durum temizleniyor mu?

Test sonucunda “çalışmadı” demek yerine hangi adımın başarısız olduğunu yazmak daha yararlıdır. Örneğin “Karakter hareket ediyor, fakat temas sonrası nesne yer değiştirmiyor” cümlesi, sorunu aramayı kolaylaştırır.

Yakalanan Nesneler Oyununun Minimum Oynanabilir Sürümü

Minimum oynanabilir sürüm, oyunun bütün özelliklerini içeren son hâli değildir. Oyuncunun temel görevi gerçekten yapabildiği, oyunun belirgin bir sonuç ürettiği ve yeniden denenebildiği ilk sürümdür. Yakalanan nesneler oyunu için bu sürümde dört davranış yeterlidir: oyuncu karakteri hareket eder, hedef nesne sahnede bulunur, temas bir sonuç oluşturur ve oyun yeniden başlatılabilir.

Buradaki temel yaklaşım önce çalıştır, sonra geliştir ilkesidir. İlk sürümde karakterin görünümü kusursuz, arka planın ayrıntılı veya seslerin profesyonel olması gerekmez. Oyunun mantığı çalışmadan yapılan görsel düzenlemeler, sorunun nerede olduğunu anlamayı zorlaştırabilir.

Uygulama sırası

  1. Sahneyi seçin.

    Oyunun geçeceği sade bir arka plan belirleyin. Beklenen sonuç, karakterin ve hedef nesnenin kolayca görülebildiği boş bir oyun alanıdır. Sık hata, çok hareketli bir sahne seçerek nesnelerin ayırt edilmesini zorlaştırmaktır.

  2. Oyuncu karakterini yerleştirin.

    Karakteri başlangıçta kontrol edilebilecek bir konuma koyun. Beklenen sonuç, oyun her başlatıldığında karakterin tahmin edilebilir bir yerden başlamasıdır. Sık hata, karakterin sahnenin kenarında veya başka bir nesnenin üzerinde başlamasıdır.

  3. Hareketi deneyin.

    Önce yalnızca karakterin hareketini kontrol edin. Olay, hareket ve kontrol kavramlarının birlikte nasıl çalıştığını gözlemleyin. Beklenen sonuç, oyuncunun verdiği komutla karakterin yön değiştirmesi veya ilerlemesidir. Sık hata, hareket davranışını ekledikten sonra hemen temas kuralına geçmek ve hangi kısmın çalışmadığını ayırt edememektir.

  4. Hedef nesneyi konumlandırın.

    Yakalanacak nesneyi karakterin ulaşabileceği bir yere yerleştirin. Beklenen sonuç, hedefin sahnede görünür ve erişilebilir olmasıdır. Sık hata, nesneyi ekranın dışına, karakterin erişemeyeceği bir köşeye veya arka planla aynı renkte bir alana koymaktır.

  5. Teması test edin.

    Karakter ile hedef nesne temas ettiğinde bir koşul değerlendirilmelidir. Bu koşul gerçekleştiğinde nesnenin yer değiştirmesi, görünümünün değişmesi veya kısa bir mesaj göstermesi gibi anlaşılır bir sonuç seçilebilir. Sık hata, temasın yalnızca çok küçük bir alanda algılanması ya da karakterin hedefe ulaşmadan sonuç oluşmasıdır.

  6. Sonucu gözlemleyin.

    Temas sonrası oyunun hâlâ oynanabilir olup olmadığını kontrol edin. Hedef nesne yeni bir konuma geçiyorsa oyuncu tekrar yakalamayı deneyebilmelidir. Beklenen sonuç, oyunun tek bir temastan sonra anlamsız biçimde kilitlenmemesidir. Sık hata, hedef nesneyi tamamen kaldırıp oyuncuya oyunun bitip bitmediğini açıklamamaktır.

  7. Yeniden başlatmayı deneyin.

    Oyunu durdurup yeniden başlatın ve başlangıç durumunun geri gelip gelmediğini kontrol edin. Beklenen sonuç, karakterin başlangıç konumuna dönmesi ve hedef nesnenin yeniden görünür olmasıdır. Sık hata, önceki denemeden kalan konum veya görünüm değişikliğinin yeni oyuna taşınmasıdır.

Blokları kavramlarına göre düşünün

Scratch’te kesin blok adlarını ezberlemekten önce her davranışın hangi kavrama karşılık geldiğini anlamak yararlıdır:

  • Olay: Bir davranışın ne zaman başlayacağını belirler.
  • Hareket: Karakterin veya nesnenin konumunu değiştirir.
  • Koşul: Bir durum gerçekleştiğinde hangi davranışın uygulanacağını seçer.
  • Döngü: Bir kontrolü veya hareketi tekrar tekrar yürütür.
  • Değişken: Daha sonra skor, süre veya yakalama sayısı gibi bilgileri saklamak için kullanılabilir.

Minimum sürümde değişken kullanmak zorunlu değildir. Önce temasın algılanması ve sonuç üretmesi sağlanabilir. Skor veya süre eklenecekse değişkenin hangi bilgiyi tuttuğu ayrıca planlanmalıdır; aksi hâlde ekranda görünen bir sayı olsa bile bu sayının ne zaman ve neden değiştiği belirsiz kalabilir.

Başlatma olayı gerçekleşince
    oyuncu karakterini başlangıç konumuna götür
    hedef nesneyi görünür yap

Oyun sırasında tekrar et
    oyuncu karakterini hareket ettir
    eğer oyuncu hedef nesneye temas ederse
        yakalama sonucunu göster
        hedef nesneyi yeni konuma taşı

Bu akış, Scratch bloklarının metin hâlindeki planıdır. Önce davranış sırasını bu şekilde düşünmek, blokları rastgele birleştirmekten daha güvenlidir. Her satırın ardından şu soru sorulabilir: “Bu davranışı ekranda nasıl fark edeceğim?” Eğer cevap verilemiyorsa, o davranış henüz yeterince açık tanımlanmamış olabilir.

İlk sürüm çalıştıktan sonra ne eklenebilir?

Temel oyun çalıştıktan sonra tek seferde yalnızca bir özellik eklemek daha iyi sonuç verir. Önce hedef nesnenin farklı konumlara geçmesi, ardından bir skor bilgisinin tutulması, daha sonra süre veya seviye mantığının denenmesi planlanabilir.

Her yeni özellikten sonra oyunu yeniden çalıştırıp kısa test listesini tekrar edin. Bir değişiklikten sonra oyun bozulursa son eklenen davranışı geçici olarak kaldırıp temel sürüme dönmek, sorunu bulmayı kolaylaştırır. Bu yöntem çocuğa hatanın başarısızlık değil, incelenmesi gereken bir bilgi olduğunu gösterir.

Olaylar, Koşullar, Döngüler ve Değişkenler Oyunda Ne İşe Yarar?

Yakalanan nesneler oyununda oyuncu bir karakteri hareket ettirir, ekranda beliren nesneye ulaşır ve temas gerçekleştiğinde bir sonuç ortaya çıkar. Bu davranışları anlaşılır hâle getirmek için oyunu dört temel soruyla inceleyebilirsiniz: Ne zaman başlayacak? Hangi durumda karar verilecek? Hangi işlem tekrarlanacak? Değişen bilgiler nerede tutulacak?

Scratch'te bu sorulara karşılık gelen kavramlar olaylar, koşullar, döngüler ve değişkenlerdir. Bunları tek tek ezberlemek yerine oyundaki görevleriyle düşünmek daha kolaydır. Aşağıdaki açıklamalarda her kavram için “oyuncu ne yapar, sistem neyi kontrol eder, beklenen sonuç nedir?” sırasını kullanabilirsiniz.

Olaylar oyunun ne zaman başlayacağını belirler

Olay, bir davranışın hangi anda devreye gireceğini belirleyen başlangıç noktasıdır. Oyuncu yeşil bayrağa bastığında oyun başlayabilir. Bir tuşa basıldığında karakter hareket edebilir. Bir mesaj gönderildiğinde yeni bölüm açılabilir. Buradaki amaç, oyundaki her davranışın ne zaman başlatılacağını açıkça belirlemektir.

  • Oyuncu ne yapar? Yeşil bayrağa basar, yön tuşlarından birine dokunur veya oyundaki başka bir etkileşimi gerçekleştirir.
  • Sistem neyi kontrol eder? Başlangıç sinyalinin, tuş hareketinin ya da başka bir olayın gerçekleşip gerçekleşmediğini kontrol eder.
  • Beklenen sonuç nedir? Karakterin hareket etmesi, oyunun başlaması veya yakalanacak nesnenin görünmesi gibi belirli bir davranış ortaya çıkar.

Yakalanan nesneler oyununda başlangıç olayı yalnızca karakteri ekrana getirmek için kullanılmaz. Skorun eski oyundan kalan değerini temizlemek, nesneyi başlangıç konumuna taşımak ve oyunun ilk durumunu hazırlamak için de kullanılır. Bu nedenle “oyun başladı” anı, projenin temiz bir başlangıç yapmasını sağlayan önemli bir kontrol noktasıdır.

Sözde akış şu şekilde düşünülebilir:

  1. Oyun başlatma sinyali geldiğinde oyunu hazırla.
  2. Skoru başlangıç değerine getir.
  3. Karakteri başlangıç konumuna yerleştir.
  4. Yakalanacak nesneyi görünür hâle getir.
  5. Oyuncunun hareket etmesini bekle.

Bu adımlardan biri başlangıçta yapılmazsa oyun bazen ilk çalıştırmada doğru, sonraki çalıştırmada yanlış davranabilir. Örneğin skor sıfırlanmazsa oyuncu yeni oyuna eski puanla başlayabilir.

Koşullar oyunun karar vermesini sağlar

Koşul, sistemin “Eğer bu durum gerçekleştiyse ne yapmalıyım?” sorusuna cevap vermesidir. Yakalanan nesneler oyununda en temel koşul, karakter ile nesnenin temas edip etmediğidir. Temas yoksa oyun devam eder; temas varsa nesne başka bir konuma taşınabilir ve skor artırılabilir.

  • Oyuncu ne yapar? Karakteri sağa, sola, yukarı veya aşağı hareket ettirir.
  • Sistem neyi kontrol eder? Karakterin nesneye dokunup dokunmadığını ve oyun süresinin devam edip etmediğini kontrol eder.
  • Beklenen sonuç nedir? Temas varsa yakalama davranışı gerçekleşir; temas yoksa karakter hareket etmeye devam eder.

Koşul bulunmayan bir oyunda sistem, oyuncunun nesneye gerçekten ulaşıp ulaşmadığını anlayamaz. Bu durumda nesne sürekli yer değiştirebilir, skor her hareketten sonra artabilir veya oyun hiçbir zaman “yakalandı” sonucuna ulaşmayabilir.

Bir koşulu planlarken sonucu da önceden yazmak yararlıdır:

Eğer karakter nesneye dokunuyorsa nesneyi yeni bir konuma taşı ve skoru artır. Aksi durumda karakterin hareketini sürdür.

Burada “dokunuyorsa” karar noktasıdır. “Yeni konuma taşı” ve “skoru artır” ise koşul doğru olduğunda yapılacak işlemlerdir. Çocuk, koşulu kurarken kendisine şu soruyu sorabilir: “Sistem bu durumu hangi gözleme bakarak anlayacak?” Bu soru, görünüşte çalışan ancak aslında hiçbir şeyi kontrol etmeyen blok dizilerini fark etmeye yardımcı olur.

Döngüler sürekli tekrarlanan kontrolleri yürütür

Döngü, aynı kontrolün veya davranışın tekrar tekrar yürütülmesini sağlar. Bir karakterin tuşa basılı olduğu sürece hareket etmesi ya da nesneye temas olup olmadığının oyun devam ettiği sürece kontrol edilmesi döngü gerektirebilir.

  • Oyuncu ne yapar? Karakteri hareket ettirir ve nesneye yaklaşır.
  • Sistem neyi kontrol eder? Hareket girişini ve temas durumunu tekrar tekrar kontrol eder.
  • Beklenen sonuç nedir? Oyuncu yeni bir hareket yaptıkça karakter tepki verir; temas gerçekleştiğinde yakalama kuralı çalışır.

Döngüyü bir “oyunun nabzı” gibi düşünebilirsiniz. Oyun yalnızca bir kez temas kontrolü yaparsa, oyuncu o anda nesneye dokunmuyorsa sonraki temasları fark etmeyebilir. Sürekli tekrarlanan kontrol sayesinde sistem oyunun değişen durumunu izler.

Yakalanan nesneler oyunu için sade sözde akış şöyledir:

  1. Oyun başladıktan sonra sürekli olarak oyuncunun hareketini kontrol et.
  2. Karakterin konumunu buna göre değiştir.
  3. Karakter nesneye dokunuyorsa yakalama işlemini başlat.
  4. Temas yoksa kontrolü sürdür.

Döngülerin içine yanlış davranış yerleştirmek sık rastlanan bir hatadır. Örneğin nesneyi tek bir yakalamadan sonra yeni konuma taşımak yerine, temas koşulunu dikkate almadan sürekli taşırsanız oyuncu nesneyi takip etmekte zorlanır. Bu nedenle döngü “her zaman yapılacak işlem” ile “yalnızca belirli durumda yapılacak işlem” arasındaki farkı korumalıdır.

Değişkenler oyunun değişen bilgilerini temsil eder

Değişken, oyun sırasında değeri değişebilen bilgiyi saklar. Skor, kalan süre, seviye numarası, yakalanan nesne sayısı veya oyuncunun canı değişken olarak düşünülebilir. Değişkeni, oyunun hafızasındaki etiketli bir kutu gibi tasarlayabilirsiniz: Kutunun adı sabit kalır, içindeki değer oyun ilerledikçe değişir.

  • Oyuncu ne yapar? Nesneyi yakalar veya yeni bir seviyeye geçer.
  • Sistem neyi kontrol eder? Hangi olaydan sonra hangi bilginin değişmesi gerektiğini kontrol eder.
  • Beklenen sonuç nedir? Yakalama sonrasında skor artar, süre azalır veya seviye bilgisi güncellenir.

Değişken kullanırken iki farklı işlemi birbirinden ayırmak önemlidir. Bir değeri belirli bir başlangıç noktasına getirmek başka, mevcut değeri artırmak veya azaltmak başkadır. Yeni oyun başlarken skorun başlangıç değerine ayarlanması gerekir. Her yakalamada ise mevcut skora yeni bir puan eklenir.

Scratch'in resmî yardım içeriğinde değişken oluşturma işlemi “Make a Variable” olarak, belirli bir değer verme işlemi “set” ve mevcut değeri değiştirme işlemi “change” mantığıyla açıklanır. Değişkenin sahnede görülmesi veya gizlenmesi de ayrı bir görünürlük tercihi olarak ele alınabilir. Ayrıntılı blok açıklamaları için Scratch'in değişken oluşturma açıklamasına bakılabilir.

Bu kavramları tek bir oyun davranışında birleştirirsek ortaya şu mantık çıkar:

  1. Oyun başlatma olayı geldiğinde skor değerini başlangıç durumuna getir.
  2. Döngü içinde karakterin hareketini ve nesneyle temasını sürekli kontrol et.
  3. Temas koşulu doğruysa nesnenin yakalandığını kabul et.
  4. Yakalama gerçekleştiğinde skoru değiştir.
  5. Nesneyi yeni bir konuma taşı ve kontrolü sürdür.

Bu akışta görsel blokları metin koduna çevirmek gerekmiyor. Önemli olan, her davranışın bir başlangıcı, bir kontrolü, bir sonucu ve gerekiyorsa tekrar noktası olmasıdır. Böyle düşündüğünüzde Scratch algoritması, ekrandaki renkli blokların sıralamasından çok daha anlaşılır bir plana dönüşür.

Skor, Süre ve Seviye Nasıl Sonradan Eklenir?

Skor, Süre ve Seviye Nasıl Sonradan Eklenir?

Minimum oynanabilir sürüm çalıştıktan sonra yeni özellikleri tek tek eklemek en güvenli yöntemdir. Önce oyuncunun nesneyi yakaladığı ve oyunun bunu doğru biçimde algıladığı doğrulanır. Ardından skor eklenir. Skor güvenilir biçimde çalışıyorsa süre sınırı denenir. En son nesnenin hızını, sayısını veya davranışını değiştiren seviye mantığı eklenir.

Bu sıra, her yeni özelliğin bir önceki davranış üzerine kurulmasını sağlar. Birden fazla özelliği aynı anda eklemek, hata çıktığında sorunun hangi değişiklikten kaynaklandığını anlamayı zorlaştırır.

1. Önce skoru ekleyin

Ön koşul: Karakter nesneye dokunduğunda yakalama kuralı yalnızca bir kez çalışmalı ve nesne yeni bir konuma taşınmalıdır.

Küçük görev: Oyun başlangıcında skoru başlangıç değerine getir. Her başarılı yakalamada mevcut skoru bir puan artır.

Beklenen sonuç: Oyun yeni başladığında skor temiz bir başlangıç yapar. Oyuncu nesneye her ulaştığında skor artar; karakter nesneye dokunmadığında skor değişmez.

Sık hata: Skorun başlangıçta sıfırlanmaması veya temas kontrolünün döngü içinde çok hızlı biçimde tekrar çalışmasıdır. İkinci durumda tek bir temas, oyuncu nesneden uzaklaşana kadar skoru birden fazla kez artırabilir.

Teşhis için şu soruyu sorun: “Bir yakalama gerçekleştiğinde skor kaç kez değişiyor?” Beklenen cevap bir yakalamada bir değişimdir. Değer art arda yükseliyorsa temas sonrası nesnenin yeni konuma taşınması ya da yakalama davranışının yeniden tetiklenmesini önleyen mantık incelenmelidir.

2. Sonra süre sınırı ekleyin

Ön koşul: Skor, başlangıç ve yakalama durumlarında doğru çalışmalıdır. Oyunun ne zaman biteceği de tek cümleyle tanımlanmalıdır: “Süre bittiğinde hareket ve puan kazanma duracak.”

Küçük görev: Oyun başladığında kalan süreyi belirli bir başlangıç değerine getir. Oyun devam ederken bu değeri düzenli biçimde azalt. Değer sona ulaştığında oyunun bittiğini belirten bir durum oluştur.

Beklenen sonuç: Süre ilerledikçe oyuncu kalan zamanı takip eder. Süre sona erdiğinde yeni yakalamalar puana eklenmez ve oyun davranışları durur veya sonuç ekranına geçer.

Sık hata: Sürenin durmaması, oyunun bitiş durumuna geçmesine rağmen döngünün çalışmaya devam etmesi ya da oyunun yeniden başlatılmasında sürenin eski değerinden devam etmesidir.

Süre özelliğinde yalnızca sayacın azalmasına odaklanmayın. “Süre bittiğinde hangi davranışlar artık çalışmamalı?” sorusunu da cevaplayın. Karakter hareket etmeye, temas kontrolü yapılmaya veya skor artmaya devam ediyorsa süre kontrolü oyunun bütün davranışlarına bağlanmamış olabilir.

3. En son seviye mantığını deneyin

Ön koşul: Skor ve süre ayrı ayrı test edilmiş olmalıdır. Seviye değişiminin neye göre gerçekleşeceği açıkça yazılmalıdır. Örneğin belirli bir skora ulaşmak veya belirli sayıda nesne yakalamak seviye geçişini başlatabilir.

Küçük görev: Seviye bilgisini saklayan bir değer belirle. Seviye değiştiğinde yalnızca tek bir davranışı değiştirerek başla: Nesne daha hızlı hareket etsin, yeni konumlar daha sık seçilsin veya yakalanacak nesne sayısı artsın.

Beklenen sonuç: Seviye değiştiğinde oyuncu fark edilebilir ama anlaşılır bir zorluk artışı görür. Önceki seviyenin davranışı tamamen kaybolur ve yeni seviye kuralı devreye girer.

Sık hata: Seviye değişmesine rağmen eski hızın veya eski nesne davranışının devam etmesidir. Bunun nedeni, başlangıç seviyesinde verilen bir hareket kuralının yeni seviyede de çalışması olabilir. Başka bir sık hata, seviye değerinin birden fazla kez artırılmasıdır. Koşul sürekli doğru kaldığında sistem aynı geçişi tekrar tekrar uygulayabilir.

Bu nedenle seviye eklerken küçük bir sınır belirleyin: “Bu testte yalnızca seviye değeri değişecek” veya “Bu testte yalnızca nesnenin hızı değişecek.” Böylece beklenmeyen bir davranış ortaya çıkarsa inceleyeceğiniz alan daralır.

Yeni özellik eklemeden önce üç soruluk karar çerçevesi

  • Oyunun temel amacı çalışıyor mu? Oyuncu nesneyi yakalayabiliyor ve sistem bunu doğru algılıyor mu?
  • Yeni özellik anlaşılır mı? Oyuncu skorun, sürenin veya seviyenin neyi değiştirdiğini gözlemleyebiliyor mu?
  • Hata ayıklaması tek seferde yapılabilir mi? Özellik eklendiğinde hangi davranışın test edileceği belli mi?

Bu üç sorudan birine “hayır” cevabı veriliyorsa yeni özellik eklemek yerine mevcut davranışın daha küçük bir parçasını test etmek daha doğrudur. İyi bir Scratch projesi çok sayıda özellikle değil, her özelliğin neden var olduğunun anlaşılmasıyla gelişir.

Çocuk Tek Başına İlerlesin Diye Nasıl Test ve Hata Ayıklama Yapılır?

Hata ayıklama, oyunda yanlış giden her şeyi bir yetişkinin düzeltmesi değildir. Çocuğun sorunu gözlemleyip küçük bir tahmin yapması, tek bir değişiklik uygulaması ve sonucu yeniden kontrol etmesidir. Bu yöntem, çocuğun yardım beklemeden ilerlemesini ve “çalışmadı” demek yerine “hangi adım beklediğim gibi olmadı?” diye düşünmesini sağlar.

Her görevden sonra kullanılabilecek basit test döngüsü şöyledir:

  1. Tek bir davranış seç: Örneğin karakterin sağa hareket etmesi veya temas sonrası skorun artması.
  2. Beklenen sonucu söyle: “Sağ tuşa bastığımda karakter sağa gitmeli.”
  3. Oyunu çalıştır: Testi aynı başlangıç koşulunda yap.
  4. Gözlemle: Gerçekte ne olduğunu, beklenen sonuçtan nasıl ayrıldığını not et.
  5. Yalnızca bir değişiklik yap: Bir bloğun yerini değiştir, tek bir koşulu incele veya tek bir başlangıç değerini düzelt.
  6. Yeniden dene: Değişiklikten sonra aynı testi tekrarla.

Bu döngünün amacı her denemede oyunu baştan tasarlamak değil, sorunun yerini daraltmaktır. Çocuk bir seferde beş farklı şeyi değiştirirse oyun düzelmiş olsa bile hangi değişikliğin işe yaradığını bilemez. Ayrıca yeni bir hata eklenip eklenmediğini de anlayamaz.

Kontrol soruları doğrudan çözümden daha öğreticidir

Veli, “Şu bloğu buraya taşı” demek yerine çocuğun kendi gözlemini yapmasını sağlayacak sorular sorabilir. Sorular kısa, tarafsız ve tek bir davranışa odaklanmalıdır.

  • Oyun başladığında ne olması gerekiyordu?
  • Karakter gerçekten hareket ediyor mu, yoksa yalnızca kostümü mü değişiyor?
  • Nesneye dokununca hangi kural devreye girmeliydi?
  • Sorun her denemede mi oluyor, yoksa yalnızca belirli bir durumda mı ortaya çıkıyor?
  • Son değişiklikten önce oyun çalışıyor muydu?
  • Skor veya süre değerinin ne zaman değişmesi gerekiyordu?
  • Değişkenin değeri beklenen anda mı değişiyor?
  • Oyun yeniden başlatıldığında başlangıç durumu temizleniyor mu?

Çocuğun cevabını beklemek önemlidir. Veli cevabı hemen söylemek yerine “Bunu nasıl test edebiliriz?” diye sorabilir. Örneğin skor artmıyorsa doğrudan ilgili bloğu göstermek yerine “Temas gerçekleştiğinde sistemin bunu fark ettiğini nasıl anlayabiliriz?” sorusu kullanılabilir. Çocuk, değişken değerini gözlemlemeyi veya nesnenin konumunu takip etmeyi kendisi deneyebilir.

Algoritmik düşünme becerisini pekiştirmek isteyen çocuklar, algoritma mantığını ölçen ücretsiz bilgi testi üzerinden hangi düşünme adımlarını daha fazla çalışabileceklerini de görebilir. Buradaki amaç sonucu ezberlemek değil, bir problemi küçük ve kontrol edilebilir adımlara ayırma alışkanlığı kazanmaktır.

Yakalanan nesneler oyununda sık görülen hatalar

Yanlış sprite üzerinde blok kullanmak

Karakterin hareket etmesi gerekirken hareket blokları nesneye eklenmiş olabilir. Bu durumda kod çalışıyor gibi görünür ancak oyuncunun kontrol ettiği karakter tepki vermez. Test sırasında her sprite'ı ayrı ayrı seçip o sprite'ın hangi davranışlardan sorumlu olduğunu söylemek yararlıdır.

Başlangıç durumunu sıfırlamamak

Skor, süre, seviye veya nesnenin konumu yeni oyun başladığında önceki denemeden kalan değeri taşıyabilir. Beklenen gözlem, yeşil bayrağa her basıldığında oyunun aynı temiz başlangıç durumuna dönmesidir.

Koşulu hiç kontrol ettirmemek

Skorun her hareketten sonra artması, temas kuralının doğru yerde kontrol edilmediğini gösterebilir. Beklenen gözlem, karakter nesneye dokunmadığında skorun sabit kalmasıdır.

Döngüyü yanlış davranışa bağlamak

Döngü içinde nesnenin sürekli yer değiştirmesi veya oyunun süresi bittikten sonra da hareketlerin sürmesi, tekrarın yanlış davranışı kapsadığını düşündürür. Döngünün içindeki her işlem için “Bu işlem gerçekten sürekli mi yapılmalı?” sorusu sorulmalıdır.

Birden fazla değişikliği aynı anda yapmak

Skor, süre ve seviye aynı anda değiştirilirse hangi özelliğin hataya neden olduğunu bulmak zorlaşır. Önceki çalışan sürümü korumak, bir özelliği ekledikten sonra test etmek ve gerekirse son değişikliği geri almak daha güvenli bir çalışma düzenidir.

Veli için kısa hata ayıklama kontrol listesi

Kontrol Beklenen gözlem
Oyun başlatıldı mı? Karakter, nesne, skor ve süre başlangıç durumuna dönüyor.
Karakter doğru sprite mı? Oyuncu hareket verdiğinde yalnızca kontrol edilmesi gereken karakter tepki veriyor.
Temas kuralı çalışıyor mu? Nesneye dokunmadan skor değişmiyor; dokununca belirlenen yakalama davranışı gerçekleşiyor.
Değişken doğru anda değişiyor mu? Skor yakalamada, süre oyun devam ederken, seviye ise belirlenen koşulda değişiyor.
Son değişiklik etkili oldu mu? Aynı test tekrarlandığında yalnızca beklenen davranış farklılaşıyor.
Oyun bitince davranışlar duruyor mu? Süre sona erdiğinde hareket, temas ve puan kazanma kuralları planlandığı biçimde duruyor.

Bu listeyi çocuğun yerine cevaplamak için değil, çocuğun kendi gözlemini düzenlemek için kullanın. Her satırda önce beklenen sonucu söylemesini, ardından oyunu çalıştırıp gerçekten ne gördüğünü anlatmasını isteyin. Böylece hata ayıklama, rastgele blok taşıma işleminden çıkar ve planlı bir inceleme sürecine dönüşür.

Veli Doğrudan Kod Yazmadan Nasıl Rehberlik Edebilir?

Velinin Scratch projesindeki temel rolü, oyunu çocuğun yerine tamamlamak değil, düşünme sürecini görünür kılmaktır. Çocuk bir karakterin hareket etmesini, nesnenin yakalanmasını veya skorun artmasını isterken hemen doğru bloğu söylemek kısa vadede işe yarıyor gibi görünebilir. Ancak bu yaklaşım, çocuğun benzer bir sorunla karşılaştığında yeniden yardım beklemesine neden olabilir.

Daha kalıcı öğrenme için veli, çözümü doğrudan vermek yerine çocuğun problemi tanımlamasına, tahminde bulunmasına, küçük bir test yapmasına ve sonucu yorumlamasına yardımcı olabilir. Böylece hata, başarısızlık olarak değil, oyunun hangi bölümünün incelenmesi gerektiğini gösteren bir ipucu olarak ele alınır.

Önce çocuğun planını anlattırın

Yardım istemeden önce çocuktan projesini kendi cümleleriyle anlatmasını isteyin. Çocuk henüz kodu tamamlamamış olsa bile nasıl bir oyun düşündüğünü açıklayabilir. Bu anlatım sırasında amaç, karakter, olay ve kural arasındaki bağlantılar daha kolay fark edilir.

  • Oyuncu bu oyunda ne yapmaya çalışıyor?
  • Oyuncunun kontrol ettiği karakter hangisi?
  • Oyunda hangi olay gerçekleşince bir tepki oluşacak?
  • Karakter nesneye değdiğinde tam olarak ne olmasını istiyorsun?
  • Oyuncu başarılı olduğunu nasıl anlayacak?
  • Oyun ne zaman bitecek veya yeni bir aşamaya geçecek?

Çocuğun açıklaması dağınık olabilir. Bu, plan yapamadığı anlamına gelmez. Veli burada eksik yerleri hemen doldurmak yerine, tek bir soruyla düşünmeyi biraz daha netleştirebilir. Örneğin “Oyuncu puan kazanacak” cevabından sonra “Puan kazanıldığını ekranda nasıl görecek?” diye sorulabilir.

Yardımı üç seviyede kademeli olarak verin

Her sorunda aynı miktarda yardım vermek yerine, desteği aşamalı biçimde artırmak çocuğun bağımsız ilerlemesine yardımcı olur. Aşağıdaki sıra, doğrudan çözüm söylemeden rehberlik etmek için kullanılabilir.

Yardım seviyesi Veli ne yapar? Beklenen sonuç Sık hata
1. Planı anlattırma Çocuktan oyunun amacını ve son çalışan adımı açıklamasını ister. Çocuk problemi kendi diliyle tanımlar. Veli, çocuk anlatmayı bitirmeden çözümü söylemeye başlar.
2. Problemi küçültme Hareket, temas, skor veya görünüm gibi tek bir parçaya odaklanır. Çocuk küçük bir bölümü ayrı test eder. Birden fazla sorunu aynı anda düzeltmeye çalışmak.
3. Örnek davranış gösterme Gerekirse benzer bir durumu nasıl test edeceğini gösterir; kodu çocuğun yerine yazmaz. Çocuk yöntemi görür ve kendi projesine uyarlamayı dener. Örneği doğrudan kopyalanacak hazır çözüme dönüştürmek.

İlk seviyede soru sormak yeterliyse ikinci seviyeye geçmek gerekmez. Çocuk problemi kendi başına açıklayabiliyorsa, ona yeni bir ipucu eklemek yerine test yapması için zaman tanımak daha yararlı olabilir.

“Şu bloğu ekle” yerine ne sorulabilir?

Scratch projesinde bir şey çalışmadığında, doğrudan blok adı söylemek yerine olayın ve kuralın ne olduğunu sorgulamak gerekir. Örneğin karakter hareket etmiyorsa şu sorular kullanılabilir:

  • Bu hareketin başlamasını hangi olay tetikliyor?
  • Karakterin hareket etmesini hangi koşul durduruyor?
  • Bu davranış bir kez mi, sürekli mi gerçekleşmeli?
  • Oyuncu tuşa bastığında karakterin ne yapmasını bekliyorsun?
  • Karakter gerçekten hareket etmiyor mu, yoksa sahnenin dışına mı çıkıyor?

Karakter nesneye değdiği hâlde skor artmıyorsa sorular değişmelidir:

  • Karakter nesneye gerçekten temas ediyor mu?
  • Sorun hareketten mi, teması algılamaktan mı kaynaklanıyor?
  • Temas gerçekleştiğinde skor değişiyor mu?
  • Skor değişkeninin başlangıç değeri doğru mu?
  • Nesne temas sonrasında aynı yerde görünmeye devam ettiği için tekrar mı algılanıyor?

Bu soruların amacı çocuğu sorguya çekmek değil, sorunu parçalara ayırmaktır. Bir Scratch oyunu aynı anda hareket, temas, değişken ve görünüm sorunları içerebilir. Hepsini birlikte incelemek yerine bir tanesini seçmek, test sonucunu daha anlaşılır hâle getirir.

“Son çalışan adım hangisiydi?” sorusunu kullanın

Hata ayıklarken en işe yarayan sorulardan biri “Son çalışan adım hangisiydi?” sorusudur. Çocuk, projesinin ne zaman bozulduğunu hatırlamaya çalışarak değişiklikleri geriye doğru inceleyebilir.

Örneğin önce karakter hareket ediyor, ardından nesneye temas ettiğinde hiçbir tepki vermiyorsa hareket bölümünün tamamen bozuk olduğu varsayılmamalıdır. Hareket çalışıyor olabilir; sorun temas kuralında veya temas sonrasında yapılması gereken davranışta bulunabilir.

Çocuğu şu sırayla düşünmeye yönlendirebilirsiniz:

  1. Beklenen davranışı tek cümleyle söyle.
  2. Gerçekte ne olduğunu gözlemle.
  3. Beklenti ile sonuç arasındaki farkı belirle.
  4. Son çalışan bölümü bul.
  5. Yalnızca bir küçük değişiklik yap.
  6. Projeyi yeniden çalıştır ve sonucu kaydet.

Bir kerede beş farklı şeyi değiştirmek, sorunu çözse bile hangi değişikliğin işe yaradığını belirsiz bırakır. Çocuk, küçük değişiklikler yaparak hem daha güvenli test eder hem de kendi çözüm yöntemini geliştirir.

Hata yapmayı gözlem ve test fırsatına dönüştürün

Çocuğun yaptığı her hata hemen düzeltilmesi gereken bir durum değildir. Karakterin yanlış yöne gitmesi, skorun beklenmedik biçimde artması veya oyunun erken bitmesi; projenin içindeki bir kuralın çocuk tarafından yeniden incelenmesi için fırsat oluşturabilir.

Veli, “Yanlış yapmışsın” demek yerine “Bu sonuç sana hangi kuralın farklı çalıştığını düşündürüyor?” diyebilir. Böylece çocuk yalnızca doğru cevabı aramaz; gözlem yapar, tahmin kurar ve tahminini test eder.

Yine de çocuğun uzun süre aynı noktada kalmasına izin vermek, yardım etmemenin tek başına doğru olduğu anlamına gelmez. Amaç çocuğu zor durumda bırakmak değil, yardımın dozunu ayarlamaktır. Önce soru sorulur, sonra sorun küçültülür, en son gerekirse örnek bir test yöntemi gösterilir.

Veli için kısa rehberlik kontrol listesi

  • Çocuğun açıklamasını kesmeden dinledim mi?
  • Oyunun amacını ve beklenen davranışı netleştirdik mi?
  • Sorunu tek bir parçaya ayırabildik mi?
  • Hareket, temas, değişken veya görünüm bölümlerinden hangisini test ettiğimizi biliyor muyuz?
  • Son çalışan adımı bulduk mu?
  • Bir kerede yalnızca bir değişiklik yaptık mı?
  • Çocuğa kendi tahminini söylemesi için yeterli zaman verdim mi?
  • Hazır çözümü kopyalatmak yerine test yöntemini mi gösterdim?
  • Çocuk, yaptığı değişikliğin nedenini kendi cümlesiyle açıklayabiliyor mu?

Bu yaklaşımda başarı, projenin en kısa sürede tamamlanması değildir. Çocuğun bir problemi tanımlayabilmesi, küçük bir deneme yapabilmesi ve sonucu yorumlayabilmesi daha değerli bir kazanımdır. Veli çözümü elinden almak yerine doğru soruyu sorduğunda, çocuk yardım beklemeden ilerlemeyi öğrenir.

Sık Sorulan Sorular

Scratch oyununa başlamadan önce neden plan yapmak gerekir?

Plan yapmak, oyunun amacı, karakterleri, olayları ve kuralları arasındaki ilişkiyi önceden görmeyi sağlar. Çocuk hangi davranışı önce oluşturacağını bildiğinde, projenin tamamını aynı anda yapmaya çalışmaz. Amaç, karakter, olay, kural ve test adımlarını belirlemek; oyunu minimum oynanabilir sürümden başlayarak geliştirmeyi kolaylaştırır.

Yakalanan nesneler oyununda önce skor mu yoksa hareket mi yapılmalıdır?

Önce hareket ve yakalama davranışı oluşturulmalıdır. Oyuncunun karakteri kontrol edebilmesi ve karakterin nesneyle temas edebilmesi, oyunun temel oynanabilir bölümünü oluşturur. Bu bölüm çalıştıktan sonra skor eklemek daha anlaşılır olur; aksi hâlde skorun artmamasının hareketten mi, temastan mı veya değişken kuralından mı kaynaklandığını ayırmak zorlaşabilir.

Scratch projesi çalışmıyorsa çocuk hangi soruları kendisine sormalıdır?

Çocuk önce beklediği davranışı ve gerçekte olan sonucu karşılaştırmalıdır. Ardından “Bu olay ne zaman gerçekleşiyor?”, “Hangi kural bu davranışı başlatıyor?”, “Sorun hareketten mi temastan mı kaynaklanıyor?”, “Son çalışan adım hangisiydi?” ve “Yalnızca bir küçük değişiklik yapıp yeniden test ettim mi?” sorularını sorabilir.

Veli, çocuğa çözümü söylemeden Scratch projesinde nasıl yardımcı olabilir?

Veli, çocuktan projesini anlatmasını isteyebilir, sorunu küçük bir bölüme ayırabilir ve yönlendirici sorular sorabilir. Örneğin doğrudan belirli bir blok önermek yerine olayın ne zaman gerçekleştiğini, oyuncunun sonucu nasıl anlayacağını veya hangi bölümün en son çalıştığını sorabilir. Gerekirse hazır kod yazmak yerine nasıl küçük bir test yapılacağını gösterebilir.

Bir Scratch oyununa yeni özellik eklemenin doğru zamanı nasıl anlaşılır?

Oyunun temel davranışı çalışıyor, oyuncu ne yapacağını anlayabiliyor ve mevcut hatalar takip edilebilir durumdaysa yeni özellik eklemek için uygun bir aşamaya gelinmiş demektir. Önce minimum oynanabilir sürüm tamamlanmalı; ardından skor, süre, seviye veya yeni karakter gibi özellikler tek tek eklenmelidir. Yeni özellik mevcut temel davranışı sürekli bozuyorsa önce temel sürüm sadeleştirilip yeniden test edilmelidir.

Scratch projesinde amaç, yalnızca çalışan bir oyun ortaya çıkarmak değil; fikri planlayıp küçük adımlarla geliştirmeyi ve hatalardan öğrenerek ilerlemeyi keşfetmektir.

Bu içerik aradığın cevabı verdi mi?
Yanıtın, hangi yazıları geliştirmemiz gerektiğini anlamamıza yardımcı olur.
Bu içeriğin üretilmesinde yapay zeka araçlarından destek alınmıştır.

Bu konudan sonra ne okuyabilirsin?

Tüm yazılar

İlgili Eğitimler

Berk Keskin — Yazılım Geliştirici ve Eğitmen
Yazar

Berk Keskin Kimdir?

Yazılıma 12 yaşında başladı; bugün öğrencinin seviyesine ve hedefine göre şekillenen sürdürülebilir öğrenme sistemleri tasarlıyor. 500'den fazla kişiye ezber değil, düşünerek kod yazmayı öğretti — Berk Akademi'de izlemeye değil üretmeye dayalı öğrenme kültürünü o kuruyor.

WhatsApp Hemen Ara