Sobes.tech
Junior — Middle

Məlumatların gecikdirilmiş yüklənməsi anlayışını izah edə bilərsiniz və hansı hallarda tətbiq olunur?

sobes.tech Süni İntellekt

AI-dan cavab

Lazy Loading (Ləng Yükleme) — bu, resursun yüklənməsi və ya başlanğıcının dərhal baş vermədiyi, ilk dəfə ona müraciət edildikdə baş verən nümunədir. Bu, resurslardan qənaət etməyə və proqramın işə başlamasını sürətləndirməyə imkan verir, ağır obyektləri yalnız lazım olduqda yükləyir.

C#-da, Lazy Loading tez-tez Lazy<T> sinfi vasitəsilə həyata keçirilir; bu sinif obyektin yaradılma məntiqini kapsülləyir və obyektin yalnız Value xüsusiyyətinə ilk müraciətdə yaradılmasını təmin edir.

Nümunə:

Lazy<HeavyObject> lazyObject = new Lazy<HeavyObject>(() => new HeavyObject());

// HeavyObject, yalnız aşağıdakı çağırışdan sonra yaradılır:
var obj = lazyObject.Value; // Burada başlanğıc baş verir

Lazy Loading aşağıdakı hallarda tətbiq olunur:

  • Obyektin yaradılması vaxt və ya resurs baxımından baha başa gəlirsə.
  • Obyekt işləmə zamanı lazım olmaya bilər.
  • Yaddaş və performansın optimallaşdırılması lazımdır.

ORM-də (məsələn, Entity Framework) Lazy Loading əlaqəli məlumatların yalnız ona müraciət edildikdə yüklənməsi üçün istifadə olunur, və yaşıllaşmadan əvvəl deyil.