Hledat
Přihlásit se
  • Věda a technika
  • Herní doupě
  • Tipy pro PC
  • IT Byznys
  • Mobily
  • Počítače
  • Počítače
  • Témata
  • Poradna
  • Diskuzní fórum
  • Video
  • Bazar
  • Blogy
  • MĚŘENÍ RYCHLOSTI
  • RSS
  • Facebook Twitter Google+ YouTube
  • Hardware
  • Software
  • Počítače
  • Notebooky
  • Služby na webu
  • Apple
  • Google
  • Microsoft
  • Seznam
  • Tiskové zprávy
Další témata
  • Týden Živě
  • Zprávy Živě
  • Testy
  • Pitvy
Všechna videa
X

Doporučit článek

Vaše jméno:

Váš e-mail:

E-mail adresáta:

Komentář:

kontrolní kód

Odeslat

Blogy Živě » O programování a všem okolo

O programování a všem okolo

Články vytvořil Jiří Hrebenar
 

Ruby - metody: 1. díl Úvod do metod

1. 2. 2010, gisat_cz

Na delší dobu jsem se odmlčel, za což se velmi omlouvám. Bohužel pro pracovní vytížení nebyl čas na napsání dalšího článku. Po 14 článcích věnovaných jazyku Ruby následuje jeho další pokračování, tentokrát se na několik dílů ponoříme za taji vytváření, volání a dalším nakládání s metodami.


Během našich toulkách jazykem Ruby jste se již mnohokrát setkali s metodami. Například od metody puts po metodu length.

Co to tedy ta metoda je:

pokud máte zkušenosti s jinými programovacími jazyky jako jsou například Java, C++, PHP a další tak Vám  určitě tento pojem slova metoda nebude cizí. Zkrátka je to určitá konstrukce kódu, pod kterou můžeme psát jednotlivé části našeho programového díla a poté tyto části volat pomocí jednoho jména. Nemusíme tak třeba stále dokola psát kód na vypsání pozdravu, vytvoříme si metodu, která se bude jmenovat pozdrav , do ní vepíšeme patřičný kód  a poté v kódu jen zavoláme název metody, tedy pouze pozdrav.

V Ruby bychom to udělali například takto:

def pozdrav
puts “AHOJ JÁ JSEM POZDRAV POCHÁZEJÍCÍ Z METODY.”
end

kdekoli v našem kódu poté stačí vypsat

pozdrav
Vypíše se daný pozdrav, nemusíme tedy znovu psát puts “AHOJ JÁ JSEM POZDRAV POCHÁZEJÍCÍ Z METODY.” U takovéhoto jednoduchého příkladu se to může zdát zbytečné, ale zkuste si představit delší, složitější kód, psát ho celý znovu, tak to byste určitě nechtěli :)

Jak vytvořit vlastní metodu:

To jsme si vlastně před chvilkou ukázali.  Metoda začíná slovem def , poté následuje název metody, případné argumenty metody, tělo metody a slovo end, které ukončuje metodu:

def název metody(argumenty metody)
tělo metody
end

Ještě bych měl něco říci o argumentech metod. Metoda nemusí mít nutně argumenty. Náš předcházející příklad je například nemá.

Předávání argumentů metodě:

Jak již bylo řečeno, metoda nemusí obsahovat argumenty, ale pokud bychom je chtěli metodě přiřadit, udělali bychom to velice jednoduše a to sice takto:

def pozdrav(pozdraveni)
puts pozdraveni
end

Tady vidíte, že to skutečně není nic těžkého, metodu bychom poté v našem kódě mohli volat takto:

pozdrav(”Ahoj já jsem pozdrav z metody”)

A co kdybychom těch argumentů potřebovali více? Tak to je také jednoduché, prostě jednotlivé argumenty oddělíte čárkou:

def pozdrav(osloveni,pozdraveni,prani)
puts osloveni+” “+pozdraveni+”. “+prani
end

Metodu bychom poté volali takto:

pozdrav(”Ahoj”,”já jsem pozdrav z metody”,”Přeju ti krásný den.”)

Výsledek by byl takový: Ahoj, já jsem pozdrav z metody. Přeju ti krásný den.

Tady vidíte, že práce s metodami není nic těžkého. V dalším podívání si více povíme o argumentech a vrácení hodnot z metod.


Publikováno v rubrice Ruby. Reakce v diskuzi lze sledovat prostřednictvím RSS 2.0. Můžete přidat komentář, nebo se na článek odkázat ze svého webu.

« Číňané viní Apple z plagiátorství kvůli iPadu
Google končí s podporou služeb pro Internet Explorer 6 »
 

Komentáře v diskuzi

1.  retro(85.70.151.xxx)   2. 2. 2010, 02:37

Ahoj.

Nepleteš si náhodou pojmy metoda a funkce ? Metoda je součástí třídy. To co tu popisuješ je tedy funkce.

http://cs.wikipedia.org/wiki/Funkce_(programování)
http://cs.wikipedia.org/wiki/Metoda_(objektově_orientované_programování)

2.  gisat_cz(ověřeno)   2. 2. 2010, 02:48

Jelikož jsem se celý díl o Ruby rozhodl psát pro začátečníky v tomto jazyku, a možná v nadneseném slova smyslu by se mohly články považovat za jakýsi tutoriál, tak v článcích zatím nic nepadlo o objektovém programování. Jelikož jazyk Ruby je objektovým jazykem, tak také to co tady nazýváš funkcí je v Ruby nazýváno slovem metoda. Ale v praktickém slova smyslu má stejný význam jako funkce.

3.  Jirka(80.62.20.xxx)   2. 2. 2010, 18:47

To retro: A nepletes se nahodou ty? …. 1/ metoda muze byt definovana i na objektu a ne jen na tride 2/ diky tomu, ze ruby je opravdu objektove orientovany jazyk, tak i tohle je metoda definovana na objektu main … Na druhou stranu je to podle me uplne fuk, je to jen slovickareni, ale zacal jsi si s tim sam :)

4.  Tomix(62.24.72.xxx)   27. 3. 2010, 21:35

Je to tak, že dnes je moderní říkat “metoda”.
Ale jedná se o funkci…

5.  building articles(125.41.181.xxx)   1. 5. 2010, 09:09

building articles…

Hello ;) Thanks heaps for this indeed!… if anyone else has anything, it would be much appreciated. Great website Just wanted to say thanks and keep doing what you’re doing! Ezines.M106.COM Enjoy!…

Přidat komentář

*
Opište prosím text z obrázku.
Anti-Spam Image


Aktuální články a bleskovky

Lenovo uvádí nové ThinkPady s čipy Ivy Bridge
Lenovo uvádí nové ThinkPady s čipy Ivy Bridge
Brýle Google Glass jsou patentované
Brýle Google Glass jsou patentované
Ifttt.com: Propojte a automatizujte svůj internet
Ifttt.com: Propojte a automatizujte svůj internet
Nejlepší programy pro práci s Wi-Fi
Nejlepší programy pro práci s Wi-Fi



O programování a všem okolo využívá WordPress MU a běží na Blog.zive.cz. Vytvořte si svůj vlastní blog
Sledování přes RSS: články a komentáře


  • Archivy

    • Duben 2012
    • Květen 2011
    • Leden 2011
    • Prosinec 2010
    • Listopad 2010
    • Říjen 2010
    • Květen 2010
    • Březen 2010
    • Únor 2010
    • Leden 2010
    • Prosinec 2009
    • Září 2009
    • Srpen 2009
    • Červenec 2009
    • Srpen 2008
  • Rubriky

    • AJAX (7)
    • Awk a sed (2)
    • CSS, HTML (3)
    • Java (3)
    • Javascript (25)
    • Javascript frameworky (4)
    • Nezařazené (11)
    • Opensource (21)
    • Ostatní (10)
    • PHP (7)
    • PHP,MySQL a APACHE (1)
    • Ruby (16)
    • Sociální sítě (15)
    • UNIX (5)
    • XML (3)
    • Zprávy (61)
  • Spřátelené blogy

    lara.111: my clever blog
  • Twitter

    • Oh miluju krásné kytky, je normální když chlap má rád kytky? :-D~~~amp~~~lt;3 Jo já vím, jsem netradiční, to jsem prostě já... http://t.co/PoghKVpG
    • Haha :-)~~~amp~~~lt;3 http://t.co/R28S4u0Z
    • http://t.co/ZPcDPjdA
    • http://t.co/byQssIuP
    • Netřeba konspiračních teorií, pokud někdo krade, je zloděj. Pokud se někdo nechá uplácet, je to křivák. S... http://t.co/UeNF8J2Q
  • Administrace

    • Přihlásit se

1210_Computer.png

Časopis Computer

  • Nakupujte v zahraničí
  • Test 7 čteček elektronických knih
  • Technologie: nové standardy digitálního vysílání
  • Přehled cloudových uložišť
  • Poradíme s výběrem kamery na dovolenou

Partnerská sekce pro IT profesionály:
Microsoft TechNet/MSDN


Video Živě

Bluetooth stojánky pro Android: Philips AS111, AS141 a AS351
Ifttt.com -- založení úkolu
Zprávy Živě - 12. května 2012
iPad docky Logitech AV Stand a Logitech Speaker Stand

další videa »






Mladá Fronta a.s. Mladá Fronta a.s.
Tiráž | Autoři | Připomínky | Odběr novinek | RSS | Textová verze
Copyright 2000–2012 Mladá fronta a.s. | Inzerce: onlinesales@mf.cz | Kontakt na redakci | Návštěvnost měří NetMonitor