Gyakran előfordul, hogy másolja és beilleszti a kódot újrafelhasználásra a program különböző szakaszaiban?

Ha igen, érdemes fontolóra venni a függvények használatát. A funkciók a programozási nyelvek nagyon hatékony tulajdonságai. Hatékonyabbá, könnyebben olvashatóvá és elegánsabbá tehetik a kódot.

Mi a funkció?

A függvény egy kódblokk, amely feladatot hajt végre. Nevezhető és többször újrafelhasználva. Átadhatja az információkat egy funkciónak, és ez visszaküldheti az információkat. Számos programozási nyelv rendelkezik beépített funkciókkal, amelyekhez hozzáférhet a könyvtárukban, de saját funkciókat is létrehozhat.

Mi a rekurzió és hogyan használod?

Ismerje meg a rekurzió alapjait, a programozók számára elengedhetetlen, de kissé észbontó eszközt.

Ha meghív egy funkciót, a program szünetelteti az aktuális programot, és végrehajtja a funkciót. A funkció felülről lefelé olvasható. Miután a funkció befejeződött, a program továbbra is ott fut, ahol szünetelt. Ha a függvény értéket adott vissza, akkor azt az értéket kell használni, ahol a függvényt meghívták.

instagram viewer

Hogyan írhatunk függvényt?

A függvények írásának sokféle módja van. A pontos szintaxis attól függ, hogy milyen nyelven programoz. Mutatunk példákat Pythonban, JavaScriptben és C ++ - ban a programozási szintaxis tartományának bemutatására.

Összefüggő: Miért nem létezhetnek nyelvek programozása funkciók nélkül?

Üres funkciók

Az első típusú függvény, amelyet meg fogunk nézni, egy void függvény. Ez egyszerűen azt jelenti, hogy a függvény nem ad vissza értéket. Az érvénytelen funkciókat egy utasításkészlet teljesítéséhez használják. Ezekben a példákban az általunk írt függvényt hívjuk helloFunction. A funkció célja a "Hello World" kiadása.

TIPP: adjon függvényeknek olyan neveket, amelyek elmagyarázzák, mit csinálnak. A program bonyolultabbá válásával könnyebb lesz kezelni a funkciókat és elolvasni a kódot.

Piton

def helloFunction ():
nyomtatás ("Hello World")
helloFunction ()

A kulcsszó def függvény definiálására és létrehozására használatos a Pythonban. Ezután a függvény neve. A függvény utasításai a kettőspont után a következő sorban következnek. A fehér tér számít a Pythonban, ezért győződjön meg arról, hogy behúzza az összes kódot, amelyet a függvény futtatásához kíván. A fenti példában a függvény egy kódsort futtat.

Éles szemed észrevehette ezt nyomtatás() szintén függvény, de másképpen hívják, mint a mi függvényünket. Tartsa meg ezt a gondolatot most, később megvizsgáljuk a függvények paramétereit.

JavaScript

helloFunction () {függvény
figyelmeztetés ("Hello World!");
}
helloFunction ();

JavaScriptben a kulcsszó funkció függvények létrehozására szolgál. Ezután megkapjuk a függvény nevét. A göndör zárójelek közé eső bármely kód futtatásra kerül a függvény meghívásakor.

A szóköz nem fontos a JavaScript-ben, de a kódot a függvényben szokás behúzni. A behúzás megkönnyíti a kód olvasását, ami nagyon fontos, mivel a programok bonyolultabbá válnak.

Megjegyzés: Hasonlóan nyomtatás() a korábbi példában éber() függvény is.

C ++

#include 
névtér használata std;
void helloFunction () {
cout << "Hello Világ!";
}
int main () {
helloFunction ();
visszatér 0;
}

A függvények másképp jönnek létre a C ++ nyelven. A függvény meghatározásához szükséges kulcsszó helyett az első szó leírja a függvény által visszaadott adatok típusát. Ebben az esetben a funkciónk nem ad vissza semmilyen adatot, ezért az adatok érvénytelenek. Ezután megkapjuk a függvény nevét. A JavaScripthez hasonlóan a göndör zárójelek közötti összes kód futtatásra kerül a függvény meghívásakor. Szintén a JavaScripthez hasonlóan a szóköz nem befolyásolja a funkciót, de jó gyakorlat.

Megfigyelt egy másik függvényt a C ++ kódban? Igen, fő() egy függvény. Amikor C ++ programot hajt végre, automatikusan meghívja a fő funkciót. A fő funkció sikeres befejezése után 0-t ad vissza, amikor kilép a programból, jelezve, hogy nem volt hiba a program futtatásakor.

Értékeket igénylő funkciók

Az érvénytelen funkciók nagyszerűek, ha úgy találja, hogy ugyanazt a kódot írja újra és újra. De korlátozóak lehetnek. Statikusak és nem változnak. Mindig ugyanazokat az utasításokat teljesítik. Az egyik módon növelhetjük hasznosságukat, ha különböző értékeket adunk át a függvénynek.

Észre fogja venni, hogy a zárójelben minden funkciónk neve szerepel. A zárójelben kijelenthetjük, hogy adatokra van szükség a funkciónk futtatásához. Ezután felhasználhatjuk a függvényünkhöz továbbított adatokat a függvényben. Vessünk egy pillantást az előző példákra, de ezúttal adjuk át azt a kifejezést, amelyet ki akarunk adni.

