📌 Konu

Blok Tabanlı Kodlama

Blok tabanlı kodlama ortamında (Scratch vb.) basit programlar oluşturma.

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.

Sınav

4. Sınıf Bilişim Teknolojileri ve Yazılım – Blok Tabanlı Kodlama Sınavı

Bu sınavda 4. Sınıf Bilişim Teknolojileri ve Yazılım dersinin Blok Tabanlı Kodlama konusundan toplam 20 soru bulunmaktadır. Her soruyu dikkatlice okuyarak doğru seçeneği işaretleyiniz.

Sorular

1. Bilgisayara ne yapması gerektiğini anlatan komutlar yazma işlemine ne denir?
A) Çizim
B) Kodlama
C) Yazım
D) Boyama

2. Bir işi yapmak için izlenen adımların sıralı listesine ne ad verilir?
A) Döngü
B) Değişken
C) Algoritma
D) Koşul

3. Blok tabanlı kodlamada kodlar nasıl yazılır?
A) Klavyeyle metin yazılarak
B) Bloklar sürüklenip bırakılarak
C) Fare ile çizim yapılarak
D) Sesli komut verilerek

4. Aşağıdakilerden hangisi bir blok tabanlı kodlama aracıdır?
A) PowerPoint
B) Scratch
C) Excel
D) Chrome

5. Scratch programında karakterlere ne ad verilir?
A) Sahne
B) Blok
C) Sprite (Karakter)
D) Kostüm

6. Scratch'te mavi renkli bloklar hangi kategoriye aittir?
A) Görünüm
B) Olaylar
C) Hareket
D) Ses

7. Programın ne zaman başlayacağını belirleyen blok kategorisi hangisidir?
A) Kontrol
B) Olaylar
C) Hareket
D) Algılama

8. "10 kere tekrarla" bloğu hangi yapıya örnektir?
A) Koşul
B) Değişken
C) Döngü
D) Olay

9. "Eğer kenara değiyorsa sek" komutunda kullanılan yapı hangisidir?
A) Döngü
B) Sıralı yapı
C) Koşul yapısı
D) Değişken

10. Programdaki hataları bulup düzeltme işlemine ne denir?
A) Döngü
B) Hata ayıklama (Debug)
C) Animasyon
D) Kodlama

11. Scratch'te programı başlatmak için hangi düğmeye tıklanır?
A) Kırmızı daire
B) Yeşil bayrak
C) Mavi ok
D) Sarı yıldız

12. Aşağıdakilerden hangisi bir döngü örneğidir?
A) Eğer hava güzelse dışarı çık
B) Diş fırçanı al
C) 10 kere zıpla
D) Adını yaz

13. Bir oyunda puanı saklamak için hangi yapı kullanılır?
A) Döngü
B) Değişken
C) Koşul
D) Olay

14. "Sürekli tekrarla" bloğu ne zaman durur?
A) 10 tekrardan sonra
B) Program durdurulduğunda
C) Karakter kenara geldiğinde
D) 1 saniye sonra

15. Akış şemasında karar noktasını gösteren şekil hangisidir?
A) Dikdörtgen
B) Oval
C) Eşkenar dörtgen (Baklava dilimi)
D) Daire

16. Scratch'te "Merhaba de 2 saniye" bloğu hangi kategoriye aittir?
A) Hareket
B) Ses
C) Görünüm
D) Kontrol

17. Komutların yukarıdan aşağıya sırasıyla çalıştığı yapıya ne denir?
A) Döngü yapısı
B) Koşul yapısı
C) Sıralı yapı
D) Değişken yapısı

18. Aşağıdakilerden hangisi blok tabanlı kodlamanın avantajlarından biri değildir?
A) Yazım hatası yapma riski azdır
B) Görsel ve eğlencelidir
C) Bloklar renklerle kategorize edilmiştir
D) Sadece profesyonel programcılar kullanabilir

19. Scratch'te iki karakter arasında iletişim kurmak için hangi yöntem kullanılır?
A) Değişken oluşturmak
B) Mesaj gönder ve al blokları
C) Döngü bloğu
D) Bekleme bloğu

20. Aşağıdaki algoritmada eksik olan adım hangisidir?
"1. Musluğu aç – 2. Elleri ıslat – 3. ??? – 4. Elleri ovala – 5. Elleri durula – 6. Musluğu kapat – 7. Elleri kurula"
A) Suyu kapat
B) Sabun al
C) Aynaya bak
D) Havluyu as

Cevap Anahtarı

1. B) Kodlama
2. C) Algoritma
3. B) Bloklar sürüklenip bırakılarak
4. B) Scratch
5. C) Sprite (Karakter)
6. C) Hareket
7. B) Olaylar
8. C) Döngü
9. C) Koşul yapısı
10. B) Hata ayıklama (Debug)
11. B) Yeşil bayrak
12. C) 10 kere zıpla
13. B) Değişken
14. B) Program durdurulduğunda
15. C) Eşkenar dörtgen (Baklava dilimi)
16. C) Görünüm
17. C) Sıralı yapı
18. D) Sadece profesyonel programcılar kullanabilir
19. B) Mesaj gönder ve al blokları
20. B) Sabun al

Ç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.