bote.web.tr AGS rehberiniz

Yükleniyor…

    Menü
    Eğitim Teknolojileri

    Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf

    Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf

    Blok tabanlı programlama nedir, neden kullanılır? Sürükle-bırak kodlama, döngü, koşul, değişken ve fonksiyon blokları; BTY 5-6. sınıf kazanımları, araştırmalar.

    Blok tabanlı programlama, Maarif Modeli'nin Bilişim Teknolojileri ve Yazılım (BTY) dersinde yılın en büyük temasının merkezinde. 5. sınıfta 24, 6. sınıfta 34 ders saati ayrılan Yazılım Tasarımı ve Programlama temasında öğrenciler blok tabanlı ortamda kendi yazılımlarını geliştiriyor.[1] Bu yazı blok tabanlı programlamanın ne olduğunu, temel blokları, BTY kazanımlarını ve araştırmaların bu yöntem hakkında ne söylediğini anlatıyor.

    Blok tabanlı programlama nedir?

    Blok tabanlı programlamada komutlar klavyeyle yazılmaz; renkli bloklar hâlinde sürüklenip bırakılarak birleştirilir. En bilinen örnek olan Scratch'in tasarımcıları, blokların yapboz parçası gibi yalnız sözdizimsel olarak anlamlı biçimde birbirine oturduğunu, bu yüzden metin tabanlı dillerdeki yazım hatalarının ortadan kalktığını anlatıyor. Amaç, programlamayı herkes için, özellikle gençler için erişilebilir kılmak.[2]

    BTY programı belirli bir ürün adı vermiyor; "yapılandırılmış, eğitim odaklı ve öğretmen rehberliğinde kullanılmaya uygun" bir blok tabanlı yazılım geliştirme ortamı öneriyor. Öğretmen bu ortamda kodlamanın sürükle-bırak yöntemiyle yapıldığını gösteriyor; öğrenciler önce sıralı komutlarla algoritma oluşturuyor.[1]

    Temel bloklar ve kavramlar

    Program iki yıl boyunca şu kavramları sırayla kuruyor:[1]

    KavramProgramdaki örnekSınıf
    KomutBilgisayara bir işi yaptırmak için verilen yönlendirme5
    Sabit ve değişkenOyunda oyun alanı ve kurallar sabit; oyuncu sayısı, skor, süre değişken5
    Operatör"Okula kaç dakikada geliyorsunuz?" sorusu için çıkış ve varış saatleriyle hesap5
    KoşulEğer-değilse blokları6
    DöngüTekrar eden hareketler5-6
    FonksiyonTekrar eden komut gruplarını özel blok hâline getirmek6

    Değişken kavramı programda günlük hayattan kuruluyor: öğrenciler futbol, saklambaç ya da ip atlama gibi bir oyunu düşünüp oyundaki sabitleri ve değişkenleri gruplar hâlinde belirliyor.[1] Algoritma ve akış şeması tarafı için algoritma ve akış şeması.

    5. sınıf kazanımları

    1. sınıfın programlama teması dört öğrenme çıktısından oluşuyor; son ikisi doğrudan blok tabanlı ortamla ilgili:[1]
    Kazanımİçerik
    BTY.5.6.3Yazılım geliştirme sürecinde kullanılan bileşenleri tanımlar, kullanır, değerlendirir
    BTY.5.6.4Blok tabanlı ortamda yazılım geliştirme sürecini planlar, tasarlar, oluşturur

    Öğrenciler gruplar hâlinde kendi yazılım fikirlerini (oyun, karakter hareket ettirme gibi) seçiyor; yazılımın amacını, kullanıcısını, karakterlerini ve kontrol koşullarını planlayıp tasarımı önce kâğıt üzerinde çiziyor, sonra blok tabanlı ortamda geliştiriyor.[1] Yılın tamamı için BTY 5. sınıf konuları.

    6. sınıf: fonksiyon, proje ve yapay zekâ

    1. sınıfta üç öğrenme çıktısı var: blok tabanlı ortamdaki bileşenlerden yararlanma (BTY.6.6.1), yazılım geliştirme sürecini yönetme (BTY.6.6.2) ve yapay zekâ destekli ürün ortaya koyma (BTY.6.6.3).[1]

    Fonksiyon. Program fonksiyonu bir benzetmeyle açıyor: "Çamaşır makinesine gerekli temizlik malzemelerini yerleştirip kirli kıyafetleri koyup çalıştırdığımızda ne olur?" Ardından bir karakterin sürekli sağa ve sola dönmesini sağlayan kodda tekrar eden bölümler fark ettiriliyor, bu bölümler özel bir blokta toplanıp fonksiyon olarak çağrılıyor. Öğrenciler fonksiyonsuz uzun kodla fonksiyonlu kısa kodu karşılaştırıp rapor yazıyor.[1]

    Proje. Gruplar ortak bir proje fikri belirliyor; hangi blokları kullanacaklarını, karakterlerin nasıl hareket edeceğini ve hangi matematiksel işlemlerin yapılacağını planlıyor. Hareket, koşul (eğer-değilse), döngü, değişken ve fonksiyon bloklarıyla tasarlayıp oluşturuyor; "Programınız beklendiği gibi çalışıyor mu? Hangi blokları neden kullandınız?" sorularıyla değerlendiriyor ve raporlarını EBA bilgi duvarında paylaşıyor.[1]

    Yapay zekâ destekli ürün. Yılın son çalışmasında öğrenciler gerçek bir hayat problemi için yapay zekâ destekli bir blok projesi belirliyor, gereksinimleri (kullanıcı giriş ekranı, sesli komut desteği, öneri güncellemesi gibi) çıkarıyor. Öğretmen blok tabanlı uygulamalardaki görüntü tanıma, sesli komut analizi ve öneri sistemi gibi yapay zekâ eklentilerini tanıtıyor.[1] Ayrıntı: BTY yapay zekâ konuları.

    Neden blok tabanlı? Araştırmalar ne diyor?

    Blok tabanlı programlamanın okulda yaygınlaşmasının arkasında bilgi işlemsel düşünme fikri var. Wing bu düşünme biçimini herkesin kazanması gereken temel bir beceri olarak tanımladı;[3] Grover ve Pea'nın derlemesi de okul düzeyinde bu becerinin soyutlama, algoritmik düşünme ve hata ayıklama gibi bileşenlerini öne çıkardı.[4]

    Blokların neden işe yaradığını sınayan çalışmalardan ikisi öne çıkıyor:

    • Price ve Barnes (2015) aynı programlama etkinliğini iki acemi grubuna, biri blok biri metin arayüzüyle yaptırdı. Arayüz öğrencilerin tutumunu ya da algıladıkları zorluğu değiştirmedi; ama blok arayüzünü kullananlar görevden daha az uzaklaştı ve daha kısa sürede daha çok hedef tamamladı.[5]
    • Weintrop ve Wilensky (2015) lise öğrencilerine blok ve metin tabanlı programlamayı karşılaştırttı. Öğrenciler kolaylığı doğal dile yakın bloklara, sürükle-bırak etkileşimine ve dilin göz atarak keşfedilebilmesine bağladı; ama blok ortamını daha az "gerçek" ve daha az güçlü de buldular.[6]

    Programlama öğreniminin genel etkisine bakan meta-analiz, programlama öğrenen öğrencilerin özellikle problem çözme ve mantıksal akıl yürütme gibi yakın becerilerde kazanım gösterdiğini buldu.[7] ISTE de öğrencilerden "bilgi işlemsel düşünür" olarak problemi adımlara bölmelerini ve otomasyonu kullanmalarını bekliyor.[8]

    Öğretmen ve veliler için notlar

    • Blok, son durak değil. Weintrop ve Wilensky'nin bulgusu, öğrencilerin bir noktada metin tabanlı dile geçmek isteyeceğini gösteriyor; blok ortamında kurulan döngü, koşul ve değişken kavramları bu geçişin temeli.[6]
    • Önce kâğıt. Program tasarımın önce kâğıt üzerinde çizilmesini ve teknolojik altyapı yoksa etkinliklerin kâğıt üzerinde yapılmasını öneriyor.[1]
    • Hata, sürecin parçası. Test etme ve hata ayıklama ayrı bir öğrenme çıktısı; çalışmayan bir program öğrenmenin kendisi.[1]

    Temaya göre içerikler programın resmî sayfasında yayımlanıyor.[9] 6. sınıfın tamamı için BTY 6. sınıf konuları.

    Özet

    • Blok tabanlı programlama, komutların yazmak yerine yapboz parçası gibi sürükle-bırak bloklarla birleştirildiği programlama.
    • Temel bloklar: hareket, olay, koşul (eğer-değilse), döngü, değişken ve fonksiyon (özel blok).
    • BTY'de 5. sınıfta 24, 6. sınıfta 34 ders saati; 6. sınıfta yapay zekâ destekli blok projesi de var.
    • Bloklar yalnız anlamlı biçimde birleşir; yazım hatası olmadığı için öğrenci mantığa odaklanır.
    • Araştırmalar blok arayüzünün acemilerde görev süresini kısalttığını, ama metin tabanlı dile geçişin ayrıca planlanması gerektiğini gösteriyor.

    Sık sorulan sorular

    Blok tabanlı programlama nedir?

    Komutların klavyeyle yazılmak yerine renkli bloklar hâlinde sürüklenip birleştirildiği programlama yöntemidir. Bloklar yapboz gibi yalnız anlamlı biçimde birbirine oturur.

    Blok tabanlı programlama örnekleri nelerdir?

    Scratch en bilinen örnektir. BTY programı belirli bir ürün adı vermez; eğitim odaklı ve öğretmen rehberliğinde kullanılmaya uygun bir blok tabanlı ortam önerir.

    Blok tabanlı kodlamanın avantajları nelerdir?

    Yazım hatası olmaz, komutlar doğal dile yakın okunur, öğrenci hangi blokların var olduğunu göz atarak keşfeder ve mantığa odaklanır.

    Blok tabanlı programlamanın dezavantajı var mı?

    Araştırmalarda öğrenciler blok ortamını metin tabanlı dillere göre daha az gerçekçi ve daha az güçlü bulabiliyor; büyük projelerde blok sayısı artınca okumak zorlaşıyor.

    BTY'de fonksiyon nedir?

    Tekrar eden komut gruplarını tek bir özel blok hâline getirmektir. 6. sınıf programında kodu kısaltma, okunur kılma ve yeniden kullanma amacıyla işlenir.

    6. sınıfta blok tabanlı programlamada ne yapılıyor?

    Gruplar bir proje fikri belirleyip planlıyor, hareket, koşul, döngü, değişken ve fonksiyon bloklarıyla tasarlıyor, test ediyor; yılın son projesi yapay zekâ destekli bir blok ürünü.

    Kaynaklar

    1. 1

      Millî Eğitim Bakanlığı Talim ve Terbiye Kurulu Başkanlığı (2025). Bilişim Teknolojileri ve Yazılım Dersi Öğretim Programı (5 ve 6. Sınıflar), Türkiye Yüzyılı Maarif Modeli 2025. ↑ Metinde: abcçdefgğhıi

    2. 2

      Resnick, M., Maloney, J., Monroy-Hernández, A. ve diğerleri (2009). Scratch: Programming for all. Communications of the ACM, 52(11), 60–67. ↑ Metinde göster

    Tümünü gör · 7 kaynak dahaDaha az göster
    1. 3

      Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 33–35. ↑ Metinde göster

    2. 4

      Grover, S. ve Pea, R. (2013). Computational thinking in K–12: A review of the state of the field. Educational Researcher, 42(1), 38–43. ↑ Metinde göster

    3. 5

      Price, T. W. ve Barnes, T. (2015). Comparing textual and block interfaces in a novice programming environment. Proceedings of the 11th Annual International Conference on International Computing Education Research (ICER), 91–99. ↑ Metinde göster

    4. 6

      Weintrop, D. ve Wilensky, U. (2015). To block or not to block, that is the question: Students' perceptions of blocks-based programming. Proceedings of the 14th International Conference on Interaction Design and Children, 199–208. ↑ Metinde: ab

    5. 7

      Scherer, R., Siddiq, F. ve Sánchez Viveros, B. (2019). The cognitive benefits of learning computer programming: A meta-analysis of transfer effects. Journal of Educational Psychology, 111(5), 764–792. ↑ Metinde göster

    6. 8

      International Society for Technology in Education (ISTE) (2016). ISTE Standards: For Students. ↑ Metinde göster

    7. 9

      Millî Eğitim Bakanlığı (2026). Bilişim Teknolojileri ve Yazılım Dersi (Türkiye Yüzyılı Maarif Modeli öğretim programı sayfası). ↑ Metinde göster

    Atıf

    APA 7

    BÖTE Editör Ekibi. (2026, 31 Ekim). Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf. BÖTE Blog. https://bote.web.tr/blog/blok-tabanli-programlama

    BibTeX

    @online{bote-blok-tabanli-programlama,
      author       = {{BÖTE Editör Ekibi}},
      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
      organization = {BÖTE Blog},
      year         = {2026},
      date         = {2026-10-31},
      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
      langid       = {turkish}
    }

    Sitene göm

    Atıf kartını kendi sitenize ya da ders sayfanıza ekleyin. Kart APA 7 ve BibTeX kaydını birlikte taşır.

    Her sitede çalışır, JavaScript gerektirmez; bağlantı arama motorlarınca da görülür.

    <blockquote class="bote-atif" cite="https://bote.web.tr/blog/blok-tabanli-programlama">
      <p><strong><a href="https://bote.web.tr/blog/blok-tabanli-programlama">Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf</a></strong> · BÖTE Blog</p>
      <p>BÖTE Editör Ekibi. (2026, 31 Ekim). Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf. <i>BÖTE Blog</i>. https://bote.web.tr/blog/blok-tabanli-programlama</p>
      <details>
        <summary>BibTeX</summary>
        <pre>@online{bote-blok-tabanli-programlama,
      author       = {{BÖTE Editör Ekibi}},
      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
      organization = {BÖTE Blog},
      year         = {2026},
      date         = {2026-10-31},
      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
      langid       = {turkish}
    }</pre>
      </details>
    </blockquote>

    Hazır atıf kartı; yazı güncellendiğinde kart da kendiliğinden güncellenir.

    <iframe src="https://bote.web.tr/blog/embed/blok-tabanli-programlama"
      title="Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf: atıf kartı (BÖTE Blog)"
      width="100%" height="360" loading="lazy"
      style="border:0;max-width:680px"></iframe>

    README, GitHub, Notion ve statik site üreticileri için.

    > **[Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf](https://bote.web.tr/blog/blok-tabanli-programlama)** · BÖTE Blog
    >
    > BÖTE Editör Ekibi. (2026, 31 Ekim). Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf. *BÖTE Blog*. https://bote.web.tr/blog/blok-tabanli-programlama
    
    ```bibtex
    @online{bote-blok-tabanli-programlama,
      author       = {{BÖTE Editör Ekibi}},
      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
      organization = {BÖTE Blog},
      year         = {2026},
      date         = {2026-10-31},
      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
      langid       = {turkish}
    }
    ```

    React ve Next.js bileşeni.

    const bibtex = `@online{bote-blok-tabanli-programlama,
      author       = {{BÖTE Editör Ekibi}},
      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
      organization = {BÖTE Blog},
      year         = {2026},
      date         = {2026-10-31},
      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
      langid       = {turkish}
    }`;
    
    export function BoteAtif() {
      return (
        <blockquote className="bote-atif" cite="https://bote.web.tr/blog/blok-tabanli-programlama">
          <p><a href="https://bote.web.tr/blog/blok-tabanli-programlama"><strong>Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf</strong></a> · BÖTE Blog</p>
          <p>BÖTE Editör Ekibi. (2026, 31 Ekim). Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf. <i>BÖTE Blog</i>. https://bote.web.tr/blog/blok-tabanli-programlama</p>
          <details>
            <summary>BibTeX</summary>
            <pre>{bibtex}</pre>
          </details>
        </blockquote>
      );
    }

    Vue 3 tek dosya bileşeni (Nuxt ile de çalışır).

    <script setup>
    const bibtex = `@online{bote-blok-tabanli-programlama,
      author       = {{BÖTE Editör Ekibi}},
      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
      organization = {BÖTE Blog},
      year         = {2026},
      date         = {2026-10-31},
      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
      langid       = {turkish}
    }`;
    </script>
    
    <template>
      <blockquote class="bote-atif" cite="https://bote.web.tr/blog/blok-tabanli-programlama">
        <p><a href="https://bote.web.tr/blog/blok-tabanli-programlama"><strong>Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf</strong></a> · BÖTE Blog</p>
        <p>BÖTE Editör Ekibi. (2026, 31 Ekim). Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf. <i>BÖTE Blog</i>. https://bote.web.tr/blog/blok-tabanli-programlama</p>
        <details>
          <summary>BibTeX</summary>
          <pre>{{ bibtex }}</pre>
        </details>
      </blockquote>
    </template>

    Svelte ve SvelteKit bileşeni.

    <script>
      const bibtex = `@online{bote-blok-tabanli-programlama,
      author       = {{BÖTE Editör Ekibi}},
      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
      organization = {BÖTE Blog},
      year         = {2026},
      date         = {2026-10-31},
      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
      langid       = {turkish}
    }`;
    </script>
    
    <blockquote class="bote-atif" cite="https://bote.web.tr/blog/blok-tabanli-programlama">
      <p><a href="https://bote.web.tr/blog/blok-tabanli-programlama"><strong>Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf</strong></a> · BÖTE Blog</p>
      <p>BÖTE Editör Ekibi. (2026, 31 Ekim). Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf. <i>BÖTE Blog</i>. https://bote.web.tr/blog/blok-tabanli-programlama</p>
      <details>
        <summary>BibTeX</summary>
        <pre>{bibtex}</pre>
      </details>
    </blockquote>

    Atıf verisini JSON olarak çekip sayfaya ekler.

    // Sayfanızda <div id="bote-atif"></div> bulunmalı.
    const yanit = await fetch("https://bote.web.tr/blog/atif/blok-tabanli-programlama.json");
    const atif = await yanit.json();
    
    const kutu = document.getElementById("bote-atif");
    const baslik = Object.assign(document.createElement("a"), { href: atif.url, textContent: atif.title });
    const apa = Object.assign(document.createElement("p"), { textContent: atif.apa });
    const bib = Object.assign(document.createElement("pre"), { textContent: atif.bibtex });
    kutu.append(baslik, apa, bib);

    APA 7 metnini yazdırır, BibTeX kaydını .bib dosyasına ekler.

    import requests
    
    atif = requests.get("https://bote.web.tr/blog/atif/blok-tabanli-programlama.json", timeout=10).json()
    
    print(atif["apa"])  # APA 7
    with open("kaynaklar.bib", "a", encoding="utf-8") as bib:
        bib.write(atif["bibtex"] + "\n")  # BibTeX

    biblatex ile APA 7 biçeminde kaynakça.

    % 1) BibTeX kaydını kaynaklar.bib dosyasına ekleyin:
    %    @online{bote-blok-tabanli-programlama,
    %      author       = {{BÖTE Editör Ekibi}},
    %      title        = {Blok Tabanlı Programlama Nedir? BTY 5 ve 6. Sınıf},
    %      organization = {BÖTE Blog},
    %      year         = {2026},
    %      date         = {2026-10-31},
    %      url          = {https://bote.web.tr/blog/blok-tabanli-programlama},
    %      langid       = {turkish}
    %    }
    
    % 2) Belgede APA 7 biçemiyle kullanın:
    \documentclass{article}
    \usepackage[style=apa]{biblatex}
    \addbibresource{kaynaklar.bib}
    \begin{document}
    Ayrıntı için bkz. \parencite{bote-blok-tabanli-programlama}.
    \printbibliography
    \end{document}

    Yayın tarihi:

    İş birliği

    Ücretsiz indir ve kaydol

    Üniversite hayatının fırsatları tek uygulamada

    App Store'dan indirGoogle Play'den indirAppGallery'den indir
    UniConnectly'yi keşfet