Korisnici koji su u principu daleko od programiranja rijetko se suočavaju s pojmovima funkcije i postupka, a povezani su s nečim matematičkim i birokratsko-medicinskim. U programiranju mnogi jezici djeluju na tim pojmovima, međutim, čak ni stručnjaci ponekad ne mogu jasno razumjeti razliku između funkcije i postupka. Kao i kod tog gofera: on jest, ali niko ga ne vidi. Da vidimo jesu li razlike toliko nevidljive.
Sadržaj članka
- definicija
- usporedba
- nalazi
definicija
funkcija u programiranju, podprogram pozvan iz drugih podprograma onoliko puta koliko je potrebno.
postupak - imenovani dio programa (podprogram), koji se iz sljedećih dijelova programa više puta poziva potreban broj puta.
do sadržaja ↑usporedba
Glavna razlika između funkcije i postupka je povratni rezultat. Zapravo su i funkcije i postupci logički nedjeljivi blokovi koji čine programski kod. Funkcija vraća vrijednost, postupak u većini programskih jezika ne vraća ili (na primjer C) vraća praznu vrijednost. U potonjem slučaju (na C), postupak se smatra podređenom vrstom funkcije.
Zaglavlje funkcije sadrži riječ "funkcija", identifikator (pravo ime funkcije), popis parametara i, po želji, vrstu rezultata. U tijelu funkcije mora se propisati operator koji će imenu funkcije dodijeliti vrijednost, koju će kao rezultat vratiti. Naslov postupka sadrži riječ "postupak", identifikator (naziv postupka) i popis parametara koji se mogu mijenjati. Poziv funkcije provodi se kao dio izraza na koji se ti izrazi primjenjuju; poziv postupka zahtijeva zasebnu izjavu. Postupak se zove samo imenom, ime funkcije je povezano s njegovom vrijednošću. Na dijagramima algoritama poziv funkcije prikazan je u izlaznom bloku ili u procesnom bloku, poziv postupka u posebnom bloku "unaprijed definirani proces".
do sadržaja ↑nalazi
- Funkcija vraća vrijednost, postupak ne.
- Zaglavlje funkcije mora sadržavati vrstu rezultata..
- U tijelu funkcije potreban je operator koji imenu funkcije daje vrijednost.
- Za postupak postupka potreban je poseban operator, poziv funkcije je moguć kao dio izraza.
- Naziv postupka je potreban za pozivanje, a naziv funkcije je dodijeliti vrijednost.
- Na dijagramima algoritama poziv postupka prikazan je u zasebnom bloku, funkcijski poziv prikazan je u procesnom ili izlaznom bloku.