Google ब्लिंक (नया वेबकिट कांटा): "जावास्क्रिप्ट में मूविंग डोम" का अर्थ?


12

से Blink ब्लॉग :

अंत में हम संपूर्ण दस्तावेज़ ऑब्जेक्ट मॉडल (DOM) को जावास्क्रिप्ट में स्थानांतरित करने जैसे और भी बड़े विचारों का पता लगाना चाहते हैं।

इसका क्या मतलब है? क्या इसका मतलब है कि WebKit का DOM वर्तमान में जावास्क्रिप्ट में नहीं बल्कि किसी अन्य भाषा में कोडित है? क्या इसका मतलब है कि वे अधिक सार्वजनिक एक्सेसर्स को डीओएम में उजागर करना चाहते हैं? और क्या?

जवाबों:


14

जिस तरह से मैंने इसे पढ़ा है वह दो विकल्प हैं। लेकिन इससे पहले कि हम इस पर गौर करें, आपको यह समझना होगा कि पुराना मॉडल कैसे काम करता है।

अधिकांश में, यदि HTML रेंडरिंग इंजन के सभी कार्यान्वयन नहीं हैं, तो DOM C या C ++ में कार्यान्वित किया जाता है और जावास्क्रिप्ट इंजन एक ऐड-ऑन है जो DOM को निर्यात किए गए बाइंडिंग है। यह समझ में आता है, यदि आप देखते हैं कि HTML और जावास्क्रिप्ट कैसे विकसित हुए। लेकिन जावास्क्रिप्ट से C / C ++ और वापस कॉल करने में बहुत समय बर्बाद होता है।

पहला विकल्प यह है कि DOM जावास्क्रिप्ट इंजन के अधिक निकट होता है। मूल रूप से DOM ऑब्जेक्ट कोर जावास्क्रिप्ट ऑब्जेक्ट बन जाते हैं, जैसे ऐरे। यह कुछ मार्शलों को कम करने के अलावा बहुत कुछ नहीं करता है, क्योंकि डोम जावास्क्रिप्ट इंजन से मूल डेटा प्रकारों का उपयोग करता है। DOM को C या C ++ में अभी भी लागू किया गया है।

दूसरा विकल्प और शायद उनका क्या मतलब है, यह है कि वास्तविक DOM को जावास्क्रिप्ट में लागू किया जाता है। नकारात्मक पक्ष यह है कि DOM तक पहुंच पूरी तरह से व्याख्यायित है, लेकिन उल्टा यह किसी भी मार्शलों को हटा देता है। यह शायद एक शुद्ध लाभ है, क्योंकि डोम ज्यादातर वैसे भी डेटा है।

फिर मैं आपको एक निश्चित उत्तर नहीं दे सकता - मैं Google के लिए काम नहीं करता हूं और इस प्रकार आपके पास इतनी जानकारी नहीं है।


1
मुझे नहीं लगता कि जावास्क्रिप्ट इंजनों के "देशी" प्रकारों की तुलना में विशेष प्रकार की बाइंडिंग में कोई ओवरहेड है क्योंकि उस इंजन को C ++ में लिखा गया है और सभी प्रकार एक ही तंत्र का उपयोग करके कार्यान्वित किए जाते हैं। देशी जावास्क्रिप्ट प्रकारों का उपयोग करके क्या बचाया जा सकता है एक कोड है क्योंकि देशी प्रकारों और डोम प्रकारों के लिए बहुत सारे कोड की नकल करने की आवश्यकता है।
Jan Hudec

जो मैं जानता हूं (उदाहरण के लिए, ईएस-चर्चा मेलिंग सूची से), यह निश्चित रूप से उत्तरार्द्ध है। वहाँ ही नहीं, क्योंकि लागत (जो प्राथमिकता निर्धारण के जे एस में लिखा डोम के लिए एक इच्छा है है वहाँ), लेकिन यह भी "विदेशी", "गैर देशी", "विशेष" भाषा अंतरिक्ष से वस्तुओं के रूप में के ज्यादा के रूप में दूर करने के लिए मुमकिन। DOM भाषा डिजाइनरों के लिए बड़ा PITA है, क्योंकि यह विशेष है।
हर्बी

इस विषय पर हाल ही में एक दस्तावेज़ डिज़ाइन किया गया है docs.google.com/document/d/…
सबबुल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.