Resimli Soru (Blok Tabanlı Programlama Kazanımları)
Merhaba! Paylaştığınız görselde, “6.5.2.1” ile başlayıp “6.5.2.12” ye kadar uzanan çeşitli blok tabanlı programlama kazanımlarının listelendiğini görüyoruz. Bu maddeler, genellikle bir programlama ya da bilişim dersinde öğrencilerin veya kullanıcıların hangi aşamada hangi yetkinlikleri kazanması gerektiğini anlatan hedef veya kazanım başlıklarıdır. Aşağıda, madde madde bu kazanımların ne anlama geldiğini, pratikte ne tür çalışmalar yapıldığını ve nasıl uygulanabileceğini açıklamaya çalışacağım.
İçindekiler
- Blok Tabanlı Programlamaya Giriş
- 6.5.2.1 – Arayüz ve Özellikleri Tanıma
- 6.5.2.2 – Program İşlevlerini Açıklama
- 6.5.2.3 – Program Hatalarını Ayıklama
- 6.5.2.4 – Programı Geliştirme ve Düzenleme
- 6.5.2.5-6 – Doğrusal Mantık Yapısı ve Test Etme
- 6.5.2.7 – Karar Yapısı Oluşturma
- 6.5.2.9-6.5.2.10 – Çoklu Karar Yapıları ve Test Etme
- 6.5.2.11-6.5.2.12 – Döngü Oluşturma ve Test Etme
- Özet Tablo
- Kısa Özet
1. Blok Tabanlı Programlamaya Giriş
Blok tabanlı programlama, kod yazmak yerine önceden tanımlanmış blokları (örneğin sürükle-bırak yöntemini) kullanarak yazılım geliştirmeyi kolaylaştıran bir yaklaşımdır. “Scratch”, “MBlock” veya “App Inventor” gibi platformlar bu yöntemi kullanır. Böylece karmaşık sözdizimi hataları yerine, mantığı görsel bloklar yardımıyla kurgular ve programın akışını rahatça düzenleyebilirsiniz.
2. 6.5.2.1 – Blok Tabanlı Programlama Aracının Arayüzünü ve Özelliklerini Tanıma
Bu kazanım, kullanılan blok tabanlı IDE’nin veya uygulamanın:
- Menülerini,
- Blok kategorilerini,
- Çalışma alanını,
- Oynatma/Denetleme butonlarını,
- Kütüphane ve eklentileri
gibi temel bileşenlerini tanımayı amaçlar. Örnek olarak Scratch’te “Sahne”, “Kodlar”, “Kostüm”, “Ses” sekmeleri ve bunların sistematiği öğrenilir.
3. 6.5.2.2 – Blok Tabanlı Programlama Aracında Sunulan Bir Programın İşlevlerini Açıklama
Öğrenciler veya kullanıcılar, hali hazırda hazırlanmış bir örnek projedeki:
- Kod bloklarının ne yaptığını,
- Blokların birbirleriyle nasıl etkileşime geçtiğini,
- Programın genel çalışmasını
anlar, açıklayabilir. Bu aşamada, programdaki her bir bloğun amacı, hangi olaylar tetiklendiğinde neler olduğu, program akışının sırası gibi konulara hâkim olunur.
4. 6.5.2.3 – Blok Tabanlı Programlama Aracında Sunulan Bir Programın Hatalarını Ayıklama
Bu kazanım, verilen bir kodu veya projeyi çalıştırıp test ederek:
- Yanlış blok kullanımını,
- Eksik bağlantıları,
- Beklenen davranışı göstermeyen kısımları
tespit etmeyi ve düzeltmeyi ifade eder. “Debugging” olarak da bilinen hata ayıklama süreci, programcılık becerilerinin gelişmesi için çok kritiktir.
5. 6.5.2.4 – Blok Tabanlı Programlama Aracında Sunulan Bir Programı Geliştirerek Düzenleme
Mevcutta örnek bir proje sunulur ve hedef, bu projeyi:
- Yeni özellikler ekleyerek,
- Görsel öğretileri değiştirerek veya,
- Etkileşimi artırarak,
geliştirmektir. Bir nevi “programı iyileştirme” ve istenen kriterlere göre yeniden düzenleme çalışması yapılmış olur.
6. 6.5.2.5-6 – Doğrusal Mantık Yapısı İçeren Programlar Oluşturma ve Hata Ayıklama
- 6.5.2.5: Doğrusal (lineer) mantık yapısı, kodun adım adım işlem yapması anlamına gelir. Başlangıçtan sona kadar bir dizi talimat sırayla uygulanır. Burada öğrenciler, temelde bir girdi alıp bir çıktı üreten, dallanma veya döngü içermeyen kod yazabilir.
- 6.5.2.6: Yazılan doğrusal kodun veya programın test edilip hatalarını ayıklama sürecini içerir. Örneğin, işlem sırası yanlışsa veya beklentileri karşılamıyorsa, hataları bularak düzeltmeye odaklanılır.
7. 6.5.2.7 – Karar Yapısını İçeren Programlar Oluşturma
Bu aşamada, if-else benzeri koşullu ifadeler kullanarak programlara karar verme yetisi kazandırılır. Örneğin, “Kullanıcının girdiği sayı pozitifse bunu ekrana yazdır, değilse uyarı ver” gibi mantıklar eklenir.
8. 6.5.2.9-6.5.2.10 – Çoklu Karar Yapıları İçeren Programlar Oluşturma ve Test Etme
- 6.5.2.9: Birden fazla koşula göre farklı sonuçların çalıştığı programlar hazırlamayı kapsar. Örnek: Bir oyunda kullanıcının puan aralığına göre farklı mesajlar göstermek.
- 6.5.2.10: Bu programları test ederek farklı koşullarda doğru çalışıp çalışmadığını denetleme ve hataları düzeltme eylemidir.
9. 6.5.2.11-6.5.2.12 – Döngü Yapısını İçeren Programlar Oluşturma ve Test Etme
- 6.5.2.11: Döngü (loop) kullanımı, örneğin “bir işlemi 10 kez tekrarla” veya “bir liste içindeki tüm elemanları sırayla işleme al” gibi yapıların oluşturulmasını konu alır.
- 6.5.2.12: Oluşturulan döngü mekanizmalarını test ederek, sonsuz döngü oluşup oluşmadığını veya beklenen davranışın gerçekleşip gerçekleşmediğini kontrol etmeyi içerir.
10. Özet Tablo
| Kazanım Kodu | İçerik Kısa Açıklama | Örnek Uygulama |
|---|---|---|
| 6.5.2.1 | Blok tabanlı arayüzü ve özellikleri tanıma | Scratch veya MBlock’ta menüleri inceleme |
| 6.5.2.2 | Programın işlevlerini açıklama | Hazır örnek proje bloklarını yorumlama |
| 6.5.2.3 | Mevcut programın hatalarını ayıklama | Yanlış blok kullanımlarını düzeltme |
| 6.5.2.4 | Mevcut programı verilen ölçütlere göre düzenleme | Grafikleri/arayüzü yenileme, ek özellik ekleme |
| 6.5.2.5, 6.5.2.6 | Doğrusal mantık oluşturma ve test etme, hataları giderme | Adım adım işlem yapan küçük bir hesaplama proj. |
| 6.5.2.7 | Karar yapısı içeren program oluşturma | If-else bloklarıyla koşullu program |
| 6.5.2.9, 6.5.2.10 | Çoklu karar yapıları, test etme ve hata ayıklama | Birden çok if-else içeren, karmaşık koşullu program |
| 6.5.2.11, 6.5.2.12 | Döngü yapıları ekleme, test etme ve hata ayıklama | For/While benzeri bloklarla tekrarlı işlem yapan kodlar |
11. Kısa Özet
Görselde listelenen “6.5.2.x” kazanımları, blok tabanlı programlamanın temel parçalarını öğrenmeyi ve uygulamayı içerir. Bu kapsamda; bloklarla program arayüzü tanınıp kullanılmakta, doğrusal veya çoklu karar yapıları kurulmakta, döngüler ve koşullar test edilerek hataları ayıklanmaktadır. Bu süreç, kodlama mantığını daha pratik ve görsel bir ortamda öğrenmeyi hedefler.
