Kas yra anoniminė funkcija?

Anoniminė funkcija yra funkcija, naudojama daugelyje programavimo kalbų, tačiau, skirtingai nuo kitų funkcijų, ją galima naudoti be susiejimo ir jai nereikia pavadinimo. Vienas iš būdų naudoti anoniminę funkciją yra perduoti duomenis iš vienos sekcijos į kitą, ypač jei duomenys yra trumpi. Skirtingai nuo kitų funkcijų, kurios turi būti deklaruojamos ir naudojamos dviem atskirais žingsniais, ši funkcija sujungia abi viename veiksme. Užuot programavęs daugybę skirtingų vietos rezervavimo ženklų į programą, kuriai jų reikia, programuotojas gali naudoti vieną iš šių funkcijų kaip pakaitalą, sumažindamas kodo kiekį ir užtikrindamas, kad nėra rašybos klaidų.

Daugelis programavimo funkcijų turi būti susietos su žetonu arba simboliu, vadinamu identifikatoriumi. Tai apeinama naudojant anoniminę funkciją, nes funkcijai vykdyti nereikia identifikatoriaus. Funkcijai nereikia pavadinimo; jis tiesiog deklaruojamas ir naudojamas vykdymo metu. Daugelis programuotojų suteikia funkcijai pavadinimą, kad būtų lengviau rankiniu būdu nustatyti, nebent yra tik kelios anoniminės funkcijos.

Vienas iš anoniminių funkcijų naudojimo būdų yra priversti ją perduoti informaciją iš vieno skyriaus į kitą. Tai galima padaryti įkeliant tam tikrą informaciją į funkciją arba perduodant informaciją kanalu, kol ji pasiekia šią funkciją. Pagrindinė to priežastis yra ta, kad šiai funkcijai deklaruoti reikia labai mažai kodo ir ji veikia kaip tinkamas tarpininkas perduodant informaciją.

Kai programavimo kalba naudojama įprasta funkcija, reikia atlikti du veiksmus. Pirma, funkcija turi būti deklaruota, o tada turi būti kodavimas, kad būtų paleista deklaruota funkcija. Anoniminė funkcija gali atlikti abu vienu žingsniu ir paprastai reikia mažiau kodavimo. Paprastai tai naudojama vienkartinėms funkcijoms; anoniminė funkcija nėra su niekuo susieta, todėl pasikartojančios funkcijos gali sukelti klaidą.

Naudojant daugumą programavimo funkcijų, informacijai laikyti reikia kelių rezervuotųjų ženklų. Šios vietos žymos turi būti tiksliai pavadintos, kitaip programa jų neatpažins. Kodavimas taip pat reikalingas kiekvienai rezervuotai vietai, o didelės programos atveju gali prireikti daug kodo eilučių. Vietoj to, anoniminė funkcija gali būti naudojama kaip rezervuota vieta, ir paprastai vietoj daugelio reikia tik vienos. Šios funkcijos pavadinimo nebuvimas reiškia, kad programa iš karto ją atpažins ir leis funkcijai saugoti informaciją.