«

»

Jun 13

Sommarkurs i Python

Jag har precis börjat med min sommarkurs i “Multimediaprogrammering i Python”. Det är som namnet antyder en kurs i Python och det jag hoppas lära mig mer om är GUI-programmering och spelprogrammering. Trots att jag ännu inte kollat på några föreläsningar är jag klar med tre av fyra labbar.

Som projektuppgift i kursen ska jag nog göra ett spel med hjälp av Pygame. Eftersom Pygame bara är en wrapper för SDL i python tror jag det kommer gå ganska bra. Jag vet dock inte vad jag ska göra för spel än.

Ruby vs Python

Eftersom jag det senaste skolåret jobbat med både Ruby och Python tänkte jag att jag ville göra den obligatoriska jämförelsen.

Av de erfarenheter jag har av Ruby och Python måste jag säga att Ruby är min favorit. Från början när jag mötte Ruby för första gången tyckte jag det var det värsta jag någonsin varit med om. Jag kunde inte stå ut med hur rörigt allt var och att man i princip kunde skriva vad som helst utan fel. Kanske var det för att jag precis innan mest jobbat med C++ och ville ha en tydlig struktur och strikt syntax? Jag vet inte. Hur som helst har jag läst två kurser om datorspråkskonstruktion i vår och i båda kurserna använt mig av Ruby. I den första kursen lärde vi oss teorin bakom datorspråkskonstruktion och under nästan hela kursen stretade jag emot och tyckte att Ruby var fruktansvärt. Precis i slutet av kursen innan Tenta-p lossnade det och därefter har jag tyckt att Ruby varit underart. I den andra kursen genomförde vi ett projekt där vi skapade ett eget datorspråk, också med hjälp av Ruby. Här var den flexibla syntax ett stort plus.

Det bästa med Ruby som [inte] är likadant i Python är hur man kallar på inbyggda funktioner. I Ruby kan man alltid göra en punkt och sen skriva funktionens namn, till exempel om man har en sträng och vill ha längden på denna, i Ruby kan man skriva “sträng”.length och få längden medan man i python skriver len(“sträng”).  Självklart fungerar Python också på detta sätt då man till exempel kan använda en metod .__add__()  på integers och liknande, men enkelheten och den extrema objektorienteringen gör ändå Ruby till en vinnare enligt mig. En annan sak som är bra med Ruby är att man helt kan utelämna parenteser efter funktioner och funktionsanrop såvida det inte finns några argument.

Detta var ju inte direkt någon fullständig jämförelse av Ruby och Python utan bara mina flyktiga åsikter, hursomhelst hoppas jag att det hjälpte någon.