Piton

def helloFunction (newPhrase):
nyomtatás (newPhrase)
helloFunction ("Új kifejezésünk")

A zárójelek között a függvényünk kijelenti, hogy változóra van szüksége a futtatáshoz. Megneveztük a változót newPhrase és most felhasználhatja a funkciónkban. Amikor meghívjuk a függvényt, át kell adnunk a kért információkat a zárójelek közé helyezve. Ugyanezek a változtatások történtek a JavaScript-ben is.

JavaScript

helloFunction (newPhrase) {függvény
figyelmeztetés (newPhrase);
}
helloFunction ("Új kifejezésünk");

C ++

#include 
névtér használata std;
void helloFunction (string newPhrase) {
cout << newPhrase;
}
int main () {
helloFunction ("Új kifejezésünk");
visszatér 0;
}

A C ++ függvényünk valamivel több információt igényelt. Tudjuk, hogy a függvényed string adatokat akar, de ez nem elég jó a C ++ számára. A funkció létrehozásakor meg kell adnia, hogy milyen típusú adatokra van szüksége. Ha nem a megfelelő típusú adatokat küldi el, akkor a funkció hibát fog létrehozni.

Ez kissé idegesítőnek tűnhet, de a szigorú nyelvhasználat gyakran megmenthet fejfájást. Ha olyan függvényt ír be JavaScript-be, amelyhez egész szám szükséges, de a szám karakterláncként kerül elküldésre, olyan hibát hozhat létre, amelyet nagyon nehéz felkutatni.

Összefüggő: 5 funkcionális programozási nyelv, amelyet tudnia kell

Értéket adó függvények

Az utolsó függvény képesség, amelyre kiterjed, az adatok visszaadása. Ez különösen értékes, ha az adatok felhasználása előtt módosítani kívánják. Bár írhatná ezt inline, ha sokszor fogja használni ugyanazokat a számításokat, mint például az imperial metrikussá konvertálása, célszerűbb lehet ezt függvényként írni. Példánk egyszerűbb lesz. Funkciónkhoz két egész számra lesz szükség, és az összeget adja vissza.

Piton

def hozzáadásFunkció (a, b):
adja vissza a + b
nyomtatás (hozzáadva Funkció (2, 4))

Ebben a példában a funkciónkhoz két változóra van szükség egy helyett. Ezt a változóneveink vesszővel való elválasztásával jelezzük. A kulcsszó Visszatérés megmondja a függvénynek, hogy adja vissza a következő adatokat, ebben az esetben 2 + 4 vagy 6. A függvényt a nyomtatás() funkció.

Miután a programunk eljutott erre a sorra, szünetelt, futtatta a funkciónkat, majd mintha folytatta volna Függvény hozzáadása (2, 4) valójában csak a visszaadott érték 6 volt.

JavaScript

A JavaScript kód nagyon hasonlít a Python kódhoz. Az elsődleges különbség az, hogy a függvényt riasztásban hívják meg.

függvény hozzáadásaFunkció (a, b) {
adja vissza a + b;
}
figyelmeztetés (hozzáadva (2, 4) függvény);

C ++

#include 
névtér használata std;
int összeadásFüggvény (int a, int b) {
adja vissza a + b;
}
int main () {
cout << hozzáadásFunkció (2, 4);
visszatér 0;
}

A C ++ kód hasonlóan fut, de a szokásokhoz képest kissé több információt igényel. Először meg kell mondanunk, hogy milyen típusú adatokat adunk vissza a funkciónkkal. Ezt látni fogja üres megváltozott int. Ez azt jelenti, hogy az adatok visszaadása helyett a függvényünk egész számot ad vissza. Ezen túl a kód hasonló a már feltárt kódhoz.

Kezelje a funkciókat

A funkciók szórakoztató eleme, hogy a függvények más funkciókat is meghívhatnak. Akár magukat is hívhatják! De nagy hatalommal jár a nagy felelősség. Ne őrüljön meg olyan kód létrehozásával olyan funkciókkal, amelyek más funkciókat hívnak meg, amelyek még több funkciót hívnak meg.

Mint említettük, minden egyes funkció meghívásakor a program szünetel, amíg a funkciót futtatja. Ez azt jelenti, hogy a program aktív memóriában van. Ha további funkciókat hív meg anélkül, hogy azokat befejezné, akkor aktívabb memóriát használ. Ha nem vigyázol, a programod kiszabadulhat.

Email
Hogyan tartsuk tisztán a kódot az objektumok beágyazásával

A globális változók egyszerűnek tűnhetnek, de gyakran ezek okozzák a sok hibát. Így egyszerűsítheti kódját kapszulázással.

Kapcsolódó témák
  • Programozás
  • Programozás
  • Funkcionális programozás
A szerzőről
Jennifer Seaton (20 cikk megjelent)

J. A Seaton tudományos író, amely összetett témák lebontására specializálódott. PhD fokozattal rendelkezik a Saskatchewani Egyetemen; kutatása a játékalapú tanulás felhasználására összpontosított a hallgatók online elkötelezettségének növelésére. Amikor nem dolgozik, megtalálja olvasás közben, videojátékokkal vagy kertészkedéssel.

Tovább Jennifer Seatontól

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!

Még egy lépés…!

Kérjük, erősítse meg e-mail címét az imént elküldött e-mailben.

.