Bir kodlama oyunu, bilgisayar kodlama öğelerini içeren bir video oyunudur ve oyuncunun oyun içindeki diğer özerk birimleri, genellikle kodlama metaforunu basitleştirmek için görsel bir dil olarak temsil edilen, alana özgü bir kodlama dilinde komutları takip etmesi için yönlendirmesini sağlar. Kodlama oyunları genel olarak iki alana ayrılır: kodlama öğelerinin bir bulmaca oyununun bir parçasını veya tamamını oluşturduğu tek oyunculu oyunlar ve oyuncunun otomatik programının diğer oyuncuların kodlarıyla karşı karşıya geldiği çok oyunculu oyunlar.
Rekabetçi oyunlar olarak
Birçok kodlama oyunu, robotlar, tanklar veya bakteriler gibi birbirlerini yok etmeye çalışan varlıkları kontrol etmeyi içerir. Bazı ürünler ise montessori ile kodlamayı birleştiren oyunlar. Montessori busy boardlar ile hem montessori hemde kodlama öğrenebilirsiniz. Bu tür oyunlar, yapay yaşam simülasyonları ile ilgili dijital organizmaların ortamları olarak kabul edilebilir. Oyunculara, kodları merkezi bir sunucuya göndermeden önce kodlarını oyunun etki alanına özgü dilinde geliştirmeleri ve test etmeleri için araçlar verilir. Sunucu daha sonra kodları başkalarına karşı yürütür ve sonuçları, kodda değişiklik veya iyileştirme yapabilecekleri oyuncuya bildirir. Karakterlerin birbirleriyle rekabet edebilecekleri kodlama oyunları için farklı turnuvalar ve ligler bulunuyor. Genellikle bir komut dosyası özel bir strateji için optimize edilir. Daha geleneksel oyunlar için benzer yaklaşımlar kullanılır; Dünya Bilgisayar Satranç Şampiyonası, satranç soyut strateji oyunu için yazılmış kodlar arasındaki maçlardan oluşur.
Rekabetçi kodlama oyunu aynı zamanda RoboRally veya Robot Turtles gibi çeşitli masa oyunlarına da yöneldi; burada tipik olarak bir program, bu kodu yürütmek için tek tek oynanan önceden hazırlanmış bir iskambil destesi haline geldi
Araştırmacılar, kodlama öğretmek için RoboCode'u "problem tabanlı öğrenme" alt katmanı olarak sundular.
İlgili alanlar
Oyuncuların bir dizi yapı taşından ortamlar oluşturma yeteneğine sahip olan açık dünya oyunları, genellikle daha gelişmiş oyuncular tarafından mantık devreleri ve temel bloklardan daha gelişmiş kodlar oluşturmak için kullanılmıştır. Minecraft böyle bir örnektir, çünkü oyun anahtarları ve elektrik devrelerini taklit eden sınırlı sayıda blok sağlarken, kullanıcılar sanal dünyada temel işlevsel bilgisayarlar oluşturabilmiştir ve en az bir değişiklik çocuklara programlamayı öğretmeyi amaçlamaktadır. sanal bilgisayarda basit bir dilde.
Codecademy gibi birkaç site, kullanıcıyı motive etmek için video oyunu ilkelerinin kullanıldığı oyunlaştırma yoluyla gerçek dünyadaki programlama dillerinin öğretilmesine yardımcı olur.