Nejdříve seznam klíčových slov. To jsou slova, které mají v Ruby nějaký význam sama o sobě jako části jazykových konstrukcí a podobně.
__LINE__ __ENCODING__ __FILE__ BEGIN END alias and begin break case class def defined? do else elsif end ensure false for if in module next nil not or redo rescue retry return self super then true undef unless until when while yield
Mimo tato klíčová slova jsou zde ještě 3 slova která rozeznává parser ruby.
=begin =end __END__
Ruby 1.9 přidává klíčová slova:
Klíčová slova nemůžeme použít jako názvy proměnných, tříd, konstatn ani metod. Jsou to vyhrazená slova jenž mají přiřazený význam definicí jazyka Ruby.
Identifikátory jsou názvy různých objektů, proměnných, metod, tříd a podobně. Na identifikátory každé z uvedených kategorii jsou kladeny podobné ale mírně odlišné nároky. Pokud vezmu za základ identifikátor lokální proměnné, mohu popsat ostatní identifikátory pomocí odlišností od identifikátoru lokální proměnné.
Takže nejdřív tedy identifikátor lokální proměnné. Tento sestává z poslopnosti znaků které mohou být číslice (0-9) malá (a-z) a velká (A-Z) písmena a znaku _. Prvním znakem identifikátoru musí být malé písmeno nebo znak _. Regulární výraz popisující identifikátor:
[a-z_][0-9a-zA-Z_]*
Ukázky identifikátorů lokální proměnné:
alfa anObject posledni_hodnota _ident a25
Následující nejsou identifikátory lokální proměnné:
34a # nezačíná malým písmenem nebo znakem _ Beta # musí začínat malým písmenem po$ledni # znak $ nepatří mezi povolené znaky identifikátoru předek # znak ř nepatří mezi povolené znaky identifikátoru
Nyní, když tedy víme jak vypadá identifikátor (název) lokální proměnné, popíšeme si ve zkratce identifikátory ostatních objektů.
Identifikátor globální proměnné vypadá stejně jako identifikátor lokální proměnné, jen je před něj přidán znak $.
$hlavni_hodnota $rozmer_okna
Identifikátor proměnných objektu, tedy proměnných instance třídy jsou opět stejné jako identifikátory lokální proměnné, jen je před ně přidán znak @.
@barva_pozadi @delta_x
Identifikátor proměnné třídy je opět stejný jako identifikáto lokální proměnné, jen je před něj přidána dvojce znaků @@.
@@pocet_instanci
Pro názvy konstant a tříd platí stejná pravidla. Jejich identifikátory musí začínat velikým písmenem.
TcpServer PI Hradlo
Názvy metod jsou opět stejné jako názvy lokálních proměnných. Mám však navíc možnost použít jako poslední znak identifikátoru znak ? nebo !. Použití těchto znaků má zvláštní význam pro programátora, nikoliv pro ruby. Je dobrým zvykem, pojmenovávat metody (funkce) které vrací logickou hodnotu s otazníkem na konci. Vykřičník používáme zase tam, kde metoda provádí změny v objektu. Viz například rozdíl mezi metodami strip
a strip!
ve třídě String
.
index posledni? zmen! pridej_novy