Základné syntaxe jazyka Ruby
Nasledujúci výťah popíše základné syntax jazyka Ruby.
# - komentár
- nepíšu sa bodkočiarkami na koncoch riadkov a nepoužívajú sa zložené
zátvorky zložené zátvorky
Ukazovatele sa v Ruby deklarujú samé, stačí do nich priradiť hodnotu
V ruby je takmer všetko objekt a objekty majú metódy (text.upcase je metóda textu a vráti pôvodný text veľkými písmenami). Metódy s výkričníkom pracujú na jednom objekte (tzv. Vykřičníková variant), teda
text = text.upcase je to isté ako text.upcase!
Ale teraz od začiatku
Vstup a výstup
gets = vstup z klávesnice (väčšinou sa volá s metódou strip, pozri nižšie v reťazcoch)
puts = výpis textu
Výpis premenné v texte: # {prom}
Priraďovanie hodnôt
klasické:
a = b = 0
Paralelné priraďovanie:
a, b = 1,2
Takto možno ľahko prehodiť premenné: a, b = b, a
Exponent: a ** 3 alebo a.power (3)
Nepoužívejte zápis: a^3, ten má v Ruby význam jako bitový XORRuby nepozná výraz ++! (Napr. Aj ++)
- operátorov sú v skutočnosti metódy integer (možno zapísať aj ako a. + b)
Vetvenia (podmienky)
Klasické operátormi ako v jazyku C: <,>,> =, <=, == (porovnanie),! = (Nerovnosť)
Porovnať možno aj reťazca podľa abecedy ( "auto" < "lietadlo")
Príkaz if
if (podminka)
prikaz
prikaz
end
Možno používať tiež príkaz elsif
if možno nahradiť unless čo vykoná príkaz len vtedy, keď podmienka neplatí (je totožné s if not podmienka)
Podmienka možno písať aj za príkaz:
puts "mensi" if (3 < 5)
Výhoda je, že nemusíme if endové. INAK IF MÁ VŽDY END!
Ďalší možný zápis podmienky:
(Podm)? Příkaz_při_splnění: příkaz_při_nesplnění;
Príkaz case:
case name
when "David"
prikaz
when ...
end
Logické operátory: and a or alebo tiež sada && a ||
Dôležité: && má vyššiu prioritu, čo je nezvyklé, takže závorkovat!
Negácia
not (5 <3) alebo! (5 <3)
Cykly (iterácie)
3.times do puts 'Tento text se vypíše 3x' end # ------ 3.times do |i| puts "#{i}% - toto je číslo od 0 do 2" end # ---- když nechci od 0, ale od něco do něco, použiji: 5.upto (10) nebo downto while (podm) do end
Reťazca
platí klasické sčítanie znamienkom + ( "pes" + "kocka" = "peskocka")
reťazec je ako je zvykom pole znakov, jeho prvky sú jednotlivé znaky
očíslované od 0 ( "kocka" [0] = "k")
(Pre staré ruby - na čísle musím volať chr text [4] .chr, inak vracia ASCII
kód!) Pre novšie Ruby použitie chr naviac nevadí.
podreťazec: text [0,3] vráti "aho" z "ahoj"
strip = odstráni z reťazca biele znaky (medzera, enter atď.)
Konverzia typov: to_i (to_i na desatinnom čísle odsekne desatinnú
časť)
to_f to_s
ďalšie metódy reťazca: length, reverse, upcase, swapcase ... (možno kombinovať (test.reverse.upcase))
Náhodné čísla
Rand - vracia 0-1
Rand (100) vracia 0-99
Užitočné knižnice
Dátum a čas
Time.now - vráti súčasný čas
sleep 1 (spí jednu sekundu)
Metóda strftime ( "% d.% M.% Y% H% M")
% Y = dvojpísmenový rok
Time.local (1989, 01, 12, 04, 15, 0)
Time.parse ( "8.8.2010 12:35:29")
Potrebuje knižnicu time, na začiatku programu voláme: require "time"
Trieda math
Obsahuje matematické funkcie a konštanty.
Ovládanie NetBeans IDE:
Alt + shift + f - automatické formátovanie zdrojového kódu
Kliknutím na koreň na koreň v lište projektov naľavo a spustením -> Ruby shell - konzola na testovanie príkazov na 1 riadok.