Blok tabanlı kodlama ortamında (Scratch vb.) basit programlar oluşturma.
Konu Anlatımı
4. Sınıf Bilişim Teknolojileri ve Yazılım – Blok Tabanlı Kodlama Konu Anlatımı
Merhaba sevgili öğrenciler! Bu dersimizde 4. Sınıf Bilişim Teknolojileri ve Yazılım müfredatının en heyecanlı ünitelerinden biri olan Programlama ünitesindeki Blok Tabanlı Kodlama konusunu öğreneceğiz. Bilgisayarlarla konuşmanın, onlara komut vermenin ve kendi oyunlarımızı, animasyonlarımızı yapmanın yolunu birlikte keşfedeceğiz. Hazırsanız başlayalım!
Kodlama Nedir?
Kodlama, bilgisayara ne yapması gerektiğini anlatan komutlar yazmaktır. Bilgisayarlar kendi başlarına düşünemezler; onlara adım adım ne yapacaklarını söylememiz gerekir. Bunu yaparken özel bir dil kullanırız. İşte bu özel dile programlama dili denir. Kodlama sayesinde bilgisayarlar oyun çalıştırabilir, hesap yapabilir, resim çizebilir ve çok daha fazlasını yapabilir.
Düşünün ki bir robota "git, buzdolabını aç, suyu al ve getir" diyorsunuz. Bu komutların her biri aslında birer koddur. Bilgisayar da tıpkı bu robot gibi verdiğimiz komutları sırasıyla yerine getirir. Eğer komutları yanlış sırada verirsek veya bir adımı atlarsak bilgisayar istediğimiz şeyi yapamaz. Bu yüzden kodlama yaparken dikkatli ve düzenli olmamız çok önemlidir.
Algoritma Nedir?
Kodlamaya başlamadan önce algoritma kavramını öğrenmemiz gerekir. Algoritma, bir problemi çözmek veya bir işi yapmak için izlenen adımların sıralı listesidir. Günlük hayatımızda farkında olmadan pek çok algoritma kullanırız.
Örneğin sabah kalktığınızda yaptığınız işleri düşünün: Önce gözlerinizi açarsınız, sonra yataktan kalkarsınız, ardından yüzünüzü yıkarsınız, dişlerinizi fırçalarsınız, giyinirsiniz ve kahvaltı yaparsınız. İşte bu adımların tamamı bir algoritmadır. Eğer bu sırayı karıştırırsanız, örneğin önce giyinip sonra yüzünüzü yıkarsanız, kıyafetleriniz ıslanabilir. Bu yüzden algoritmalarda sıralama çok önemlidir.
Bilgisayar programlamada da aynı mantık geçerlidir. Bilgisayara bir iş yaptırmak istediğimizde önce o işin adımlarını sırayla yazarız. Bu sıralı adımlar bizim algoritmamızdır. Algoritmayı doğru kurduktan sonra onu kodlama diline çeviririz.
Bir algoritma örneği yapalım: Diyelim ki bilgisayarda bir kedi karakterinin ekranda yürümesini istiyoruz. Algoritmamız şöyle olabilir:
1. Programı başlat.
2. Kediyi sola doğru 10 adım hareket ettir.
3. 1 saniye bekle.
4. Kediyi sağa doğru 10 adım hareket ettir.
5. 1 saniye bekle.
6. Programı bitir.
Gördüğünüz gibi algoritma yazmak aslında bir yemek tarifi yazmak gibidir. Adımları doğru sırada ve eksiksiz yazarsak sonuç istediğimiz gibi olur.
Blok Tabanlı Kodlama Nedir?
Blok tabanlı kodlama, kodlamayı renkli bloklar kullanarak yapmamızı sağlayan bir yöntemdir. Bu yöntemde karmaşık kodlar yazmak yerine hazır blokları sürükleyip bırakarak program oluştururuz. Her bloğun üzerinde ne iş yaptığı yazılıdır ve bloklar yapboz parçaları gibi birbirine geçer.
Blok tabanlı kodlama özellikle bizim gibi kodlamaya yeni başlayanlar için çok uygundur çünkü yazım hatası yapma ihtimalimizi ortadan kaldırır. Blokları doğru yere sürüklediğimizde program çalışır. Yanlış bir şey yaptığımızda ise bloklar birbirine geçmez ve biz hemen hatamızı fark ederiz.
Blok tabanlı kodlamanın en popüler araçlarından biri Scratch programıdır. Scratch, MIT (Massachusetts Teknoloji Enstitüsü) tarafından geliştirilmiştir ve dünya genelinde milyonlarca çocuk tarafından kullanılmaktadır. Türkiye'de de 4. Sınıf Bilişim Teknolojileri ve Yazılım derslerinde Scratch veya benzeri blok tabanlı kodlama araçları sıklıkla kullanılır.
Scratch Programını Tanıyalım
Scratch programını açtığınızda karşınıza üç ana bölüm gelir:
Sahne (Stage): Programınızın çalıştığı ve karakterlerin hareket ettiği alandır. Sahne, tıpkı bir tiyatro sahnesi gibidir. Karakterleriniz burada hareket eder, konuşur ve etkileşime geçer. Sahnenin arka planını değiştirebilir, farklı dekorlar ekleyebilirsiniz.
Karakter (Sprite): Sahnede gördüğünüz figürlerdir. Scratch'te başlangıçta bir kedi karakteri bulunur. Siz bu karakteri değiştirebilir, yeni karakterler ekleyebilir veya kendi karakterinizi çizebilirsiniz. Her karaktere farklı kodlar verebilirsiniz.
Kod Alanı (Script Area): Blokları sürükleyip bıraktığınız alandır. Burası sizin çalışma masanızdır. Blok paletinden aldığınız blokları bu alana getirip birbirine bağlarsınız. Bir karakter için birden fazla kod dizisi oluşturabilirsiniz.
Blok Paleti: Kullanabileceğiniz tüm blokların listelendiği bölümdür. Bloklar kategorilere ayrılmıştır ve her kategorinin kendine özel bir rengi vardır. Bu renkler sayesinde blokları kolayca ayırt edebilirsiniz.
Blok Kategorileri ve Renkleri
Scratch'te bloklar farklı renklerde gruplandırılmıştır. Her renk farklı bir işlevi temsil eder. İşte en çok kullanacağımız blok kategorileri:
Hareket Blokları (Mavi): Karakterin ekranda hareket etmesini sağlar. Örneğin "10 adım git", "sağa dön", "x konumuna git" gibi bloklar bu kategoridedir. Bu bloklar sayesinde karakterimizi istediğimiz yöne ve istediğimiz kadar hareket ettirebiliriz.
Görünüm Blokları (Mor): Karakterin görünümünü değiştirmemizi sağlar. "Merhaba de", "kostümü değiştir", "boyutu büyüt" gibi bloklar burada bulunur. Bu bloklar sayesinde karakterimiz konuşabilir, farklı kostümler giyebilir ve boyutunu değiştirebilir.
Ses Blokları (Pembe): Programa ses efektleri eklememizi sağlar. "Sesi çal", "ses seviyesini ayarla" gibi bloklar bu gruptadır. Projelerimize müzik ve ses efektleri ekleyerek onları daha eğlenceli hale getirebiliriz.
Olaylar Blokları (Sarı): Programın ne zaman başlayacağını belirler. "Yeşil bayrak tıklandığında", "bu tuşa basıldığında" gibi bloklar burada yer alır. Bu bloklar genellikle kod dizisinin en üstüne yerleştirilir çünkü programın hangi olayla başlayacağını belirlerler.
Kontrol Blokları (Turuncu): Programın akışını yönetir. "Tekrarla", "eğer ... ise", "bekle" gibi bloklar bu kategoridedir. Bu bloklar programlamadaki en önemli yapıları oluşturur: döngüler ve koşullar.
Algılama Blokları (Açık Mavi): Karakterin çevresini algılamasını sağlar. "Fareye değiyor mu?", "kenara değiyor mu?" gibi bloklar burada bulunur.
İşlemler Blokları (Yeşil): Matematik işlemleri ve karşılaştırmalar yapmamızı sağlar. Toplama, çıkarma, büyüktür, küçüktür gibi işlemler bu bloklar ile yapılır.
Değişkenler Blokları (Koyu Turuncu): Puan, can sayısı gibi değerleri saklamak için kullanılır.
İlk Programımızı Yazalım
Şimdi Scratch'te ilk programımızı birlikte yapalım. Kedimizin ekranda yürümesini ve "Merhaba!" demesini istiyoruz.
Adım 1: Scratch programını açın. Sahnenizde bir kedi karakteri göreceksiniz.
Adım 2: Olaylar kategorisinden "Yeşil bayrak tıklandığında" bloğunu kod alanına sürükleyin. Bu blok programımızın başlangıç noktasıdır.
Adım 3: Hareket kategorisinden "10 adım git" bloğunu alın ve başlangıç bloğunun altına yapıştırın.
Adım 4: Görünüm kategorisinden "Merhaba! de 2 saniye" bloğunu alın ve hareket bloğunun altına yapıştırın.
Adım 5: Yeşil bayrak simgesine tıklayın ve programınızın çalışmasını izleyin!
Tebrikler! İlk programınızı yazdınız. Kedi 10 adım ileri yürüdü ve "Merhaba!" dedi. Şimdi bu programı daha da geliştirelim.
Döngü (Tekrarlama) Kavramı
Döngü, belirli komutların tekrar tekrar çalıştırılmasıdır. Günlük hayatta da döngüler kullanırız. Örneğin ip atlarken aynı hareketi defalarca tekrarlarsınız. Her seferinde "zıpla, ipi döndür, zıpla, ipi döndür" şeklinde devam edersiniz. İşte bu bir döngüdür.
Programlamada döngüler çok önemlidir çünkü aynı kodu tekrar tekrar yazmaktan bizi kurtarır. Örneğin kedimizin 100 adım yürümesini istiyorsak, "10 adım git" bloğunu 10 kere yazmak yerine bir döngü kullanabiliriz.
Scratch'te iki tür döngü bloğu vardır:
Belirli Sayıda Tekrarla: Bu blok, içine yazdığımız sayı kadar tekrar eder. Örneğin "10 kere tekrarla" bloğunun içine "10 adım git" bloğunu koyarsak kedimiz toplam 100 adım yürür. Döngü tam olarak 10 kez çalışır ve durur.
Sürekli Tekrarla: Bu blok sonsuza kadar tekrar eder. Program durdurulana kadar içindeki komutlar çalışmaya devam eder. Örneğin bir oyunda karakterin sürekli hareket etmesini istiyorsak bu bloğu kullanırız.
Döngüleri kullanarak çok daha kısa ve düzenli kodlar yazabiliriz. Ayrıca döngüler sayesinde programlarımız daha dinamik ve etkileşimli olur.
Koşul (Eğer-İse) Yapısı
Koşul yapısı, programın belirli durumlara göre farklı işler yapmasını sağlar. Günlük hayatta sürekli koşullu kararlar veririz: "Eğer hava yağmurluysa şemsiyemi alırım, değilse almam." İşte programlamada da aynı mantık geçerlidir.
Scratch'te koşul yapısı "eğer ... ise" bloğu ile kurulur. Bu bloğun altıgen şeklinde bir boşluğu vardır. Bu boşluğa bir koşul bloğu yerleştiririz. Eğer koşul doğruysa bloğun içindeki komutlar çalışır, değilse çalışmaz.
Örneğin bir oyun yapıyoruz ve kedimiz duvara çarptığında "Ah!" demesini istiyoruz. Bunun için şu kodu yazarız: "Eğer kenara değiyorsa, Ah! de." Bu kod sayesinde kedi kenara her değdiğinde "Ah!" der, değmediğinde ise hiçbir şey söylemez.
Koşul yapısının genişletilmiş hali "eğer ... ise ... değilse" bloğudur. Bu blok iki farklı durum için iki farklı komut çalıştırır. Örneğin: "Eğer puan 10'dan büyükse 'Kazandın!' de, değilse 'Devam et!' de."
Sıralı (Ardışık) Yapı
Programlamada en temel yapı sıralı yapıdır. Sıralı yapıda komutlar yukarıdan aşağıya doğru sırayla çalışır. Her komut bir önceki komut tamamlandıktan sonra başlar. Tıpkı bir yemek tarifinde olduğu gibi adımlar sırasıyla takip edilir.
Örneğin aşağıdaki program sıralı bir yapıdadır:
1. Yeşil bayrak tıklandığında
2. "Merhaba!" de 2 saniye
3. 50 adım git
4. "Beni yakalayamazsın!" de 2 saniye
5. 90 derece sağa dön
6. 50 adım git
Bu programda her komut bir öncekinden sonra sırasıyla çalışır. Bilgisayar önce "Merhaba!" der, sonra 50 adım yürür, ardından "Beni yakalayamazsın!" der, sonra sağa döner ve tekrar 50 adım yürür.
Değişkenler
Değişken, programda bir değeri saklamamızı sağlayan yapıdır. Değişkeni bir kutu gibi düşünebilirsiniz. Bu kutunun bir adı vardır ve içine bir değer koyabilirsiniz. Daha sonra bu değeri okuyabilir veya değiştirebilirsiniz.
Örneğin bir oyunda puanınızı tutmak için "puan" adında bir değişken oluşturabilirsiniz. Oyunun başında puan 0'dır. Her doğru cevap verdiğinizde puan 1 artar. Her yanlış cevap verdiğinizde puan 1 azalır. Oyun sonunda puanınız ekranda görünür.
Scratch'te değişken oluşturmak için "Değişkenler" kategorisine gidip "Bir değişken oluştur" düğmesine tıklarsınız. Değişkeninize bir ad verirsiniz ve artık onu kodlarınızda kullanabilirsiniz.
Olaylar ve Etkileşim
Bir programın kullanıcıyla etkileşim kurabilmesi için olaylara ihtiyaç vardır. Olaylar, programda bir şey olduğunda tetiklenen başlangıç noktalarıdır. Scratch'te en çok kullanılan olaylar şunlardır:
Yeşil bayrak tıklandığında: Sahnedeki yeşil bayrak düğmesine tıklandığında program başlar. Hemen hemen her Scratch projesinde bu blok kullanılır.
Bir tuşa basıldığında: Klavyede belirli bir tuşa basıldığında komutlar çalışır. Örneğin "sağ ok tuşuna basıldığında 10 adım git" kodu, sağ ok tuşuyla karakteri hareket ettirir. Bu sayede oyun karakterlerini klavyeyle kontrol edebiliriz.
Bu karaktere tıklandığında: Fare ile karaktere tıklandığında komutlar çalışır. Örneğin bir balona tıklandığında patlamasını sağlayabilirsiniz.
Mesaj aldığında: Karakterler birbirine mesaj gönderebilir. Bir karakter mesaj gönderdiğinde, o mesajı alan başka bir karakter tepki verebilir. Bu özellik sayesinde karakterler arasında iletişim kurulabilir.
Hata Ayıklama (Debug)
Programcılar kod yazarken bazen hatalar yapar. Bu çok doğaldır ve her programcının başına gelir. Önemli olan hataları bulmak ve düzeltmektir. Programdaki hataları bulup düzeltme işlemine hata ayıklama (debug) denir.
Blok tabanlı kodlamada yapılan yaygın hatalar şunlardır:
Sıralama hatası: Blokların yanlış sıraya konulması. Örneğin önce hareket ettirip sonra başlangıç bloğu koymak.
Eksik blok hatası: Gerekli bir bloğun unutulması. Örneğin döngüyü kapatmamak veya başlangıç bloğu koymamak.
Yanlış değer hatası: Bloklardaki sayıları veya değerleri yanlış girmek. Örneğin 10 adım yerine 1000 adım yazmak.
Mantık hatası: Programın çalışması ama istediğimiz sonucu vermemesi. Örneğin karakterin sağa gitmesi gerekirken sola gitmesi.
Hata ayıklama yaparken programı adım adım kontrol etmek en iyi yöntemdir. Her bloğu tek tek inceleyerek hatanın nerede olduğunu bulabilirsiniz. Scratch'te bir bloğa tıklayarak sadece o bloğu çalıştırabilir ve sonucunu görebilirsiniz.
Proje Örnekleri
Blok tabanlı kodlama ile yapabileceğiniz birçok proje vardır. İşte bazı örnekler:
Animasyon Projesi: Bir hikaye anlatın! Karakterlerinizi sahneye koyun, arka plan ekleyin, konuşma balonları oluşturun ve karakterlerinizi hareket ettirin. Örneğin "Kedi ve Fare" hikayesi oluşturabilirsiniz. Kedi fareyi kovalar, fare kaçar ve sonunda peynirini bulur.
Oyun Projesi: Basit bir labirent oyunu yapın! Karakteriniz ok tuşlarıyla hareket eder, duvarlara çarpmamalıdır ve çıkışı bulmalıdır. Puan ve süre ekleyerek oyunu daha heyecanlı hale getirebilirsiniz.
Matematik Oyunu: Ekranda rastgele toplama veya çıkarma soruları gösteren bir program yapın. Kullanıcı doğru cevabı yazdığında puan kazansın, yanlış cevap verdiğinde tekrar denesin.
Müzik Projesi: Farklı tuşlara bastığınızda farklı notalar çalan bir piyano yapın. Her tuş farklı bir ses çıkarır ve siz kendi melodinizi oluşturabilirsiniz.
Akış Şeması (Akış Diyagramı)
Bir program yazmadan önce o programın akışını görsel olarak çizmek faydalıdır. Bunu yapmak için akış şeması kullanırız. Akış şeması, algoritmanın görsel halidir. Farklı şekiller farklı anlamlar taşır:
Oval (Yumurta şekli): Başlangıç ve bitiş noktalarını gösterir.
Dikdörtgen: Yapılacak işlemi gösterir. Örneğin "10 adım git" bir işlemdir.
Eşkenar dörtgen (Baklava dilimi): Karar noktasını gösterir. Örneğin "Kenara değiyor mu?" bir karardır. Evet ve Hayır olmak üzere iki yolu vardır.
Ok işaretleri: Akışın yönünü gösterir. Hangi adımdan hangi adıma geçileceğini belirler.
Akış şeması çizmek, programımızı yazmadan önce planlamayı sağlar. Bu sayede daha düzenli ve hatasız kodlar yazabiliriz. Bir proje yapmadan önce mutlaka akış şeması çizmenizi öneriyoruz.
Blok Tabanlı Kodlamada İpuçları
Blok tabanlı kodlamada başarılı olmak için bazı ipuçlarını takip edebilirsiniz:
Küçük adımlarla başlayın: Büyük bir proje yapmak istiyorsanız önce küçük parçalardan başlayın. Her parçayı ayrı ayrı kodlayın, test edin ve sonra birleştirin.
Kodunuzu düzenli tutun: Blokları düzgün bir şekilde alt alta dizin. Dağınık kodlar hata bulmayı zorlaştırır.
Sık sık test edin: Her birkaç blok ekledikten sonra programınızı çalıştırın ve doğru çalıştığından emin olun. Hataları erken yakalamak önemlidir.
Başkalarının projelerini inceleyin: Scratch topluluğunda paylaşılan projeleri inceleyerek yeni fikirler ve teknikler öğrenebilirsiniz.
Denemekten korkmayın: Yanlış bir şey yaparsanız her zaman geri alabilirsiniz. Farklı blokları deneyerek ne yaptıklarını keşfedin.
Yorum ekleyin: Kodlarınıza yorum ekleyerek ne yaptıklarını açıklayın. Bu, daha sonra kodu incelediğinizde hatırlamanızı kolaylaştırır.
Blok Tabanlı Kodlamanın Faydaları
Blok tabanlı kodlama öğrenmek sadece bilgisayar dersi için değil, hayatınızın birçok alanında size fayda sağlar:
Problem çözme becerisi: Kodlama yaparken sürekli problem çözersiniz. Bu beceri matematik, fen bilgisi ve diğer derslerde de işinize yarar.
Mantıksal düşünme: Kodlama, adım adım ve mantıklı düşünmeyi öğretir. Her bloğu neden o sıraya koyduğunuzu düşünürsünüz.
Yaratıcılık: Kendi oyunlarınızı, hikayelerinizi ve animasyonlarınızı yaparak yaratıcılığınızı geliştirebilirsiniz.
Sabır ve azim: Hata ayıklama süreci sabır ve azim gerektirir. Bu özellikler hayatın her alanında size yardımcı olur.
Takım çalışması: Arkadaşlarınızla birlikte proje yaparak takım çalışması becerilerinizi geliştirebilirsiniz.
Günlük Hayatta Kodlama Örnekleri
Kodlama sadece bilgisayarlarda değil, günlük hayatımızın her yerindedir. Akıllı telefonlarımızdaki uygulamalar, televizyondaki çizgi filmler, arabalardaki navigasyon sistemleri, hastanelerdeki tıbbi cihazlar ve daha pek çok şey kodlama ile çalışır.
Evinizdeki çamaşır makinesini düşünün: Bir program seçtiğinizde makine belirli adımları sırasıyla yapar. Su alır, ısıtır, döner, durular, sıkar. İşte bu adımların her biri aslında makinenin içindeki bir programla kontrol edilir.
Trafik ışıkları da bir programa göre çalışır: Belirli süre yeşil yanar, sonra sarıya geçer, ardından kırmızı olur. Bu döngü sürekli tekrar eder. Eğer bir döngü olmasaydı her renk değişimi için birinin düğmeye basması gerekirdi.
Gördüğünüz gibi 4. Sınıf Bilişim Teknolojileri ve Yazılım Blok Tabanlı Kodlama konusu aslında hayatımızın her yerinde karşımıza çıkan kavramları anlamamızı sağlar. Bu konuyu öğrenerek teknolojiyi sadece kullanan değil, aynı zamanda üreten bireyler olma yolunda önemli bir adım atarsınız.
Özet
Bu dersimizde 4. Sınıf Bilişim Teknolojileri ve Yazılım müfredatındaki Blok Tabanlı Kodlama konusunu kapsamlı bir şekilde inceledik. Kodlamanın ne olduğunu, algoritma kavramını, blok tabanlı kodlamanın özelliklerini, Scratch programını, döngüleri, koşulları, değişkenleri, olayları, hata ayıklamayı ve akış şemalarını öğrendik. Blok tabanlı kodlama, karmaşık programlama kavramlarını görsel ve eğlenceli bir şekilde öğrenmemizi sağlayan harika bir yöntemdir. Bu bilgilerle kendi projelerinizi oluşturabilir, hayal gücünüzü kullanarak oyunlar, animasyonlar ve interaktif hikayeler yapabilirsiniz. Unutmayın: Her büyük programcı, ilk bloğunu sürükleyerek başladı!
Örnek Sorular
4. Sınıf Bilişim Teknolojileri ve Yazılım – Blok Tabanlı Kodlama Çözümlü Sorular
Aşağıda 4. Sınıf Bilişim Teknolojileri ve Yazılım dersinin Blok Tabanlı Kodlama konusuna ait 10 adet çözümlü soru bulunmaktadır. Her sorunun altında ayrıntılı çözümü verilmiştir.
Soru 1 (Çoktan Seçmeli)
Bir problemi çözmek için izlenen adımların sıralı listesine ne ad verilir?
A) Kodlama
B) Algoritma
C) Döngü
D) Değişken
Cevap: B) Algoritma
Çözüm: Bir problemi çözmek veya bir işi yapmak için izlenmesi gereken adımların belirli bir sırayla yazılmasına algoritma denir. Kodlama, algoritmanın bilgisayar diline aktarılmasıdır. Döngü tekrarlama yapısıdır. Değişken ise veri saklayan yapıdır. Bu nedenle doğru cevap B seçeneğidir.
Soru 2 (Çoktan Seçmeli)
Scratch programında "Yeşil bayrak tıklandığında" bloğu hangi kategoriye aittir?
A) Hareket
B) Kontrol
C) Olaylar
D) Görünüm
Cevap: C) Olaylar
Çözüm: "Yeşil bayrak tıklandığında" bloğu, programın ne zaman başlayacağını belirleyen bir olay bloğudur. Olaylar kategorisi sarı renklidir ve programın başlatılma koşullarını içerir. Hareket blokları karakteri hareket ettirir, Kontrol blokları döngü ve koşul içerir, Görünüm blokları ise karakterin dış görünümünü değiştirir. Bu yüzden doğru cevap C seçeneğidir.
Soru 3 (Çoktan Seçmeli)
Aşağıdakilerden hangisi blok tabanlı kodlama aracına örnektir?
A) Word
B) Excel
C) Scratch
D) Paint
Cevap: C) Scratch
Çözüm: Scratch, MIT tarafından geliştirilen ve blok tabanlı kodlama yapılabilen bir programdır. Word kelime işlemci, Excel hesap tablosu, Paint ise çizim programıdır. Bunlar kodlama aracı değildir. Bu nedenle doğru cevap C seçeneğidir.
Soru 4 (Çoktan Seçmeli)
Bir kodun belirli bir koşula bağlı olarak çalışmasını sağlayan yapıya ne denir?
A) Döngü
B) Değişken
C) Koşul yapısı
D) Algoritma
Cevap: C) Koşul yapısı
Çözüm: Koşul yapısı, "eğer ... ise" şeklinde çalışır ve belirli bir koşulun doğru olup olmadığını kontrol eder. Koşul doğruysa belirli komutlar çalışır, değilse farklı komutlar çalışabilir. Döngü tekrarlama yapısıdır, değişken veri saklayan yapıdır, algoritma ise adımların sıralı listesidir. Bu yüzden doğru cevap C seçeneğidir.
Soru 5 (Çoktan Seçmeli)
Scratch'te bir karakterin aynı hareketi 5 kez yapması için aşağıdaki bloklardan hangisi kullanılır?
A) Eğer ... ise
B) 5 kere tekrarla
C) Sürekli tekrarla
D) 1 saniye bekle
Cevap: B) 5 kere tekrarla
Çözüm: Belirli bir sayıda tekrarlama yapmak istediğimizde "... kere tekrarla" bloğunu kullanırız. Bu blok döngü yapısıdır ve içindeki komutları belirtilen sayı kadar tekrarlar. "Eğer ... ise" koşul yapısıdır, "Sürekli tekrarla" sonsuz döngüdür ve durma komutu verilene kadar devam eder, "1 saniye bekle" ise bekleme komutudur. Bu nedenle doğru cevap B seçeneğidir.
Soru 6 (Açık Uçlu)
Blok tabanlı kodlamanın metin tabanlı kodlamaya göre avantajlarını açıklayınız.
Cevap:
Blok tabanlı kodlamanın metin tabanlı kodlamaya göre önemli avantajları vardır. Birincisi, blok tabanlı kodlamada hazır bloklar sürüklenip bırakıldığı için yazım hatası yapma olasılığı ortadan kalkar. Metin tabanlı kodlamada ise küçük bir harf hatası bile programın çalışmamasına neden olabilir. İkincisi, bloklar renklere göre kategorilere ayrıldığı için hangi bloğun ne işe yaradığını anlamak daha kolaydır. Üçüncüsü, bloklar yapboz parçaları gibi birbirine geçtiğinden yanlış bir birleştirme yapıldığında kolayca fark edilir. Dördüncüsü, kodlamaya yeni başlayan öğrenciler için görsel ve eğlenceli bir öğrenme ortamı sunar. Bu nedenlerle blok tabanlı kodlama, özellikle ilkokul öğrencileri için ideal bir başlangıç yöntemidir.
Soru 7 (Açık Uçlu)
Günlük hayattan bir algoritma örneği vererek adımlarını sırasıyla yazınız.
Cevap:
Diş fırçalama algoritması şu şekilde yazılabilir: 1. Diş fırçasını al. 2. Diş macununu al. 3. Diş macununu fırçanın üzerine sık. 4. Musluğu aç. 5. Fırçayı hafifçe ıslat. 6. Dişlerini yukarıdan aşağıya doğru fırçala. 7. Ağzını suyla çalkala. 8. Fırçayı yıka ve yerine koy. 9. Musluğu kapat. Bu adımlar sırasıyla yapıldığında diş fırçalama işlemi doğru bir şekilde tamamlanmış olur. Adımların sırası önemlidir; örneğin fırçayı ıslatmadan diş macununu sürmek doğru bir sıralama olsa da musluğu kapatmadan fırçayı yerine koymak suyun boşa akmasına neden olur.
Soru 8 (Açık Uçlu)
Döngü yapısı nedir? Bir Scratch projesinde döngüyü nasıl kullanırsınız? Örnek vererek açıklayınız.
Cevap:
Döngü, belirli komutların tekrar tekrar çalıştırılmasını sağlayan yapıdır. Döngü kullanarak aynı kodları defalarca yazmak zorunda kalmayız. Scratch'te iki temel döngü vardır: Belirli sayıda tekrarlama döngüsü ve sürekli tekrarlama döngüsü. Örneğin bir kedi karakterinin sahnede sürekli ileri geri yürümesini istiyorsak "sürekli tekrarla" bloğunun içine "10 adım git" ve "kenara gelince sek" bloklarını koyarız. Böylece kedi sürekli olarak ileri yürür ve kenara geldiğinde geri döner. Eğer kedinin sadece 3 kez ileri geri yapmasını istersek "3 kere tekrarla" bloğunu kullanırız.
Soru 9 (Çoktan Seçmeli)
Scratch'te bir programdaki hataları bulup düzeltme işlemine ne denir?
A) Kodlama
B) Hata ayıklama (Debug)
C) Döngü
D) Animasyon
Cevap: B) Hata ayıklama (Debug)
Çözüm: Programda oluşan hataları bulma ve düzeltme sürecine hata ayıklama (debug) denir. Bu, programlamanın en önemli aşamalarından biridir. Kodlama, program yazma işleminin tamamıdır. Döngü bir tekrarlama yapısıdır. Animasyon ise hareketli görsel oluşturmadır. Bu nedenle doğru cevap B seçeneğidir.
Soru 10 (Açık Uçlu)
Koşul yapısını günlük hayattan bir örnekle açıklayınız. Bu örneği Scratch blokları ile nasıl ifade edersiniz?
Cevap:
Koşul yapısı, belirli bir duruma göre farklı işlemlerin yapılmasıdır. Günlük hayattan bir örnek verelim: "Eğer hava soğuksa mont giy, değilse ince bir ceket giy." Bu örnekte "havanın soğuk olması" koşuldur. Koşul doğruysa mont giyeriz, yanlışsa ceket giyeriz. Bunu Scratch'te şu şekilde ifade edebiliriz: "Eğer sıcaklık 15'ten küçükse 'Mont giymeliyim!' de, değilse 'Ceket yeter!' de." Bu yapıda "eğer ... ise ... değilse" bloğu kullanılır. Koşul doğrulandığında ilk bölümdeki komut, doğrulanmadığında ise ikinci bölümdeki komut çalışır.
Çalışma Kağıdı
4. Sınıf Bilişim Teknolojileri ve Yazılım
Blok Tabanlı Kodlama – Çalışma Kağıdı
Ad Soyad: ______________________ Sınıf/No: ________ Tarih: ___/___/______
Etkinlik 1 – Boşluk Doldurma
Yönerge: Aşağıdaki cümlelerdeki boşlukları uygun kelimelerle doldurunuz.
1. Bir problemi çözmek için izlenen adımların sıralı listesine __________________ denir.
2. Blok tabanlı kodlamada kodlar __________________ sürüklenip bırakılarak yazılır.
3. Scratch programında sahne üzerindeki figürlere __________________ (sprite) denir.
4. Belirli komutların tekrar tekrar çalıştırılmasını sağlayan yapıya __________________ denir.
5. Programın belirli bir duruma göre farklı işler yapmasını sağlayan yapı __________________ yapısıdır.
6. Programda puan gibi değerleri saklamak için __________________ kullanılır.
7. Scratch'te programı başlatmak için __________________ düğmesine tıklanır.
8. Programdaki hataları bulup düzeltme işlemine __________________ denir.
Etkinlik 2 – Eşleştirme
Yönerge: Sol sütundaki kavramları sağ sütundaki açıklamalarla eşleştiriniz. Doğru harfi kutucuğa yazınız.
( ) 1. Algoritma a) Komutları tekrar tekrar çalıştırma
( ) 2. Döngü b) Programdaki hataları bulup düzeltme
( ) 3. Koşul yapısı c) Değer saklayan yapı
( ) 4. Değişken d) Adımların sıralı listesi
( ) 5. Hata ayıklama e) Blok tabanlı kodlama aracı
( ) 6. Scratch f) Duruma göre farklı işlem yapma
Etkinlik 3 – Doğru Sıraya Koyma
Yönerge: Aşağıdaki "Çay Demleme" algoritmasının adımlarını doğru sıraya koyunuz. Başlarına 1'den 6'ya kadar numara yazınız.
( ) Çay bardağına çayı koy.
( ) Ocağı aç ve suyu kaynat.
( ) Su kaynadığında demliğe dök.
( ) Çaydanlığa su koy.
( ) Demliğe çay koy.
( ) 10 dakika demlenmeye bırak.
Etkinlik 4 – Kod Okuma
Yönerge: Aşağıdaki Scratch kod bloklarını okuyunuz ve soruları cevaplayınız.
[Yeşil bayrak tıklandığında]
[3 kere tekrarla]
[50 adım git]
[1 saniye bekle]
[90 derece sağa dön]
[tekrarla sonu]
["Bitti!" de 2 saniye]
a) Bu programda karakter toplam kaç adım yürür? ____________________
b) Karakter kaç kez sağa döner? ____________________
c) Program çalışmayı bitirdiğinde karakter ne der? ____________________
d) Döngü kaç kez tekrar eder? ____________________
Etkinlik 5 – Kendi Algoritmamı Yazıyorum
Yönerge: Aşağıdaki durumlar için kendi algoritmanızı en az 5 adımda yazınız.
Durum: Scratch'te bir kedinin sahnede ileri gidip, duvara çarpınca geri dönmesini istiyorsunuz.
Adım 1: ____________________________________________________________
Adım 2: ____________________________________________________________
Adım 3: ____________________________________________________________
Adım 4: ____________________________________________________________
Adım 5: ____________________________________________________________
Adım 6 (isteğe bağlı): ________________________________________________
Etkinlik 6 – Hata Bulma
Yönerge: Aşağıdaki kodda bir hata var. Hatayı bulunuz ve doğrusunu yazınız.
[50 adım git]
[Yeşil bayrak tıklandığında]
["Merhaba!" de 2 saniye]
[90 derece sağa dön]
Hata nedir? ____________________________________________________________
Doğru sıralama nasıl olmalı?
1. ____________________________________________________________
2. ____________________________________________________________
3. ____________________________________________________________
4. ____________________________________________________________
Etkinlik 7 – Koşul Yapısı Oluşturma
Yönerge: Aşağıdaki günlük hayat durumlarını "Eğer ... ise ... değilse ..." şeklinde yazınız.
Örnek: Eğer hava yağmurluysa şemsiye al, değilse güneş gözlüğü tak.
1. (Sınav notu hakkında): Eğer ________________________________, değilse ________________________________.
2. (Okula gidiş hakkında): Eğer ________________________________, değilse ________________________________.
3. (Oyun oynama hakkında): Eğer ________________________________, değilse ________________________________.
Etkinlik 8 – Blok Kategorisi Renklendirme
Yönerge: Aşağıdaki blokların yanına hangi kategoriye ait olduklarını ve renklerini yazınız.
1. "10 adım git" → Kategori: __________________ Renk: __________________
2. "Yeşil bayrak tıklandığında" → Kategori: __________________ Renk: __________________
3. "Merhaba de 2 saniye" → Kategori: __________________ Renk: __________________
4. "10 kere tekrarla" → Kategori: __________________ Renk: __________________
5. "Sesi çal" → Kategori: __________________ Renk: __________________
Etkinlik 9 – Proje Planlama
Yönerge: Scratch'te yapmak istediğiniz bir proje düşünün ve aşağıdaki alanları doldurunuz.
Projemin adı: ____________________________________________________________
Projemin konusu: ____________________________________________________________
Kullanacağım karakterler: ____________________________________________________________
Kullanacağım arka plan: ____________________________________________________________
Kullanacağım blok türleri: ____________________________________________________________
Projemin algoritması (en az 5 adım):
1. ____________________________________________________________
2. ____________________________________________________________
3. ____________________________________________________________
4. ____________________________________________________________
5. ____________________________________________________________
Etkinlik 10 – Doğru mu Yanlış mı?
Yönerge: Aşağıdaki ifadelerin doğru olanlarına (D), yanlış olanlarına (Y) yazınız.
( ) 1. Blok tabanlı kodlamada bloklar sürüklenip bırakılarak kullanılır.
( ) 2. Scratch'te programı başlatmak için kırmızı daireye tıklanır.
( ) 3. Döngü, belirli komutların tekrar tekrar çalıştırılmasını sağlar.
( ) 4. Algoritma yazarken adımların sırası önemli değildir.
( ) 5. Koşul yapısı "eğer ... ise" bloğu ile kurulur.
( ) 6. Değişken, bir değeri saklamak için kullanılır.
( ) 7. Scratch sadece yetişkinlerin kullanabileceği bir programdır.
( ) 8. Hata ayıklama, programdaki hataları bulup düzeltme işlemidir.
4. Sınıf Bilişim Teknolojileri ve Yazılım – Blok Tabanlı Kodlama Çalışma Kağıdı | Başarılar dileriz!
Sıkça Sorulan Sorular
4. 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 4. 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.
4. sınıf blok tabanlı kodlama konuları hangi dönemlerde işleniyor?
4. 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.
4. 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.