Stránka 1 z 1

Teoretická otázka - rozdíl mezi funkcí, metodou a procedurou

Napsal: 23 dub 2013 02:16
od simPod
Snažím se zjistit, jaký je rozdíl mezi funkcí, metodou a procedurou. Už jsem to googlil ale pořád mi to nedává smysl, jaký je v tom rozdíl. (Programuji v Nette a Javascriptu)

Chápu, že funkce je část kódu, kterou můžu volat z jíné části kódu, může mít vstupní parametry a výstupní hodnoty.
Metoda je funkce (v OOP), v třídě a převážně pracuje jen s daty dané třídy
Procedura je funkce co nemá vstupní a ni výstupní hodnoty, jen zpracovává nějaká data nebo provede nějakou operaci

To jsem tak nějak pochytil odtud... http://sql-vyuka.cz/d/node/32

Celé bych to vyjádřil několika otazníky ??? protože pokud to dobře chápu, všechno to jsou prostě druhy funkcí (?)

Díky

Re: Teoretická otázka - rozdíl mezi funkcí, metodou a proced  Vyřešeno

Napsal: 23 dub 2013 05:46
od faraon
Ten rozdíl je stejne teoretický jako tvoje otázka, protože všechno jsou to podprogramy :lol:

Je to jen otázka názvosloví v tom kterém jazyce:

Pascal
funkce něco vykoná a vrátí výsledek, podobně jako matematické funkce,
procedura něco vykoná a nevrátí nic.

C
funkce se říká všemu, ať něco vrací nebo nevrací.

Java
metoda se říká funkcím, protože my borci přece programujeme "objektově" a musíme mít vlastní názvosloví, aby nebylo na první pohled poznat že tenhle jazyk je jen zprzněné Céčko.

No a podprogram (subroutine) je prostě samostaná část kódu, která se volá z jiných míst programu, což se vztahuje na všechny výše uvedené. Viz BASICový příkaz GOSUB (GO to SUBroutine) a návrat příkazem RETURN ;-)