Hiç bir önkoşul olmayan bu programda öğrencilere sorun analiz etme, matematiksel kavramları kullanarak sorun çözme ve çözümü bilgisayar programına çevirme gibi beceriler kazandırılmaktadır.
Dersler sırasında öğrenciler basit bilgisayar oyunları tasaralayıp geliştirecek. Bilgisayar oyunlarındaki nesne ve oyuncaların hareket ve etkileşimi temel matematik/geometri ve fizik bilgisi ile analiz edilir. Bu şekilde öğrenciler farklı derslerde öğrendikleri temel bilgileri problem çözümünde kullanırlar. Örneğin oyun karakterinin ödülü yakalaması hareket, hız gibi kavramlar ile somutlaşır. Daha sonra aşama aşama öğrenilen bilgisayar programlama becerileri ile bu hareket ve etkileşimler bilgisayar programında ifade edilir.
Derslerde kullanılan araçlar ve malzemeler ABD`deki Bootstrap World programından uyarlanmıştır. Bootstrap World ABD`nin National Science Foundation (Ulusal Bilim Kurumu), President Obama`nın “Computer Science for All” (Herkes için Bilgisyar Bilimleri) girişimi ve code.org gibi kurumlar tarafından destekleniyor. Google, Microsoft gibi şirketler de bu girişimlere destek veriyor.
Uygulamalar özel eğitim amaçlı programlama dilleri kullanılarak yapılır ve çalışmalar için sadece bir web tarayıcısı yeterlidir. Dolayısyla öğrenciler dersler dışında ve dersler bittikten sonra, İnternet erişimi olan herhangi bir yerden çalışmalarına rahatlıkla devam edebilirler.
CS: Chris Stephenson – İstanbul Bilgi Üniversitesi Matematik Bölümü
MG: Doç.Dr. Mehmet Gençer – İstanbul Bilgi Üniversitesi Bilgisayar Mühendisliği Bölümü
İG : İnanç Gürkan – İstanbul Bilgi Üniversitesi Bilgisayar Mühendisliği Bölümü
Program
Saatler | 18.Tem | 19.Tem | 20.Tem | 21.Tem | 22.Tem | 23.Tem |
08:00-10:00 | Programlama dili için araçları tanıma, basit komutlarla şekiller çizme. | Fonksiyonlar ve ifade değeri. Farklı değer tipleri (görüntü, metin, sayı) ile çalışma. | Basit animasyonlar. Tasarım reçetesi ile görsel veya cebirsel fonksiyonlar tanımlama. | Mantıksal değerler ve fonksiyonlar. | İki boyutlu koordinat sisteminde hareket. | Oyundaki ek olayların kodlanması. |
10:00-12:00 | Koordinat kavramı. Oyun tasarımı için beyin fırtınası. | Değişken kullanımı. Fonksiyon tanımlama. | Programdaki hataları anlama ve giderme. | Oyun karakterlerinin yerini ve çarpışmasını kodlama. | Oyundaki çarpışma gibi olayların koşulsal analizi. | Oyunun ilk versiyonunun hazırlanması. |
16:00-18:00 | Programlama dilinin grameri ve basit cümleler. | Fonksiyon tasarımı çalışmaları. | Oyun canlanıyor: hareketi programlama. | Koşullu dallanma ve koşullu ifadeler. | Koşullu ifadelerle egzersizler. | Birbirlerinin oyununu deneyimleme ve geri besleme. |
Saatler | 25.Tem | 26.Tem | 27.Tem | 28.Tem | 29.Tem | 30.Tem |
08:00-10:00 | Pyret programlama diline geçiş, ve araçlara alışma. | Gerçek dünya problemlerini veri yapısı ile temsil etme. | Pyret ile animasyon ve animasyon tasarımlarının veri yapılarıyla temsili. | Daha gerçekçi bir oyun, rasgele olayların yaratılması. | Oyun dünyasının kendi kendine değişimi. | Oyun açılışı için son hazırlıklar. |
10:00-12:00 | Pyret ile fonksiyon egzersizleri. | Veri nesnesi ürete ve tüketen fonksiyonlar yazma. | İlk hafta oyununun Pyrete uyarlanması. | Sıfırdan oyun yaratma: oyun dünyasının tasarım ve çizimi. | Oyuncu hamlelerinin yakalanması. | Biribirinin oyunlarını deneme, hata yakalama ve giderme. |
16:00-18:00 | Veri yapılarına giriş ve ilk örnekler. | Pyret kullanarak görüntüler üretme. | Kullanıcı eylemlerinin (klavye ve fare) kullanımı ve koşullu işlemler. | Oyunda hareketin gerçekleştirilmesi. | Oyundaki tehlike faktörünün gerçekleştirilmesi. | Kendi kendine eğitime devam için egzersizler, ve kaynakların tanıtımı. |