Ruby/Perusteet

Wikikirjasto

Loikkaa: valikkoon, hakuun

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

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.
Henkilökohtaiset työkalut