कच्ची रफ्तार में नहीं; हाथ से लिखा हुआ निशाने वाला DOM update किसी पेड़ को diff करने से हमेशा जीतेगा। virtual DOM आपको देता है एक ऐसा programming model जिसमें UI state का नतीजा होता है, साथ में batching ताकि कई updates मिलकर एक ही commit बनें, और एक ऐसा render का ठिकाना जिसे कहीं भी ले जाया जा सके। यह लगभग हर चीज के लिए काफी तेज है और हाथ से DOM का हिसाब रखने वाले bugs का पूरा वर्ग खत्म कर देता है।
इंटरव्यूअर यह क्यों पूछते हैं
इंटरव्यूअर रटी हुई प्रचार पंक्तियों की जगह अपनी सोच ढूंढ रहे होते हैं। मजबूत कैंडिडेट मान लेता है कि diff एक अतिरिक्त खर्च है, बताता है कि बदले में क्या मिलता है, और signal आधारित frameworks वाली बारीक reactivity से उसकी तुलना कर सकता है। इससे यह भी पता चलता है कि आप अपने पसंदीदा औजार को लेकर रक्षात्मक हुए बिना अदला बदली पर बात कर सकते हैं या नहीं।
अपना जवाब कैसे स्ट्रक्चर करें
- सीधे सवाल का ईमानदार जवाब दें: नहीं, कच्ची रफ्तार में नहीं।
- बताएं कि यह model असल में क्या देता है, अंदाजा लगने लायक बर्ताव और batching।
- बारीक reactivity से संक्षेप में तुलना करें।
- बताएं कि लागत कहां दिखती है और React ने उसे कैसे घटाया है।
उदाहरण जवाब
ईमानदारी से, नहीं। अगर आप DOM का बदलाव हाथ से लिखें तो आप हर बार जीतेंगे, क्योंकि React को कुछ भी छूने से पहले elements का पेड़ बनाना और उस पर चलना पड़ता है। बदले में आपको ऐसा model मिलता है जिसमें मैं बताता हूं कि किसी दी हुई state पर UI कैसा दिखना चाहिए और states के बीच की छलांगें कभी हाथ से नहीं संभालता, जहां पहले bugs रहते थे। साथ में batching मिलती है, तो एक ही handler में पांच setState calls एक commit बनती हैं, और ऐसा render का ठिकाना मिलता है जो browser से बंधा नहीं। हालांकि लागत असली है। React किसी component और उसके नीचे की हर चीज को दोबारा चलाता है जब तक कोई उसे रोक न दे, इसीलिए हम memoization पर वक्त लगाते हैं। signal आधारित frameworks value के स्तर पर dependencies पकड़कर इससे बच जाते हैं, तो सिर्फ वही text node बदलता है जो बदला है, और सिर्फ throughput के लिए वे जीतते हैं। React concurrent rendering से और अब compiler के अपने आप memoization करने से यह फासला घटाता आया है, जो उस ज्यादातर हाथ के काम को हटा देता है जो पहले इसका कर था।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- signal आधारित frameworks diff से पूरी तरह कैसे बच जाते हैं?
- किसी असली app में React का model आपको सबसे ज्यादा कहां महंगा पड़ता है?
- React Compiler उस अदला बदली में क्या बदलता है?
React डेवलपर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें