Ruby/Perusteet
Wikikirjasto
Sisällysluettelo |
[muokkaa] Alkeet
[muokkaa] IRB, eli Interactive Ruby
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 tosin kuin C++, joka on staattinen kieli ja joka täytyy aina kääntää ennen ajamista.
Käynnistä IRB seuraavalla komennolla:
$ irb --simple-prompt
[muokkaa] Laskuoperaattorit
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
[muokkaa] Numerot
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
[muokkaa] Merkkijonot
[muokkaa] Muuttujat
[muokkaa] Silmukat
[muokkaa] Ehtolauseet
[muokkaa] Taulukot
[muokkaa] Hash-taulukot
[muokkaa] Funktiot
[muokkaa] Luokat
[muokkaa] Metodit
[muokkaa] Iteraattorit
[muokkaa] Linkit
- 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.