Lazy loading एक प्रकार की programming technique होती है जो की delay करती है loading resources तब तक के लिए जब तक की उनकी सच में जरुरत नहीं होती.
उदाहरण के लिए, एक webpage जिसमें की images तब तक load नहीं होते हैं जब तक की user नीचे scroll नहीं कर लेता है, उस location तक उस page में. Lazy loading का इस्तमाल web में और कुछ software programs में भी किया जाता है mobile और desktop applications के तोर पर.
Lazy Loading Web पर
Images की Lazy loading वो भी एक webpage पे, आसानी से page की load time को speed up कर सकती है क्यूंकि browser को उन images को load करने की जरुरत ही नहीं जो की user को दृश्यमान नहीं होते हैं.
जैसे जैसे user scroll करता है page में, फिर images भी धीरे धीरे load होते हैं dynamically. इस प्रक्रिया को पूर्ण किया जाता है JavaScript के इस्तमाल से जो की प्रत्येक image की position को detect करता है और साथ में ये भी निर्धारित करता है की वो browser window के viewable area में है भी या नहीं.
अगर user scrolls down करता है एक image तक, तब ऐसे में JavaScript फिर request करता है resource के लिए web server से और फिर उस image को display किया जाता है page में. अगर user नीचे scroll down ही नहीं करता है, फिर image load ही नहीं होता है.
ये मुमकिन है delay करना दुसरे resources की loading करना जैसे की JavaScript files, CSS, और यहाँ तक की HTML भी.
उदाहरण के लिए, एक web developer ये निर्धारित करता है की कौन सी CSS styles की जरुरत होती है “above-the-fold” content के लिए एक webpage में, या content viewable करने की height एक typical browser window की.
इन सभी को developer implement करता है “inline styles,” या styles के रूप में जिन्हें की define किया जाता है Webpage के HTML के अंतर्गत. JavaScript का इस्तमाल होता है additional CSS को load करने के लिए जब एक बार page load हो जाये या एक बार user scrolling करना आरम्भ कर दे.
Lazy loading video भी काफी popular है web पर. ये काफी ज्यादा effective इसलिए है क्यूंकि video files typically सबसे बड़ी resources होती हैं जो की loaded होता है एक webpage में. इसमें पूरी video को client के device में send करने के स्थान पर, web server उस video का केवल कुछ हिस्सा ही send करता है जब user उसे देख रहा होता है.
Popular video sharing websites जैसे की YouTube और Vimeo इस्तमाल करते हैं lazy loading की जिससे की वो कम कर सकें bandwidth को और वहीँ वो users को रोक सकें ज्यादा video content download करने से, जितनी की उन्हें असल में जरुरत होती है.
ये उन users के लिए काफी मददगार होता है जो की metered Internet connections, जैसे की mobile data plans का इस्तमाल करते हैं.
जब एक video की lazy loading प्रक्रिया हो रही होती है, तब ये बहुत ही common होता है की उस video की कुछ seconds या कुछ minutes को पहले से ही load हो जाये, उस video की current point की तुलना में. यह video data को save किया जाता है एक buffer में, जो की मदद करता है videos को smoothly play होने के लिए जब Internet connection consistent न हो.
Lazy Loading Software Programs में
जहाँ lazy loading काफी ज्यादा popular हो गया है web में, वहीँ इसका इस्तमाल software development में काफी समय से किया जा रहा है.
उदाहरण के लिए, एक operating system केवल display करती हैं thumbnail images, visible icons एक folder में.
वहीँ एक image viewing program भी केवल load करती है visible images को एक photo library में. इससे ये बहुत ही कम memory का इस्तमाल करती हैं और साथ में improve करती हैं application performance को क्यूंकि program ऐसे में फालतू के unnecessary data को load नहीं करते हैं.