Podcast o Metódy v objektovo orientovanom programovaní

Metódy v OOP: Sprievodca pre Študentov Programovania

Podcast

Metódy v programovaní0:00 / 4:58
0:001:00 zostáva
TerezaTakže metódy sú v podstate ako také super-schopné LEGO kocky pre náš kód!
ŠimonPresne tak! Je to jeden z najdôležitejších konceptov vôbec. Počúvate Studyfi Podcast a dnes si rozoberieme práve metódy.
Kapitoly

Metódy v programovaní

Délka: 4 minut

Kapitoly

Čo sú metódy?

Anatómia metódy

Preťažovanie metód

Preťaženie metód

Volanie metód a zhrnutie

Přepis

Tereza: Takže metódy sú v podstate ako také super-schopné LEGO kocky pre náš kód!

Šimon: Presne tak! Je to jeden z najdôležitejších konceptov vôbec. Počúvate Studyfi Podcast a dnes si rozoberieme práve metódy.

Tereza: Dobre, poďme na to. Prečo sú také dôležité? Nestačí písať kód riadok po riadku?

Šimon: Mohli by sme, ale predstav si, že staviaš obrovský hrad z LEGA a každú jednu kocku si musíš vyrobiť od nuly... znova a znova. Metóda je ako keď si jednu špeciálnu kocku vyrobíš raz a potom ju len používaš, koľkokrát potrebuješ.

Tereza: To znie oveľa efektívnejšie. Takže metóda je vlastne pomenovaný blok kódu, ktorý môžem opakovane volať?

Šimon: Presne tak. Rozdelí to obrovský program na menšie, zvládnuteľné časti. Hľadanie chýb je potom oveľa jednoduchšie a celý kód je prehľadnejší.

Tereza: V materiáloch sa spomína, že metóda je ako čierna skrinka. Čo to znamená?

Šimon: Super analógia! Znamená to, že nemusíš vždy vedieť, ako presne funguje vo vnútri. Dáš jej nejaké vstupy, ona s nimi niečo urobí — to je to kúzlo v čiernej skrinke — a vráti ti nejaký výstup.

Tereza: Aha, takže ju len použijem a verím, že spraví svoju prácu. Ako taká deklarácia metódy vyzerá v kóde?

Šimon: Skladá sa z niekoľkých častí. Najprv máš modifikátor prístupu, napríklad public alebo static. Potom typ hodnoty, ktorú metóda vráti — napríklad int alebo double.

Tereza: A čo ak nič nevracia? Len niečo vykoná, napríklad niečo vypíše na obrazovku.

Šimon: Vtedy použiješ kľúčové slovo void, čo znamená „prázdny“. Hovorí to programu: „Hej, táto metóda ti nič nepošle naspäť, len spraví svoju robotu a skončí.“

Tereza: Jasné! A potom nasleduje meno metódy a zátvorky, kam idú tie vstupy, teda parametre.

Šimon: Presne. A celé kúzlo sa deje v tele metódy, ktoré je uzavreté v zložených zátvorkách {}. Ak metóda niečo vracia, použije na to príkaz return.

Tereza: Dobre, a teraz niečo, čo znie trochu zvláštne... preťažovanie metód. To znie, akoby sme tú metódu unavili.

Šimon: Vôbec nie! Je to naopak veľmi užitočná vec. Preťažovanie znamená, že môžeš mať viacero metód s rovnakým menom, ale musia sa líšiť v parametroch.

Tereza: Ako to myslíš, líšiť v parametroch?

Šimon: Buď majú iný počet parametrov, alebo majú parametre iného typu. Predstav si, že máš metódu priemer. Jedna verzia môže počítať priemer z dvoch čísel a druhá, s rovnakým menom, z troch čísel.

Tereza: Chápem! Takže nemusím vymýšľať názvy ako priemerPreDva a priemerPreTri. Použijem rovnaký názov a program si sám vyberie tú správnu verziu podľa toho, koľko čísel mu pošlem.

Šimon: Presne tak! Je to o pohodlnosti a čitateľnosti kódu. A práve tá čitateľnosť je kľúčová, keď sa neskôr k svojmu programu vrátiš.

Tereza: Takže to by sme mali. Čo nás čaká ako posledná téma, Šimon? Dúfam, že niečo ľahké na záver dňa.

Šimon: Určite! Poďme na programovanie metód a hlavne na ich preťaženie. Znie to možno zložito, ale je to super užitočné.

Tereza: Preťaženie? To znie, akoby sme tomu kódu dali príliš veľa práce.

Šimon: Je to skôr o tom, dať mu viac možností. Predstav si, že máš metódu priemer, ktorá počíta priemer z dvoch čísel.

Tereza: Jasné, priemer(double a, double b).

Šimon: Presne. Ale čo ak potrebuješ priemer z troch čísel? Namiesto vytvárania novej metódy priemerZtrochCisel, môžeš tú pôvodnú jednoducho preťažiť.

Tereza: Takže vytvoríš ďalšiu metódu s rovnakým menom priemer, ale s tromi parametrami?

Šimon: Bingo! Presne tak. priemer(double a, double b, double c). Program si sám vyberie tú správnu podľa toho, koľko čísel mu pošleš.

Tereza: A ako takú metódu zavoláme v kóde?

Šimon: Úplne jednoducho, presne ako si zvyknutá napríklad pri WriteLine(). Zavoláš ju menom a do zátvoriek dáš parametre.

Tereza: Takže napríklad vysledok = Spocitaj(3, 5); a výsledok sa mi uloží do premennej vysledok?

Šimon: Presne tak! Je to efektívny spôsob, ako si upratať kód a nepísať to isté dookola.

Tereza: Super. Kľúčový poznatok teda je, že metódy sú opakovane použiteľné bloky kódu a preťaženie nám dáva úžasnú flexibilitu.

Šimon: Perfektne zhrnuté. No a to je pre dnešok od nás všetko. Ďakujeme, že ste počúvali Studyfi Podcast!

Tereza: Majte sa krásne a dopočutia nabudúce!