Sınıf Bilgileri
Sınıflar: 8-12 (öğrenciler bu sınıfa katılmak için en az 13 yaşında olmalıdır)
Ders süresi: Bir saat
Kullanılan araç: Fortnite Kreatif
Sınıf / öğrenme ortamı: Bire bir cihaz öğrenci oranına ve internet bağlantısına sahip Fortnite çalıştırabilecek bir cihaz. Bir bilgisayar laboratuvarı veya mobil dizüstü bilgisayar masası ideal ortamı sağlar.
Yazarla İletişim
Yazarlar: Steven Isaacs ve Brian Dickman
E-posta: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: www.linkedin.com/in/steve-isaacs | www.linkedin.com/in/cleverlike
SINIF/ÖĞRENİM ORTAMI AÇIKLAMASI
Bu ders, Bilgisayar Bilimleri Eğitimi Haftası sırasında Hour of Code için tasarlanmıştır.
Bu, tek başına bir ders olarak verilebilir veya daha büyük bir projeyi tamamlamak için diğer aktivitelerle birlikte kullanılabilir.
Yazar Steve Isaacs, Epic Games'de Eğitim Programı Yöneticisi'dir. Görevi uyarınca, ortaokul düzeyindeki öğretmenler ve öğrencilerin Unreal Engine, Fortnite Kreatif ve Twinmotion gibi araçları sınıfa taşımalarını destekliyor. Epic'teki görevinden önce Steve Isaacs, Oyun Tasarımı ve Geliştirmeyi, öğrencilere içerik ve proje seçenekleri açısından kendi ilgi alanlarına göre öğrenme çıktılarını karşılamaya yönelik farklı yaklaşımlar alma fırsatları sağlayan, seçime dayalı bir öğrenme ortamı olarak öğretiyordu.
Yazar Brian Dickman bilgisayar bilimi okudu ve popüler video oyunlarında eğlenceli ve eğitici içerik üreten tam zamanlı bir oyun geliştirme stüdyosu işletiyor.
Derse Genel Bakış
Daha önce hiç video oyunlarında puanlamanın nasıl hesaplandığını düşünmüş müydün?
Eğer daha önce Pac-Man oynadıysan mutlaka en yüksek puanı kazanmaya çalışmışsındır. Noktaları topladıkça puan kazanırsın ve meyveler de bonus puan verir. Canavarlar mavi renk olunca her birinin puanı arttığı için olabildiğince fazlasını toplamaya çalışır ve onları yiyerek ilerlersin. Pek çok oyun, oyunun ayrılmaz bir parçası olan bir puanlama mekanizmasına sahiptir.
Oyunlardaki puanlar değişkenlerle hesaplanır. Bir değişken oyunun başında belirlenir ve oyun boyunca puanı etkileyen eylemlere dayanarak değişir.
Bu aktivitede öğrenciler değişkenleri kullanarak bir puanlama sistemi kuracaklar. Bu, programlamada değişkenleri kullanmanın çeşitli yollarından yalnızca biridir.
İstenen Sonuçlar
Öğrencilerin öğrenecekleri şeyler nelerdir?
ÖNEMLİ SORULAR/BÜYÜK FİKİRLER
Öğrenciler, bilgisayar bilimi kavramlarını yalnızca sözdizimini ayrı bir beceri olarak öğrenmek yerine anlamlı bir etkinliğin parçası olarak öğrenebilirler mi?
Fortnite Kreatif'te bir etkinlik ile fonksiyonlar gibi bilgisayar bilimi kavramlarını öğrenmek, kodlama ortamlarında da aynı kavramı anlamamızı sağlayabilir mi?
Öğrenciler, oyun mekanikleri aracılığıyla bilgisayar bilimi konseptlerini öğrenebilir mi?
Kavramlar bir oyun ortamında tanıtıldığında öğrenciler bilgisayar bilimlerini öğrenmek için daha fazla motivasyon gösterecekler mi?
Öğrenme Etkinlikleri
Değişkenlere Giriş
Programlamada değişken, programa iletilen koşullara veya bilgiye bağlı olarak değişebilen bir değerdir. Tipik olarak bir program bilgisayara ne yapacağını söyleyen talimatlardan ve programın çalışırken kullandığı verilerden oluşur. Veriler, asla değişmeyen sabitlerden (sabit değerlerden) ve değişken değerlerden (gerçek değerler program kullanıcısı tarafından sağlanacağı için genellikle 0 veya başka bir varsayılan değerle başlatılır) oluşur. Genellikle hem sabitler hem de değişkenler belirli veri türleri olarak tanımlanır. Her veri türü, verinin biçimini belirler ve sınırlar. Veri türlerinin örnekleri, ondalık sayı olarak ifade edilen bir tamsayı veya genellikle uzunluğu sınırlı olan bir metin karakteri dizesini içerir.
Kaynak: WhatIs.com
Örneğin, bir puanlama sistemi açısından, puanın başlangıçtaki değerini 0'a eşitleyebilirsin. Her para toplandığında, puan 10 artabilir. Oyuncu 100 puan veya daha fazlasına ulaştığında oyunu kazanır ve oyun biter. Aksi takdirde oyuncu en azından 100 puana ulaşana kadar oyun devam eder.
Sözde kod, kodun temsil edeceği fikri göstermek için kod yazmayı simüle etme eylemidir. Sözde kod, genel yapıyı gösterir ancak mutlaka uygun sözdizimini izlemez. Bu derslerde konseptleri göstermek için periyodik olarak sözde kodu kullanacağız. Sözde kod açısından, bu şöyle görünebilir:
Komut / değişkeni belirle değişken puan=0 Bir Altın Para için 10 Puan Ver Döngüyü Başlat Oyuncunun Parasını Kontrol Et Oyuncunun altın parası var mı? EVET ise, puan = puan +10 Döngüyü tekrar et Oyuncunun 100 puanı olana kadar döngüyü tekrarla Döngüyü Başlat Oyuncunun Parasını Kontrol Et Oyuncunun altın parası var mı? EVET ise, oyuncu puanına 10 puan ekle ve parayı kaldır Oyuncunun en az 100 puanı var mı? EVET ise, oyuncunun kazandığını belirt Oyunu Bitir Puan 100'den az İSE döngüyü tekrarla Oyuncunun en az 100 puanı olana kadar programın kalanını çalıştırmaya devam et
İşte değişkenleri kodlama bağlamında açıklayan birkaç video:
Değişkenler herhangi bir kodlama dilinde veya oyun boyunca bir değerin değişebileceği bir senaryo oluşturabileceğin Fortnite Kreatif gibi ortamlarda kullanılabilir.
Etkinlikler
Öğrenciler Fortnite Kreatif'te bir hazine avı hazırlayacak. Oyuncular adada hazine (para) arayacak. Oyuncu belirli bir sayıda para topladığında veya süreölçer sonlandığında oyun bitecek. Hazine avı, toplanan para sayısına göre değeri/puanı takip etmek için değişkenler ve puan içermelidir.
Etkinliğe ilişkin ayrıntılı talimatlar için Öğretmen Kılavuzu’na bakabilirsin.
Öğrenciler, Öğrenci Kılavuzu’na erişmeli ve buradan çalışmalıdır.
İlave Etkinlikler
Süre izin verirse, öğrenciler aşağıdaki görevleri denemelidir:
Farklı puan değeri olan yeni eşyalar eklemek.
Takım Ayarları ve Çantası Cihazı’nı kullanarak oyuncunun depar hızını arttırmak.
Oyunu, tek bir oyuncu süre dolmadan önce hedefe ulaşabilecek şekilde ayarlamak.
Oyuncu özel bir eşya topladığında onun puanını sıfırlamak için Puan Yöneticisi cihazını kullanmak.
Aktivite hakkında adım adım talimatlar için Öğretmen Kılavuzu'na bakın.
DIŞ KAYNAKLAR
CS Principles: Intro to Variables Part 1
CS Principles: Intro to Variables Part 2
Standart Eşleştirmesi
Öğrenciler için CSTA Standartları
1A-AP-09 Bilgileri temsil etmek için sayıları veya diğer sembolleri kullanarak programların verileri depolama ve işleme şeklini modelle.
1B-AP-09 Verileri depolamak ve değiştirmek için değişkenleri kullanan programlar oluştur.
1B-AP-10 Diziler, olaylar, döngüler ve koşullar içeren programlar oluştur.
1B-AP-12 Yeni bir şey geliştirmek veya daha gelişmiş özellikler eklemek için mevcut bir programın bölümlerini değiştir, yeni bir şeye dönüştür veya kendi çalışmana dahil et.
1B-AP-15 Bir programı veya algoritmayı amaçlandığı gibi çalıştığından emin olmak için test et ve hatalarını ayıkla (hataları tanımla ve düzelt).
2-AP-1 Farklı veri türlerini temsil eden ve değerleri üzerinde işlemler gerçekleştiren açıkça adlandırılmış değişkenler oluştur.
2-AP-10 Karmaşık sorunları algoritma olarak ele almak için akış şemalarını ve/veya sözde kodu kullan.
2-AP-13 Programların tasarımını, uygulanmasını ve gözden geçirilmesini kolaylaştırmak için sorunları ve alt problemleri parçalara ayır.
2-AP-17 Bir dizi test senaryosunu kullanarak programları sistematik olarak test et ve iyileştir.
3A-AP-13 Öğrencilerin önceki bilgilerini ve kişisel ilgi alanlarını kullanarak hesaplama problemlerini çözmek için algoritmalar kullanan prototipler oluştur.
3A-AP-16 Talimatları başlatmak için olayları kullanarak pratik amaç, kişisel ifade veya toplumsal bir sorunu ele almak için hesaplama yapılarını tasarla ve yinelemeli olarak geliştir.
3A-AP-17 Prosedürler, modüller ve/veya nesneler gibi yapıları kullanarak sistematik analiz yoluyla problemleri daha küçük bileşenlere ayır.
3A-AP-22 İşbirliği araçlarını kullanarak ekip rollerinde çalışan hesaplama yapıları tasarla ve geliştir.
DİSİPLİNLERARASI BAĞLANTILAR VE 21. YÜZYIL BAĞLANTILARI
Bu ders, kodlama/Bilgisayar Bilimi ile ilgili alanları kapsar.
21. Yüzyıl Bağlantıları:
Eleştirel düşünce
Yaratıcılık
İşbirliği
İletişim
Teknoloji okuryazarlığı
Esneklik
Liderlik
Girişim
Sosyal beceriler
DEĞİŞİKLİKLER VE DÜZENLEMELER
Öğrenci ihtiyaçlarına, IEP, 504, vb. göre uygun değişiklikleri ve düzenlemeleri sağlayın.
Öğrenciler, eşleştirilmiş bir programlama yaklaşımını entegre etmek için ekipler halinde çalışabilirler.
Öğrencilerin yapılarını bozmaları/değiştirmeleri için örnek harita sağlanabilir.
Gerekirse uyarlanabilir kumandalar/oyun kumandaları sağlayın.