Ruby- ja Python-ohjelmointikielten vertailu
Heinonen, Elmeri (2020)
Heinonen, Elmeri
2020
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2020-10-14
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202011117909
https://urn.fi/URN:NBN:fi:tuni-202011117909
Tiivistelmä
Ruby ja Python ovat yleiskäyttöisiä korkean tason ohjelmointikieliä. Molemmat ovat erinomaisia kieliä web-ohjelmointiin etenkin käytettäessä kieliin pohjautuvia ohjelmistokehyksiä. Tutkielmassa on tarkoitus etsiä kielten välisiä eroja ja löytää kielten heikkous- ja vahvuusalueet.
Tutkielman alussa esitellään kielten ja web-kehysten historiaa ja niiden keskeisiä ominaisuuksia. Tämän jälkeen perehdytään kielten eroihin, käyttökohteisiin, kirjastoihin, syntaksien eroihin ja suosioon.
Molemmat kielet ovat tulkattavia, painottavat ohjelman yksinkertaisuutta ja tehokkuutta sekä tukevat useita ohjelmointiparadigmoja. Keskeinen ero kielten välillä on niiden poikkeavat filosofiat. Python uskoo yhteen parhaaseen ratkaisuun eli siihen, että jonkin tehtävän tekemiseen pitäisi olla vain yksi tapa. Ruby taas arvostaa joustavuutta ja uskoo, että saman päämäärän voi saavuttaa monella tapaa.
Ruby on hyvin web-painotteinen kieli ja sen suosio muilla aloilla on melko heikko. Python taas on hyvin joustava kieli ja suosittu muun muassa komentosarjoissa, web-ohjelmoinnissa ja erityisesti koneoppimisen, datatieteen ja tieteellisen laskennan aloilla.
Molemmat kielet tarjoavat laajat standardikirjastot, mutta Pythonille on tarjolla laajempi kirjo kolmannen osapuolen kirjastoja. Tämän lisäksi Pythonille tarjolla olevien moduulien määrä kasvaa huomattavasti nopeammin kuin Rubyn tapauksessa.
Syntaksiltaan kielet ovat hyvin lähellä toisiaan. Python on hyvin tarkka sisennyksistä, eikä koodi ole joustavaa. Python käyttää paljon selkokielisiä avainsanoja ja koodi muistuttaa pseudokoodia. Tämän ansiosta koodi on hyvin luettavaa ja syntaksi on helppo oppia. Ruby taas pyrkii enemmän tehokkuteen, kuin luettavuuteen. Rubyn syntaksi voi olla vaikeampaa oppia, mutta sillä on hyvin tehokas ja nopea kehittää ohjelmistoja.
Useimmissa tapauksissa Python on parempi vaihtoehto sen laaja-alaisuuden, suuren kannatuksen, monipuolisten kirjastojen ja kasvavan suosion vuoksi. Ruby on Rails on hyvä vaihtoehto etenkin startup-yrityksille, joiden tarkoituksena on kehittää web-applikaatioita nopealla julkaisuajalla.
Tutkielman alussa esitellään kielten ja web-kehysten historiaa ja niiden keskeisiä ominaisuuksia. Tämän jälkeen perehdytään kielten eroihin, käyttökohteisiin, kirjastoihin, syntaksien eroihin ja suosioon.
Molemmat kielet ovat tulkattavia, painottavat ohjelman yksinkertaisuutta ja tehokkuutta sekä tukevat useita ohjelmointiparadigmoja. Keskeinen ero kielten välillä on niiden poikkeavat filosofiat. Python uskoo yhteen parhaaseen ratkaisuun eli siihen, että jonkin tehtävän tekemiseen pitäisi olla vain yksi tapa. Ruby taas arvostaa joustavuutta ja uskoo, että saman päämäärän voi saavuttaa monella tapaa.
Ruby on hyvin web-painotteinen kieli ja sen suosio muilla aloilla on melko heikko. Python taas on hyvin joustava kieli ja suosittu muun muassa komentosarjoissa, web-ohjelmoinnissa ja erityisesti koneoppimisen, datatieteen ja tieteellisen laskennan aloilla.
Molemmat kielet tarjoavat laajat standardikirjastot, mutta Pythonille on tarjolla laajempi kirjo kolmannen osapuolen kirjastoja. Tämän lisäksi Pythonille tarjolla olevien moduulien määrä kasvaa huomattavasti nopeammin kuin Rubyn tapauksessa.
Syntaksiltaan kielet ovat hyvin lähellä toisiaan. Python on hyvin tarkka sisennyksistä, eikä koodi ole joustavaa. Python käyttää paljon selkokielisiä avainsanoja ja koodi muistuttaa pseudokoodia. Tämän ansiosta koodi on hyvin luettavaa ja syntaksi on helppo oppia. Ruby taas pyrkii enemmän tehokkuteen, kuin luettavuuteen. Rubyn syntaksi voi olla vaikeampaa oppia, mutta sillä on hyvin tehokas ja nopea kehittää ohjelmistoja.
Useimmissa tapauksissa Python on parempi vaihtoehto sen laaja-alaisuuden, suuren kannatuksen, monipuolisten kirjastojen ja kasvavan suosion vuoksi. Ruby on Rails on hyvä vaihtoehto etenkin startup-yrityksille, joiden tarkoituksena on kehittää web-applikaatioita nopealla julkaisuajalla.
Kokoelmat
- Kandidaatintutkielmat [8935]