Ruby/Perusteet
Alkeet
[muokkaa | muokkaa wikitekstiä]IRB, eli Interactive Ruby
[muokkaa | muokkaa wikitekstiä]IRB on kätevä työkalu Rubyn opiskeluun, sekä epävarman koodin testaamiseen myöhemmässä vaiheessa. IRB on hyvä siksi, että se antaa vastauksen välittömästi ilman kääntämistä, toisin kuin esimerkiksi C++. Ruby on dynaaminen kieli eli sitä voi muuttaa ajon aikana toisin kuin C++, joka on staattinen kieli ja joka täytyy aina kääntää ennen ajamista.
Käynnistä IRB seuraavalla komennolla:
$ irb --simple-prompt
Laskuoperaattorit
[muokkaa | muokkaa wikitekstiä]Kirjoita seuraava laskutoimitus:
>> 10/2-5+2*5
Vastaus on 10. Rubyllä pystyy siis laskemaan jako-(/), kerto-(*), plus-(+), sekä miinuslaskuja(-). Kokeile seuraavaa laskutoimitusta:
>> 5%2
Vastaukseksi tulee 1. Prosenttimerkki(%) tarkoittaa jakojäännösoperaattoria, eli se palauttaa jakolaskun jakojäännöksen. Sillä on hyvä testata esimerkiksi onko muuttujan arvo parillinen vai pariton. Mutta siitä myöhemmin. Seuraavaksi menemme eksponentteihin:
>> 3**2
Vastaus on 9. Eksponenttimerkkinä toimii siis kaksi tähtimerkkiä (**). Seuraavaksi esitetään suurikokoisten lukujen esitystapa:
>> 15e4
Vastaus on 150 000. Vastaavasti pienikokoiset luvut voidaan esittää muodossa:
>> 15e-4
Vastaus on 0,0015. Ruby hyväksyy erittäin suuria lukuja verrattuna muihin ohjelmointikieliin, mutta mikäli luku venyy liian suureksi, antaa Ruby vastaukseksi Infinity. Vielä lopuksi käytännöllinen tapa merkitä isoja lukuja:
>> 10_000_000
Numerot
[muokkaa | muokkaa wikitekstiä]Kirjoitapas seuraava laskutoimitus:
>> 5/2
Vastauksen tulisi olla 2,5 mutta se onkin vain 2. Mikä meni pieleen? Koska numerot olivat Integer-tyyppisiä, eli kokonaislukuja, vastauksesta karsittiin desimaalit pois. Huomioi ettei edes pyöristämistä tapahtunut! Laskutoimitus olisi pitänyt kirjoittaa seuraavalla tavalla (kolme vaihtoehtoa):
>> 5.0/2 >> 5/2.0 >> 5.0/2.0
Eli jos laskutoimituksessa on yksikin desimaalinumero(ohjelmoinnissa liukuluku, eli Float-tyyppinen numero) niin silloin vastauskin annetaan liukulukuna. Rubyssä luvut eivät ole perinteisiä lukuja, vaan ne ovat oikeasti luokkia, eli olioita. Mutta luokista lisää myöhemmin
Merkkijonot
[muokkaa | muokkaa wikitekstiä]Muuttujat
[muokkaa | muokkaa wikitekstiä]Silmukat
[muokkaa | muokkaa wikitekstiä]Ehtolauseet
[muokkaa | muokkaa wikitekstiä]Taulukot
[muokkaa | muokkaa wikitekstiä]Hash-taulukot
[muokkaa | muokkaa wikitekstiä]Funktiot
[muokkaa | muokkaa wikitekstiä]Luokat
[muokkaa | muokkaa wikitekstiä]Metodit
[muokkaa | muokkaa wikitekstiä]Iteraattorit
[muokkaa | muokkaa wikitekstiä]Linkit
[muokkaa | muokkaa wikitekstiä]- Programming Ruby - Pragmatic Programmer's Guide (englanniksi)
- Suomen kielellä ei toistaiseksi ole kattavaa ohjeistusta Rubyn maailmaan. Tämä kirja on paras aiheesta, mitä englanniksi löytää.
- Interaktiivinen opas aloittelijoille, joilla ei ole aikaisempaa kokemusta ohjelmoinnista.