IIFE fonksiyon tanımlaması yazılım geliştiricisine hız katıp fonksiyonu daha güvenli hale getiren bir fonksiyon tanımlama ve kullanım tipidir. IIFE’nin açılımı Immediately invoked function expressions’tur. Açılım olan kelime bloğunu Türkçe’ye çevirecek olursak:
Hemen Çağırılan Fonksiyon İfadesi
diyebiliriz. Kelime öbeğini Türkçe’ye çevirince kafanızda bir şeyler oluştu diye düşünüyorum. Hatta yazılım geliştirme konusunda kendine güvenenler şu anda sayfayı kapattı bile ancak kalanlarla biz bu ifadeyi irdelemeye devam edelim.
IIFE Fonksiyon hemen çağırılır
Adından da anlaşılacağı üzere fonksiyon tanımlaması yapıldıktan hemen sonra çalışır. Fonksiyonu herhangi bir dosyada tanımlayayım ya da kodun istediğim bloğunda tanımlayayım da canım istediğinde ya da fonksiyon lazım olduğunda çağırayım diye bir dünya yok !
Global scopedan izole edilmiş fonksiyon
Fonksiyonu tanımlarken herhangi bir değişkene atamıyoruz ya da fonksiyona bir isim vermiyoruz. Sadece tanımladığımız kısım bu fonksiyonu biliyor ve zaten ardından kullanıyoruz bu fonksiyonu. Başka bir scopeda ya da başka bir dosyadan fonksiyonu çağıramayız çünkü fonksiyonu çağıracak nesne ya da adres elimizde bulunmamaktadır.
Fonksiyonun temel hali
Bu tarz fonksiyonları ilk kez JavaScript arından TypeScript kodlarında gördüm ve kullandım. Fonksiyonun yapısı şu şekildedir:
(function () {
statements
})();
JavaScript’i bilenler hemen neden bu fonksiyonların anlık çalıştığını anlamışlardır. Fonksiyon tanımlamasının hemen ardından açılıp kapanan parantezler çoğu dilde bir fonksiyonun çalışmasını sağlar.
iife fonksiyon yapısını bir çok programlama dilinde kullanabilirsiniz. (Özellikle de yeni tip programlama dillerinde)
Çocukluğumdan beri arabalara olan ilgim babam sayesinde başlamıştır. Araba manyağı seviyesinde bir ilgim var ancak bunu her ortamda dile getirmem. Teknolojiye ve bilgisayara olan ilgim kendimi tanımaya başladım başlayalı oldu. Şimdi ise kendimce kod yazabilen bir bilgisayar mühendisi olarak çalışıyorum.