Scratch gibi görsel programlama araçlarıyla basit projeler.
Konu Anlatımı
5. Sınıf Bilişim Teknolojileri ve Yazılım – Blok Tabanlı Programlama (Scratch vb.) Konu Anlatımı
Günümüzde teknoloji hayatımızın her alanına girmiş durumdadır. Bilgisayarlar, telefonlar, tabletler ve hatta akıllı ev aletleri bile yazılımlar sayesinde çalışır. Peki bu yazılımlar nasıl oluşturulur? İşte bu sorunun cevabı programlama kavramında gizlidir. 5. Sınıf Bilişim Teknolojileri ve Yazılım dersi kapsamında öğreneceğimiz Blok Tabanlı Programlama (Scratch vb.) konusu, programlama dünyasına atılacağımız ilk ve en eğlenceli adımdır.
Programlama Nedir?
Programlama, bilgisayara belirli bir görevi yerine getirmesi için verilen komutlar bütünüdür. Bilgisayarlar kendi başlarına düşünemez ya da karar veremez; onlara ne yapmaları gerektiğini adım adım söylememiz gerekir. Bu adım adım verilen talimatlara algoritma denir. Algoritmayı bir bilgisayarın anlayacağı dilde yazdığımızda ise ortaya bir program çıkar. Programlamayı günlük hayattaki bir yemek tarifiyle karşılaştırabiliriz: nasıl ki bir yemek tarifinde malzemeler ve yapılış adımları sırasıyla yazılırsa, programlamada da bilgisayara yapılacak işler sırasıyla söylenir.
Blok Tabanlı Programlama Nedir?
Blok tabanlı programlama, karmaşık kod satırları yazmak yerine hazır komut bloklarını sürükleyip bırakarak program oluşturmamızı sağlayan bir yöntemdir. Bu yöntemde her bir blok belirli bir komutu temsil eder. Bloklar yapboz parçaları gibi birbirine eklenir ve böylece bir program meydana gelir. Blok tabanlı programlama özellikle çocuklar ve programlamaya yeni başlayanlar için büyük kolaylık sağlar çünkü kod yazarken yapılan yazım hatalarını (söz dizimi hatalarını) ortadan kaldırır.
Blok tabanlı programlama araçları arasında en popüler olanı Scratch programıdır. Bunun yanı sıra mBlock, Code.org, Blockly ve Tynker gibi araçlar da blok tabanlı programlama mantığıyla çalışır. 5. Sınıf Bilişim Teknolojileri ve Yazılım dersinde genellikle Scratch üzerinden uygulamalar yapılır.
Scratch Nedir?
Scratch, Amerika Birleşik Devletleri'ndeki MIT (Massachusetts Teknoloji Enstitüsü) Medya Laboratuvarı tarafından geliştirilmiş, ücretsiz bir blok tabanlı programlama ortamıdır. Scratch sayesinde animasyonlar, oyunlar, hikâyeler ve interaktif projeler oluşturabilirsiniz. Scratch'in en büyük avantajı, internet tarayıcısı üzerinden çalışabilmesi ve tamamen ücretsiz olmasıdır. Ayrıca Scratch'in Türkçe dil desteği de bulunmaktadır; bu da 5. sınıf öğrencilerinin programlamayı kendi dillerinde öğrenmelerini kolaylaştırır.
Scratch Arayüzünü Tanıyalım
Scratch programını açtığımızda karşımıza birkaç önemli bölüm çıkar. Bu bölümleri iyi tanımak, program yazmamızı çok kolaylaştıracaktır.
Sahne (Stage): Sahne, projemizin çalıştığı ve sonuçların görüntülendiği alandır. Sahne varsayılan olarak beyaz bir arka plana sahiptir ancak biz bunu istediğimiz gibi değiştirebiliriz. Sahnenin boyutu 480x360 pikseldir ve x-y koordinat düzlemi üzerinde çalışır.
Kukla (Sprite): Kukla, sahnede hareket eden ve komutları yerine getiren karakterdir. Scratch ilk açıldığında varsayılan kukla olarak turuncu renkli bir kedi görünür. Kukla kütüphanesinden farklı kuklalar seçebilir, kendi kuklalarımızı çizebilir veya bilgisayarımızdan kukla yükleyebiliriz.
Blok Paleti: Sol tarafta bulunan bu alan, kullanabileceğimiz tüm komut bloklarını içerir. Bloklar kategorilere ayrılmıştır ve her kategorinin kendine özel bir rengi vardır. Bu sayede blokları bulmak ve birbirinden ayırt etmek oldukça kolaydır.
Kodlama Alanı (Betik Alanı): Ortada bulunan geniş boş alan, bloklarımızı sürükleyip bıraktığımız ve programımızı oluşturduğumuz yerdir. Blok paletinden seçtiğimiz blokları bu alana taşıyarak programımızı yazarız.
Scratch Blok Kategorileri
Scratch'te bloklar renklere göre kategorilere ayrılmıştır. Her kategori farklı türde komutlar içerir. 5. Sınıf Bilişim Teknolojileri ve Yazılım dersinde bu kategorileri tanımak çok önemlidir.
Hareket (Mavi): Kuklanın sahnede ilerlemesini, dönmesini, belirli bir konuma gitmesini sağlayan bloklardır. Örneğin "10 adım git", "15 derece sağa dön", "x: 0 y: 0 konumuna git" gibi bloklar bu kategoride yer alır.
Görünüm (Mor): Kuklanın görünümüyle ilgili bloklardır. Kuklanın konuşma baloncuğu göstermesi, kostüm değiştirmesi, büyüklüğünün ayarlanması gibi işlemler bu kategoriyle yapılır. "Merhaba! de 2 saniye" ve "sonraki kostüme geç" bu kategorideki blok örnekleridir.
Ses (Pembe): Projeye ses efektleri veya müzik eklemek için kullanılan bloklardır. "Miyav sesini çal" veya "... bitene kadar sesini çal" gibi bloklar bu kategoride bulunur.
Olaylar (Sarı): Programın ne zaman başlayacağını veya hangi durumda çalışacağını belirleyen bloklardır. En sık kullanılan olay bloğu "yeşil bayrak tıklandığında" bloğudur. Bunun dışında "boşluk tuşu basıldığında" veya "bu kukla tıklandığında" gibi bloklar da bu kategoride yer alır.
Kontrol (Turuncu): Programın akışını yöneten bloklardır. Döngüler ve koşul yapıları bu kategoride bulunur. "10 kere tekrarla", "sürekli tekrarla", "eğer ... ise" ve "1 saniye bekle" blokları en çok kullanılan kontrol bloklarıdır.
Algılama (Açık Mavi): Kuklanın çevresini algılamasını sağlayan bloklardır. "fareye değiyor mu?", "kenara değiyor mu?", "boşluk tuşu basılı mı?" gibi bloklar bu kategoride yer alır.
İşlemler (Yeşil): Matematik işlemleri ve mantıksal karşılaştırmalar yapmak için kullanılır. Toplama, çıkarma, çarpma, bölme, büyüktür, küçüktür gibi işlemler bu bloklar aracılığıyla yapılır.
Değişkenler (Koyu Turuncu): Programda veri saklamak için kullanılan bloklardır. Örneğin bir oyunda puanı tutmak veya bir sayacı artırmak için değişkenler kullanılır.
Temel Programlama Kavramları
Blok tabanlı programlama öğrenirken bazı temel kavramları bilmek gerekir. Bu kavramlar sadece Scratch'te değil, tüm programlama dillerinde geçerlidir.
Algoritma
Algoritma, bir problemi çözmek veya bir görevi tamamlamak için izlenen adımlar dizisidir. Algoritma günlük hayatımızda da sürekli kullandığımız bir kavramdır. Örneğin sabah kalktığımızda yaptığımız işler bir algoritmadır: uyan, yataktan kalk, yüzünü yıka, dişlerini fırçala, giyinin, kahvaltı yap, okula git. Programlamada da bilgisayara vereceğimiz komutları önce algoritma olarak düzenler, sonra bu algoritmayı bloklar aracılığıyla programa dönüştürürüz.
Döngüler
Döngü, belirli komutların tekrar tekrar çalıştırılmasını sağlayan yapılardır. Scratch'te iki ana döngü türü vardır:
Belirli sayıda tekrar döngüsü: "10 kere tekrarla" bloğu gibi, komutların belirli bir sayıda çalıştırılmasını sağlar. Örneğin bir kuklanın sahnede kare çizmesi için "4 kere tekrarla: 100 adım git, 90 derece dön" şeklinde bir döngü kurabiliriz.
Sürekli tekrar döngüsü: "Sürekli tekrarla" bloğu, içindeki komutları program durdurulana kadar sürekli olarak çalıştırır. Örneğin bir oyunda karakterin sürekli olarak sağa sola hareket etmesi için bu döngü kullanılır.
Döngüler programlamada çok önemlidir çünkü aynı komutları tekrar tekrar yazmak yerine döngü kullanarak programımızı hem kısaltır hem de daha verimli hâle getiririz.
Koşul Yapıları
Koşul yapıları, programın belirli bir duruma göre farklı işlemler yapmasını sağlar. Günlük hayattan bir örnek verirsek: "Eğer hava yağmurluysa şemsiye al, değilse güneş gözlüğü tak." Bu ifade bir koşul yapısıdır.
Scratch'te koşul yapıları "eğer ... ise" ve "eğer ... ise / değilse" blokları ile oluşturulur. Örneğin bir oyunda "eğer kukla kenara değiyorsa, sek" gibi bir koşul yazabiliriz. Bu sayede program, koşulun doğru olup olmadığını kontrol eder ve buna göre farklı komutları çalıştırır.
Değişkenler
Değişken, programda bir değeri saklamak için kullanılan yapıdır. Değişkeni bir kutu gibi düşünebilirsiniz: kutunun üzerinde bir isim yazar ve kutunun içinde bir değer bulunur. Örneğin bir oyunda "puan" adında bir değişken oluşturup başlangıç değerini 0 yapabilirsiniz. Oyuncu her doğru cevap verdiğinde puanı 1 artırabilirsiniz.
Scratch'te değişken oluşturmak için "Değişkenler" kategorisine gidip "Bir değişken oluştur" butonuna tıklamanız yeterlidir. Değişkene istediğiniz ismi verebilirsiniz: "puan", "can", "süre", "hız" gibi.
Olaylar ve Mesajlar
Olaylar, programın ne zaman çalışacağını belirler. Scratch'te en temel olay "yeşil bayrak tıklandığında" bloğudur. Bu blok, sahnedeki yeşil bayrak simgesine tıklandığında programın başlamasını sağlar. Bunun yanı sıra belirli bir tuşa basıldığında veya kukla tıklandığında çalışan olaylar da tanımlanabilir.
Mesajlar ise kuklalar arasında iletişim kurmak için kullanılır. Bir kukla "mesaj gönder" bloğuyla bir mesaj yayınlayabilir ve başka bir kukla "mesajı aldığımda" bloğuyla bu mesajı alıp belirli komutları çalıştırabilir. Bu özellik özellikle birden fazla kuklanın olduğu projelerde çok işe yarar.
Scratch ile İlk Projemizi Oluşturalım
Şimdi basit bir Scratch projesi oluşturarak öğrendiklerimizi uygulamaya koyalım. Projemizde kedi kuklası sahne üzerinde hareket edecek ve kenara değdiğinde sekecek.
Adım 1: Scratch'i açın. Varsayılan kedi kuklası zaten sahnede olacaktır.
Adım 2: "Olaylar" kategorisinden "yeşil bayrak tıklandığında" bloğunu kodlama alanına sürükleyin.
Adım 3: "Kontrol" kategorisinden "sürekli tekrarla" bloğunu yeşil bayrak bloğunun altına ekleyin.
Adım 4: "Hareket" kategorisinden "10 adım git" bloğunu sürekli tekrarla döngüsünün içine yerleştirin.
Adım 5: "Hareket" kategorisinden "kenara değince sek" bloğunu "10 adım git" bloğunun altına ekleyin.
Adım 6: Yeşil bayrak simgesine tıklayın ve projenizi çalıştırın. Kedi sahnede ileri geri hareket edecektir.
Bu basit proje ile olay, döngü ve hareket kavramlarını uygulamış olduk. Projeyi daha da geliştirmek için kedinin kostüm değiştirmesini, ses çıkarmasını veya klavye tuşlarıyla yönlendirilmesini sağlayabilirsiniz.
Scratch ile Basit Bir Oyun Yapalım
Blok tabanlı programlamanın en eğlenceli yanlarından biri oyun yapabilmektir. Şimdi basit bir "Elma Topla" oyunu tasarlayalım.
Oyun Senaryosu: Sahnede bir sepet olacak. Yukarıdan elmalar düşecek. Oyuncu, sepeti fareyle sağa sola hareket ettirerek elmaları yakalayacak. Her yakalanan elma 1 puan kazandıracak.
Adım 1 – Kuklaları Hazırlama: Kedi kuklasını silin. Kukla kütüphanesinden bir sepet ve bir elma kuklası ekleyin. Sepeti sahnenin altına, elmayı sahnenin üstüne konumlandırın.
Adım 2 – Puan Değişkeni Oluşturma: "Değişkenler" kategorisinden "puan" adında yeni bir değişken oluşturun.
Adım 3 – Sepet Kodları: Sepet kuklasına şu kodları ekleyin: "Yeşil bayrak tıklandığında" ardından "sürekli tekrarla" döngüsü içinde "x konumunu fare x yap" bloğunu yerleştirin. Böylece sepet fareyi takip edecektir.
Adım 4 – Elma Kodları: Elma kuklasına şu kodları ekleyin: "Yeşil bayrak tıklandığında" ardından "puan değişkenini 0 yap" ile puanı sıfırlayın. Sonra "sürekli tekrarla" döngüsünün içinde elmayı rastgele bir x konumunda en üste yerleştirin, ardından "10 kere tekrarla" döngüsüyle y konumunu her seferinde -20 değiştirerek elmayı aşağı düşürün. "Eğer sepete değiyorsa" koşuluyla puanı 1 artırın.
Bu oyun örneği ile değişken, döngü, koşul, olay, hareket ve algılama kavramlarının hepsini bir arada kullanmış oluyoruz.
Hata Ayıklama (Debug)
Programlama yaparken hatalar yapmak son derece doğaldır. Hatta profesyonel programcılar bile sürekli hatalarla karşılaşır. Önemli olan hataları bulmak ve düzeltmektir. Bu işleme hata ayıklama (debug) denir.
Scratch'te hata ayıklamak için şu adımları izleyebilirsiniz: Öncelikle programınızı adım adım çalıştırarak hangi blokta sorun olduğunu tespit edin. Blokların doğru sırada olup olmadığını kontrol edin. Döngülerin ve koşulların doğru kurulduğundan emin olun. Değişkenlerin başlangıç değerlerinin doğru ayarlandığından emin olun.
Programlama ile Kazanılan Beceriler
5. Sınıf Bilişim Teknolojileri ve Yazılım dersinde Blok Tabanlı Programlama (Scratch vb.) öğrenmek sadece kod yazmayı öğretmez; aynı zamanda pek çok önemli beceri kazandırır.
Problem çözme becerisi: Programlama, bir problemi küçük parçalara ayırıp her birini tek tek çözmeyi öğretir. Bu beceri matematik, fen ve diğer derslerde de çok işe yarar.
Algoritmik düşünme: Bir işi adım adım planlama ve sıralama yeteneği gelişir. Bu sayede günlük hayatta da daha düzenli ve planlı hareket edebilirsiniz.
Yaratıcılık: Scratch ile kendi oyunlarınızı, hikâyelerinizi ve animasyonlarınızı tasarlayarak yaratıcılığınızı özgürce kullanabilirsiniz.
Mantıksal düşünme: Koşul yapıları ve döngüler sayesinde mantık yürütme beceriniz gelişir.
Sabır ve azim: Programlamada hatalarla karşılaşmak kaçınılmazdır. Bu hataları bulmak ve düzeltmek sabır ve azim gerektirir; bu da karakterinizi güçlendirir.
Scratch Projeleri için İpuçları
Başarılı bir Scratch projesi oluşturmak için şu ipuçlarına dikkat edebilirsiniz:
Planlama yapın: Projeye başlamadan önce ne yapmak istediğinizi kâğıt üzerinde planlayın. Hangi kuklaları kullanacağınızı, sahne tasarımını ve programın akışını çizin.
Küçük başlayın: Büyük ve karmaşık bir projeye hemen başlamak yerine, küçük ve basit bir projeyle başlayıp zamanla geliştirin.
Blokları test edin: Her yeni blok eklediğinizde programı çalıştırarak doğru çalışıp çalışmadığını kontrol edin.
Yorum ekleyin: Scratch'te kod bloklarına sağ tıklayarak yorum ekleyebilirsiniz. Bu yorumlar, kodunuzun ne yaptığını hatırlamanıza yardımcı olur.
Başkalarının projelerini inceleyin: Scratch web sitesinde milyonlarca paylaşılmış proje bulunmaktadır. Diğer kullanıcıların projelerini inceleyerek yeni fikirler edinebilir ve farklı teknikleri öğrenebilirsiniz.
Sık Yapılan Hatalar ve Çözümleri
Hata 1 – Yeşil bayrak bloğunu koymamak: Program çalışmıyorsa, kodların en başında "yeşil bayrak tıklandığında" bloğunun olduğundan emin olun.
Hata 2 – Blokları birbirine bağlamamak: Bloklar birbirine tam olarak bağlanmadığında program düzgün çalışmaz. Blokların alt alta yapışmış olduğundan emin olun.
Hata 3 – Sonsuz döngüde kalmak: "Sürekli tekrarla" döngüsü içinde "bekle" bloğu koymayı unutursanız, program çok hızlı çalışabilir ve bilgisayarınız yavaşlayabilir.
Hata 4 – Değişken başlangıç değerini ayarlamamak: Oyun her başladığında puanın 0'dan başlamasını istiyorsanız, yeşil bayrak tıklandığında "puan değişkenini 0 yap" bloğunu eklemeyi unutmayın.
Blok Tabanlı Programlamadan Metin Tabanlı Programlamaya Geçiş
Blok tabanlı programlama, ileride metin tabanlı programlama dillerini (Python, JavaScript, C++ vb.) öğrenmek için mükemmel bir temel oluşturur. Scratch'te öğrendiğiniz döngü, koşul, değişken ve olay kavramları tüm programlama dillerinde aynı mantıkla çalışır. Tek fark, bu kavramları bloklar yerine yazılı kodlarla ifade etmenizdir. Bu nedenle 5. Sınıf Bilişim Teknolojileri ve Yazılım dersinde Blok Tabanlı Programlama (Scratch vb.) konusunu iyi öğrenmek gelecekteki programlama yolculuğunuz için çok değerlidir.
Özet
Bu kapsamlı konu anlatımında 5. Sınıf Bilişim Teknolojileri ve Yazılım dersinin önemli konularından biri olan Blok Tabanlı Programlama (Scratch vb.) konusunu detaylı şekilde inceledik. Programlamanın ne olduğunu, blok tabanlı programlamanın avantajlarını, Scratch arayüzünü ve blok kategorilerini, temel programlama kavramlarını (algoritma, döngü, koşul, değişken, olay), pratik proje örneklerini ve hata ayıklama tekniklerini öğrendik. Blok tabanlı programlama, geleceğin dijital dünyasına hazırlanmak için en eğlenceli ve etkili yollardan biridir. Scratch ile hayal gücünüzü kullanarak kendi projelerinizi oluşturabilir ve programlama becerilerinizi geliştirebilirsiniz.
Örnek Sorular
5. Sınıf Bilişim Teknolojileri ve Yazılım – Blok Tabanlı Programlama (Scratch vb.) Çözümlü Sorular
Aşağıda 5. Sınıf Bilişim Teknolojileri ve Yazılım dersi Blok Tabanlı Programlama (Scratch vb.) konusuna ait 10 adet çözümlü soru bulunmaktadır. Sorular hem çoktan seçmeli hem de açık uçlu olarak hazırlanmıştır.
Soru 1 (Çoktan Seçmeli)
Blok tabanlı programlamada, hazır komut bloklarını sürükleyip bırakarak program oluşturma yöntemi hangi avantajı sağlar?
- A) Programın daha yavaş çalışmasını sağlar
- B) Söz dizimi (yazım) hatalarını ortadan kaldırır
- C) Sadece oyun yapılmasına izin verir
- D) İnternetsiz çalışmayı engeller
Cevap: B
Çözüm: Blok tabanlı programlamada kod satırları elle yazılmadığı için söz dizimi hataları (syntax error) oluşmaz. Bloklar yapboz parçaları gibi birbirine eklenir; bu durum özellikle programlamaya yeni başlayanlar için büyük kolaylık sağlar. Diğer seçenekler blok tabanlı programlamanın özelliklerini doğru yansıtmamaktadır.
Soru 2 (Çoktan Seçmeli)
Scratch programında "yeşil bayrak tıklandığında" bloğu hangi kategoride yer alır?
- A) Hareket
- B) Kontrol
- C) Olaylar
- D) Algılama
Cevap: C
Çözüm: "Yeşil bayrak tıklandığında" bloğu, programın ne zaman başlayacağını belirlediği için Olaylar kategorisinde yer alır. Olaylar kategorisi sarı renklidir ve programın başlatılma koşullarını tanımlayan blokları içerir.
Soru 3 (Çoktan Seçmeli)
Scratch'te bir kuklanın aynı hareketi 5 defa tekrar etmesi isteniyorsa aşağıdaki bloklardan hangisi kullanılmalıdır?
- A) Sürekli tekrarla
- B) 5 kere tekrarla
- C) Eğer ... ise
- D) 5 saniye bekle
Cevap: B
Çözüm: Belirli sayıda tekrar gerektiren durumlarda "... kere tekrarla" döngüsü kullanılır. Soruda hareketin 5 defa tekrar etmesi istendiğine göre "5 kere tekrarla" bloğu doğru seçimdir. "Sürekli tekrarla" bloğu sonsuz döngü oluşturur. "Eğer ... ise" bir koşul yapısıdır, döngü değildir.
Soru 4 (Çoktan Seçmeli)
Aşağıdakilerden hangisi Scratch'te "Kontrol" kategorisinde bulunan bir blok değildir?
- A) Sürekli tekrarla
- B) Eğer ... ise
- C) 1 saniye bekle
- D) 10 adım git
Cevap: D
Çözüm: "10 adım git" bloğu Hareket kategorisinde yer alır, Kontrol kategorisinde değil. Sürekli tekrarla, eğer ... ise ve 1 saniye bekle blokları ise Kontrol kategorisine aittir. Kontrol blokları turuncu renklidir ve programın akışını yönetir.
Soru 5 (Çoktan Seçmeli)
Bir Scratch projesinde "puan" adında bir değişken oluşturulmuş ve oyun başladığında bu değişkenin değeri 0 yapılmıştır. Oyuncu her elma topladığında puan 10 artmaktadır. Oyuncu 7 elma toplarsa puan kaç olur?
- A) 7
- B) 10
- C) 17
- D) 70
Cevap: D
Çözüm: Başlangıçta puan = 0'dır. Her elma toplandığında puan 10 artar. 7 elma toplandığında: 0 + (7 x 10) = 70 puan olur. Bu soru değişken kavramını ve basit matematik işlemini birleştiren bir problemdir.
Soru 6 (Açık Uçlu)
Algoritma kavramını kendi cümlelerinizle tanımlayınız ve günlük hayattan bir algoritma örneği veriniz.
Çözüm: Algoritma, bir problemi çözmek veya bir işi tamamlamak için izlenmesi gereken adımların belirli bir sıraya göre dizilmesidir. Günlük hayattan örnek olarak "çay demleme algoritması" verilebilir: 1) Çaydanlığın alt kısmına su koyun. 2) Suyu kaynatın. 3) Üst kısma çay yapraklarını ekleyin. 4) Kaynar suyu üst kısma dökün. 5) Kısık ateşte 10-15 dakika demleyin. 6) Bardağa dökün. Bu adımlar sırasıyla takip edildiğinde çay hazırlanmış olur. İşte programlamada da bilgisayara bu şekilde adım adım talimat verilir.
Soru 7 (Açık Uçlu)
Scratch'te "döngü" neden kullanılır? "Belirli sayıda tekrar" döngüsü ile "sürekli tekrar" döngüsü arasındaki farkı bir örnekle açıklayınız.
Çözüm: Döngü, aynı komut veya komut grubunun birden fazla kez çalıştırılması gereken durumlarda kullanılır. Döngü kullanmak, aynı blokları tekrar tekrar ekleme zorunluluğunu ortadan kaldırarak programı daha kısa ve düzenli hâle getirir. "Belirli sayıda tekrar" döngüsü, örneğin "4 kere tekrarla" bloğu, içindeki komutları tam olarak 4 kez çalıştırır ve durur. Örneğin bir kuklanın kare çizmesi için "4 kere tekrarla: 100 adım git ve 90 derece dön" komutu verilir. "Sürekli tekrarla" döngüsü ise içindeki komutları program durdurulana kadar sonsuz kez çalıştırır. Örneğin bir oyunda karakterin sürekli fareyi takip etmesi için "sürekli tekrarla: fare imlecine git" komutu kullanılır.
Soru 8 (Açık Uçlu)
Scratch arayüzündeki "Sahne", "Kukla" ve "Kodlama Alanı" bölümlerinin görevlerini açıklayınız.
Çözüm: Sahne: Projenin çalıştırıldığı ve sonuçların görüntülendiği alandır. Kuklalar bu alanda hareket eder ve program burada görsel olarak çalışır. Sahne arka planı değiştirilebilir. Kukla: Sahnede yer alan ve programdaki komutları yerine getiren karakterlerdir. Her kuklaya ayrı ayrı kod yazılabilir. Scratch kütüphanesinden hazır kuklalar seçilebilir, yeni kuklalar çizilebilir veya dışarıdan yüklenebilir. Kodlama Alanı: Blok paletinden seçilen komut bloklarının sürüklenip bırakıldığı ve programın oluşturulduğu çalışma alanıdır. Her kuklanın kendi kodlama alanı vardır ve bloklar burada birbirine bağlanarak program meydana gelir.
Soru 9 (Açık Uçlu)
Scratch'te "eğer ... ise" bloğu ne işe yarar? Bir oyun senaryosunda bu bloğun nasıl kullanılabileceğine dair bir örnek veriniz.
Çözüm: "Eğer ... ise" bloğu bir koşul yapısıdır ve belirli bir koşulun doğru olup olmadığını kontrol eder. Koşul doğruysa içindeki komutlar çalışır; doğru değilse atlanır. Oyun senaryosu örneği: Bir labirent oyununda kukla duvar rengine değerse oyun bitsin istiyoruz. Bunun için "sürekli tekrarla" döngüsünün içine "eğer kırmızı rengine değiyorsa" koşulunu koyar ve içine "tümünü durdur" bloğunu ekleriz. Böylece kukla kırmızı duvara her değdiğinde oyun sona erer. Bu yapı sayesinde programın farklı durumlara farklı tepkiler vermesi sağlanır.
Soru 10 (Açık Uçlu)
Blok tabanlı programlama öğrenmenin öğrencilere kazandırdığı en az üç beceriyi yazınız ve her birini kısaca açıklayınız.
Çözüm: 1) Problem çözme becerisi: Programlama, karmaşık bir problemi küçük parçalara ayırarak çözmeyi öğretir. Öğrenci, sorunu analiz eder ve her adımı ayrı ayrı çözerek sonuca ulaşır. 2) Algoritmik düşünme: Bir işi gerçekleştirmek için gerekli adımları doğru sıraya koyma yeteneği gelişir. Bu beceri sadece programlamada değil, matematik problemlerinde ve günlük hayatta da kullanılır. 3) Yaratıcılık: Scratch gibi araçlarla öğrenciler kendi oyunlarını, animasyonlarını ve hikâyelerini tasarlar. Bu süreçte hayal güçlerini kullanır ve özgün projeler ortaya koyarlar. 4) Mantıksal düşünme: Koşul yapıları ve döngülerle çalışmak, neden-sonuç ilişkisi kurma ve mantık yürütme becerisini güçlendirir.
Çalışma Kağıdı
5. Sınıf Bilişim Teknolojileri ve Yazılım
Blok Tabanlı Programlama (Scratch vb.) – Çalışma Kâğıdı
Ad Soyad: ______________________________ Sınıf / No: __________ Tarih: __________
Etkinlik 1 – Kavram Eşleştirme
Yönerge: Aşağıdaki kavramları açıklamalarıyla eşleştiriniz. Her kavramın yanına doğru açıklamanın harfini yazınız.
Kavramlar:
1. Algoritma ( )
2. Döngü ( )
3. Değişken ( )
4. Koşul yapısı ( )
5. Kukla (Sprite) ( )
Açıklamalar:
a) Programda bir değeri saklamak için kullanılan yapıdır.
b) Sahnede hareket eden ve komutları yerine getiren karakterdir.
c) Bir problemi çözmek için izlenen adımlar dizisidir.
d) Belirli komutların tekrar tekrar çalıştırılmasını sağlayan yapıdır.
e) Programın belirli bir duruma göre farklı işlemler yapmasını sağlayan yapıdır.
Cevaplar: 1-c, 2-d, 3-a, 4-e, 5-b
Etkinlik 2 – Boşluk Doldurma
Yönerge: Aşağıdaki cümlelerdeki boşlukları uygun kelimelerle doldurunuz.
Kelime Havuzu: Scratch, blok tabanlı, yeşil bayrak, sahne, hata ayıklama, döngü, Olaylar, Hareket, değişken, kostüm
1. Karmaşık kod yazmak yerine hazır komut bloklarını sürükleyip bırakarak program oluşturma yöntemine __________________ programlama denir.
2. MIT Medya Laboratuvarı tarafından geliştirilen ücretsiz blok tabanlı programlama ortamının adı __________________ 'tir.
3. Scratch'te projenin çalıştığı ve sonuçların görüntülendiği alana __________________ denir.
4. Programı başlatmak için __________________ simgesine tıklanır.
5. "10 adım git" bloğu __________________ kategorisinde yer alır.
6. "Yeşil bayrak tıklandığında" bloğu __________________ kategorisinde bulunur.
7. Belirli komutların tekrar tekrar çalıştırılmasını sağlayan yapıya __________________ denir.
8. Kuklanın görünümünü değiştirmek için farklı __________________ kullanılır.
9. Bir oyunda puanı tutmak için __________________ oluşturulur.
10. Programdaki hataları bulma ve düzeltme işlemine __________________ denir.
Cevaplar: 1-blok tabanlı, 2-Scratch, 3-sahne, 4-yeşil bayrak, 5-Hareket, 6-Olaylar, 7-döngü, 8-kostüm, 9-değişken, 10-hata ayıklama
Etkinlik 3 – Algoritma Yazma
Yönerge: Aşağıdaki görevler için algoritma (adım adım çözüm yolu) yazınız.
Görev A: Scratch'te bir kuklanın sahnede kare çizmesi için gereken algoritmayı yazınız.
Adım 1: _______________________________________________
Adım 2: _______________________________________________
Adım 3: _______________________________________________
Adım 4: _______________________________________________
Örnek Cevap:
Adım 1: Yeşil bayrağa tıkla
Adım 2: Kalemi bastır
Adım 3: 4 kere tekrarla
Adım 4: 100 adım git ve 90 derece sağa dön
Görev B: Sabah okula gitmek için bir algoritma yazınız (en az 6 adım).
Adım 1: _______________________________________________
Adım 2: _______________________________________________
Adım 3: _______________________________________________
Adım 4: _______________________________________________
Adım 5: _______________________________________________
Adım 6: _______________________________________________
Etkinlik 4 – Blok Kategorisi Renk Eşleştirme
Yönerge: Aşağıdaki Scratch blok kategorilerini doğru renkleriyle eşleştiriniz.
1. Hareket ( ) a) Sarı
2. Görünüm ( ) b) Turuncu
3. Ses ( ) c) Mavi
4. Olaylar ( ) d) Mor
5. Kontrol ( ) e) Pembe
Cevaplar: 1-c, 2-d, 3-e, 4-a, 5-b
Etkinlik 5 – Doğru / Yanlış
Yönerge: Aşağıdaki ifadeleri okuyunuz. Doğru olanların yanına (D), yanlış olanların yanına (Y) yazınız.
1. ( ) Scratch ücretsiz bir programdır.
2. ( ) Blok tabanlı programlamada kod satırları elle yazılır.
3. ( ) "Sürekli tekrarla" bloğu bir döngüdür.
4. ( ) Scratch'te sadece bir tane kukla kullanılabilir.
5. ( ) "Eğer ... ise" bloğu bir koşul yapısıdır.
6. ( ) Scratch'te sahne arka planı değiştirilemez.
7. ( ) Değişkenler programda değer saklamak için kullanılır.
8. ( ) Scratch'te Türkçe dil desteği yoktur.
Cevaplar: 1-D, 2-Y, 3-D, 4-Y, 5-D, 6-Y, 7-D, 8-Y
Etkinlik 6 – Kod Okuma ve Çıktı Belirleme
Yönerge: Aşağıdaki Scratch kod bloklarının çıktısını yazınız.
Kod 1:
Yeşil bayrak tıklandığında
Merhaba! de 2 saniye
100 adım git
90 derece sağa dön
100 adım git
Bu kod çalıştığında kukla ne yapar?
Cevabınız: _______________________________________________
_______________________________________________
Örnek Cevap: Kukla önce 2 saniye boyunca "Merhaba!" der. Sonra 100 adım ileri gider, 90 derece sağa döner ve tekrar 100 adım ileri gider. Sonuçta L şeklinde bir yol çizer.
Kod 2:
Yeşil bayrak tıklandığında
Puan değişkenini 0 yap
3 kere tekrarla:
Puan değişkenini 10 artır
Harika! de 1 saniye
Bu kod çalıştığında puan değişkeninin son değeri kaç olur?
Cevabınız: _______________________________________________
Örnek Cevap: Puan 0'dan başlar. 3 kere 10 eklenir: 0 + 10 + 10 + 10 = 30. Puan değişkeninin son değeri 30 olur. Ayrıca kukla her tekrarda 1 saniye "Harika!" der.
Etkinlik 7 – Proje Tasarla
Yönerge: Aşağıdaki boşlukları doldurarak kendi Scratch proje fikirini tasarla.
Proje Adı: _______________________________________________
Proje Türü: (Oyun / Animasyon / Hikâye) _______________________________________________
Kullanılacak Kuklalar:
1. _______________________________________________
2. _______________________________________________
3. _______________________________________________
Sahne Arka Planı: _______________________________________________
Kullanılacak Blok Kategorileri:
( ) Hareket ( ) Görünüm ( ) Ses ( ) Olaylar ( ) Kontrol ( ) Algılama ( ) Değişkenler
Projenin Kısa Açıklaması (3-5 cümle):
_______________________________________________
_______________________________________________
_______________________________________________
_______________________________________________
_______________________________________________
Etkinlik 8 – Kavram Haritası
Yönerge: Aşağıdaki kavram haritasını tamamlayınız. Merkezdeki kavram "Blok Tabanlı Programlama"dır. Her daldaki boşluğu uygun kavramla doldurunuz.
BLOK TABANLI PROGRAMLAMA
|
Dal 1 – Araçlar: Scratch, __________ , __________
Dal 2 – Temel Kavramlar: Algoritma, __________ , __________ , __________
Dal 3 – Scratch Arayüzü: Sahne, __________ , __________ , __________
Dal 4 – Blok Kategorileri: Hareket, __________ , __________ , __________ , __________
Örnek Cevaplar:
Dal 1: Code.org, mBlock
Dal 2: Döngü, Koşul, Değişken
Dal 3: Kukla, Blok Paleti, Kodlama Alanı
Dal 4: Görünüm, Kontrol, Olaylar, Algılama
Çalışma kâğıdını tamamladığınız için tebrikler! Blok Tabanlı Programlama (Scratch vb.) konusundaki bilgilerinizi başarıyla pekiştirdiniz.
Sıkça Sorulan Sorular
5. Sınıf Bilişim Teknolojileri ve Yazılım müfredatı 2025-2026 yılında kaç ünite?
2025-2026 müfredatına göre 5. sınıf bilişim teknolojileri ve yazılım dersi birden fazla üniteden oluşmaktadır. Sayfadaki ünite listesinden güncel bilgiye ulaşabilirsiniz.
5. sınıf blok tabanlı programlama (scratch vb.) konuları hangi dönemlerde işleniyor?
5. sınıf bilişim teknolojileri ve yazılım dersi konuları 1. dönem ve 2. dönem olarak iki yarıyılda işlenmektedir. Her ünitenin tahmini süre bilgisi Millî Eğitim Bakanlığı'nın haftalık ders planlarında yer almaktadır.
5. sınıf bilişim teknolojileri ve yazılım müfredatı ne zaman güncellendi?
Gösterilen içerik 2025-2026 eğitim-öğretim yılı için güncellenmiştir. Millî Eğitim Bakanlığı'nın resmi sitesinde yayımlanan müfredat dokümanları esas alınmıştır.