Domknięcie (informatyka)
Z Wikipedii
Domknięcie - w metodach realizacji języków programowania jest to obiekt wiążący funkcję oraz środowisko w jakim ta funkcja ma działać. Środowisko przechowuje wszystkie obiekty wykorzystywane przez funkcję, nie będące dostępne w globalnym zakresie widoczności. Realizacja domknięcia jest zdeterminowana przez język, jak również przez kompilator.
Domknięcia występują głównie w językach funkcyjnych, w których funkcje mogą zwracać inne funkcje, wykorzystujące zmienne utworzone lokalnie.
Na przykład w języku Python:
def utworz_funkcje_mnozaca(y): def funkcja(x): # funkcja wykorzystuje dwie zmienne: # x - dostępną dla użytkownika # y - zdefiniowaną tylko wewnątrz funkcji 'utworz_funkcje_mnozaca' return x * y return funkcja mnozenie_przez_5 = utworz_funkcje_mnozaca(5) print mnozenie_przez_5(12) # zostanie wypisane 5*12, czyli 60
funkcja mnożenie_przez_5 oprócz argumentu formalnego x ma dostęp (poprzez domknięcie) do kopii wartości y przekazanej w wywołaniu utwórz_funkcję_mnożącą (w tym przykładzie y to liczba 5).