Lär dig Scala genom spelprogrammering

Lär dig Scala genom spelprogrammering
maj 14, 2012 Martin Woxneryd

Vill du komma igång med eller bli bättre på Scala? Gillar du tävlingar? Gillar du robotar? Då kanske Scalatron är något för dig.

Scalatron är ett programmeringsspel skrivet i Scala där man utmanar varandra i ett virtuellt robotkrig. Spelet är utvecklat för att vara ett snabbt och underhållande sätt att lära sig Scala. Det är finurligt uppbyggt så att det inte krävs några som helst förkunskaper för att komma igång.

I sin enklaste form så krävs endast ett par förberedande steg innan man är på banan och tävlar med sina robotar.

  1. Ladda ner senaste versinonen av Scalatron
  2. Starta servern

Det som nu händer är att det dels startas en applikation som visuellt visar spelplanen:

…samt en server med en webbapplikation via vilken man kodar, testar och sjösätter sina robotskapelser:

Den vänstra delen är en smart tutorial som behandlar grunderna i Scala samt hur spelet är utformat. Steg för steg så tar man sig framåt mot en grundläggande robot. Den mittersta delen är koden för din robot med knappar för att kompilera, testa och sätta roboton i spel. Eventuella kompileringsfel dyker upp i den nedre delen. Koden skickas till servern för att kompileras så klienterna behöver inget annat än en webbläsare för att deltaga. För att kunna analysera sin robot så finns valet att köra sin robot steg för steg i en sandbox som synes i bildens högra del.

Denna setup är lämplig för kortare sessioner. Installera servern på en dator och låt deltagare ansluta med sina webbläsare. Vill man ha ännu mer inblick i sin robot och möjlighet att fullt ut debugga den i ett IDE så kan man sätta upp en lokal miljö för sin utveckling.

Projektet, som för övrigt är open source, finns på http://scalatron.github.com och där kan man hitta mängder med matnyttig information om hur man utvecklar sina robotar, sätter upp servrar, lägger upp turneringar etc.

Game On!

1 Kommentar

  1. Fredrik Wendt 6 år sedan

    Jag är på!

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *

*

Denna webbplats använder Akismet för att minska skräppost. Lär dig hur din kommentardata bearbetas.