Junior — Middle
Ma'lumotlarni kechiktirilgan yuklash konseptini tushuntirib berishingiz mumkinmi va qaysi hollarda qo'llaniladi?
sobes.tech AI
AIdan javob
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.