ट्रैक
/
JavaScript
JavaScript
/
अभ्यास
/
लेंस व्यक्ति
लेंस व्यक्ति

लेंस व्यक्ति

मध्यम

परिचय

JavaScript में, लेंस फंक्शनल प्रोग्रामिंग की एक अवधारणा है जो आपको डेटा तक मॉड्यूलर और इम्यूटेबल तरीके से पहुँचने और उसे बदलने देती है। मूल रूप से ये प्योर गेटर और सेटर फंक्शन के ऐसे कंपोज़ेबल जोड़े होते हैं जो किसी ऑब्जेक्ट के अंदर किसी खास फील्ड पर ध्यान केंद्रित करते हैं।

लेंस की मदद से कोड को आसान बनाया जा सकता है, उसे और ज़्यादा दोबारा इस्तेमाल करने लायक बनाया जा सकता है, और प्रोग्रामिंग की आम गलतियों से बचा जा सकता है। उदाहरण के लिए, लेंस का इस्तेमाल इन कामों के लिए किया जा सकता है:

  • नेस्टेड डेटा स्ट्रक्चर तक पहुँचना और उन्हें बदलना, बिना यह चिंता किए कि डेटा का स्ट्रक्चर कैसा है।
  • मूल ऑब्जेक्ट को बदले बिना, डेटा को प्योर तरीके से अपडेट करना।
  • कई लेंसों को जोड़कर और जटिल लेंस बनाना, जो अलग-अलग तरीकों से डेटा तक पहुँच सकें और उसे बदल सकें।

निर्देश

नेस्टेड रिकॉर्ड अपडेट करने के लिए लेंस का इस्तेमाल कीजिए (यह उन भाषाओं पर लागू है जिनमें इम्यूटेबल डेटा होता है)।

नेस्टेड और इम्यूटेबल रिकॉर्ड के फील्ड अपडेट करना थोड़ा परेशान करने वाला होता है। ऐसे मामलों में संरचना जितनी गहरी होती है, कोड उतना ही बोझिल होता है। मान लीजिए, आपके पास एक Person है, जिसमें एक Address है, जिसमें एक Street है, जिसमें एक Number है। अब Number को अपडेट करने के लिए नए Number वाली नई Street बनानी पड़ती है, फिर नई Street वाला नया Address, और अंत में नए Address वाला नया Person बनाना पड़ता है। क्या आप पहले ही उलझ गए हैं?

इस समस्या को हल करने का एक तरीका है लेंस का इस्तेमाल करना।

लेंस का इस्तेमाल करके रिकॉर्ड एक्सेस करने वाले कई फंक्शन बनाइए। टेस्ट सूट भी आपको लेंस के बिना काम करने देता है, ताकि आप अलग-अलग तरीके आज़मा सकें।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
JavaScript Exercism

लेंस व्यक्ति शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और JavaScript को 37 कॉन्सेप्ट159 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।