Chrome डेवलपर सम्मेलन 2014 - पॉलिमर - यूनियन की स्थिति

रॉब डॉडसन
रॉब डॉडसन

पॉलिमर और वेब कॉम्पोनेंट, आने वाले समय में काफ़ी चर्चा में रहने वाले विषय हैं. साथ ही, यह नेटवर्क तेज़ी से बदल रहा है, इसलिए डेवलपर के लिए नए बदलावों की जानकारी रखना अक्सर मुश्किल हो सकता है.

Chrome Dev सम्मेलन में अपने बातचीत के दौरान, Polymer टीम के इंजीनियरिंग मैनेजर, मैट मैकनल्टी ने Polymer के बारे में बताया. साथ ही, Polymer 1.0 के इस्तेमाल के लिए, रोडमैप के बारे में भी बताया.

पॉलिमर क्या है?

सबसे पहले जानते हैं कि Polymer क्या है?

Polymer एक ऐसी लाइब्रेरी है जो वेब कॉम्पोनेंट से एलिमेंट और ऐप्लिकेशन बनाने में आपकी मदद करती है. वेब कॉम्पोनेंट नए स्टैंडर्ड के बेहतर सेट हैं. इनकी मदद से, डेवलपर अपने कस्टम एलिमेंट के साथ एचटीएमएल शब्दावली को बढ़ा सकते हैं.

Polymer से डेवलपर को तेज़ी से ऐप्लिकेशन बनाने में मदद मिलती है

वेब कॉम्पोनेंट को ब्राउज़र के लिए एक नया प्रोसेस बनाने के लिए डिज़ाइन किया गया है. इसका मतलब है कि वे काफ़ी दमदार होते हैं, लेकिन उनके लेवल का लेवल भी बहुत कम होता है. साथ ही, इनके साथ काम करने के लिए थोड़े-बहुत कोड की ज़रूरत होती है.

Polymer, वेब कॉम्पोनेंट को बेहतर बनाता है

पॉलिमर, सिंटैक्स को "शक्कर" करके वेब कॉम्पोनेंट को इस्तेमाल करना आसान बना देता है. यह ऐसे बॉयलरप्लेट कोड को कम करता है जिन्हें लिखने की ज़रूरत होती है. साथ ही, डिक्लेरेटिव टोन में भी इसका इस्तेमाल किया जाता है, ताकि वेब कॉम्पोनेंट बनाना उतना ही आसान हो जितना कि एचटीएमएल में लिखना.

पॉलिमर एक्सपेरिमेंट

Polymer की शुरुआत एक प्रयोग के तौर पर की गई. इसका मकसद यह देखना था कि क्या हम वेब कॉम्पोनेंट के मानकों को पॉलीफ़िल कर सकते हैं और सभी ब्राउज़र में इन टेक्नोलॉजी के शिप होने से पहले, डेवलपर से सुझाव ले सकते हैं या नहीं. जैसे-जैसे ज़्यादा से ज़्यादा डेवलपर ने Polymer का इस्तेमाल करना शुरू किया, वैसे-वैसे ये सिर्फ़ पॉलीफ़िल से बदलकर, असल में उत्पादकता से जुड़ी सुविधाओं वाली लाइब्रेरी में बदल गए. जैसे- डेटा बाइंडिंग, एट्रिब्यूट में बदलाव के बारे में जानने वाले, अपने-आप नोड ढूंढने की सुविधा वगैरह. लेकिन सभी प्रयोगों के नतीजे होते हैं, तो हमें कैसे पता चला?

Polymer के रिपोर्ट कार्ड में सुधार की ज़रूरत है

कई डेवलपर ने कहा कि उन्हें Polymer में वेब कॉम्पोनेंट के साथ काम करने से, बेहतर तरीके से काम करने में मदद मिली है. साथ ही, उन्होंने परफ़ॉर्मेंस और जटिलता पर भी चिंता जताई है.

यह एक स्वाभाविक तनाव को हाइलाइट करता है जो Polymer पहले से ही बना हुआ है: वेब प्लैटफ़ॉर्म को आगे बढ़ाने के लिए एक प्रयोग होना चाहिए, साथ ही वह कुछ ऐसा तैयार करना जो प्रोडक्शन के लिए तैयार किया गया हो, जिस पर डेवलपर निर्भर कर सकें.

आगे होने वाले बदलाव

Polymer की टीम ने लाइब्रेरी की हर सुविधा की बारीकी से जांच की है. इसका मकसद यह है कि प्रोडक्शन के लिए तैयार कम से कम एक ऐसा वर्शन तैयार किया जाए जिसे डेवलपर भरोसे के साथ इस्तेमाल कर पाएं.

लेयर

पॉलिमर को परतों की सीरीज़ में फिर से बांटा गया है. मुख्य सुविधाएं तेज़ और सीमित हैं, जबकि ज़्यादा बेहतर सुविधाओं के लिए ऑप्ट-इन किया जाएगा. इस्तेमाल के ज़्यादातर मामलों में, मुख्य सुविधाओं में डेवलपर की ज़रूरतें पूरी होनी चाहिए.

पॉलिमर को परतों में फिर से बांटा गया है

आसान डेटा बाइंडिंग

परफ़ॉर्मेंस के लिए, Polymer के डेटा बाइंडिंग सिस्टम को भी काफ़ी हद तक ऑप्टिमाइज़ किया गया है. लेयर्ड अप्रोच के बाद, टू-वे बाइंडिंग अब ऑप्ट-इन है. डिफ़ॉल्ट तौर पर, यह वन-वे बाइंडिंग होती है. इसके अलावा, पब्लिश किए गए प्रॉपर्टी टाइप को साफ़ तौर पर दिखाया गया है. साथ ही, प्रॉपर्टी में बदलाव करने से, अलग-अलग लाइब्रेरी के एलिमेंट को आसानी से कम्यूनिकेट करने में मदद करने के लिए, इवेंट ट्रिगर होता है.

डेटा बाइंडिंग को आसान बना दिया गया है

लीनर शैडो डीओएम

Shadow DOM polyfill इंजीनियरिंग का कमाल का काम करता है. इसे इस तरह से डिज़ाइन किया गया है कि यह पूरी जानकारी और निर्देशों का पालन करे. इससे यह पक्का होता है कि प्लैटफ़ॉर्म को पूरी तरह से टेस्ट किया जा रहा है. हालांकि, यह अफ़सोस की बात है कि इसकी वजह से परफ़ॉर्मेंस में कुछ रुकावटें आ रही हैं, जिनका इस्तेमाल पॉलिमर नहीं कर रहा है.

Polymer का अगला वर्शन अलग तरह का है. इसमें शिम-स्टाइल की एक लेयर लागू की गई है, जो सिर्फ़ पॉलिमर के लिए काम करती है.

शिम शैडोडम ज़्यादा तेज़ है

सामान्य, नॉन-पॉलीमर वेब कॉम्पोनेंट के लिए मौजूदा पॉलीफ़िल चालू रहेगा.

webcomponents.org पर ले जाया जा रहा है

पॉलीफ़िल की बात करें, तो उन्हें भी नया घर मिल रहा है. फ़िलहाल, कई डेवलपर पॉलिमर और वेब कॉम्पोनेंट के बीच के संबंध को लेकर उलझन में हैं. कुछ लोगों का मानना है कि वेब कॉम्पोनेंट इस्तेमाल करने के लिए, आपको सभी पॉलिमर का इस्तेमाल करना चाहिए. असल में, आपको सिर्फ़ पॉलीफ़िल की ज़रूरत होती है.

इस अंतर को ज़्यादा बेहतर तरीके से समझाने के लिए, पॉलीफ़िल को webcomponents.org में ले जाया जा रहा है और अब इनका नाम बदलकर webcomponents.js कर दिया गया है.

webcomponents.org में ले जाने वाले पॉलीफ़िल

इस सुविधा को इस तरह डिज़ाइन किया गया है कि लाइब्रेरी के अन्य लेखक बिना किसी भ्रम के पॉलीफ़िल का फ़ायदा ले सकें. Polymer की टीम, पॉलीफ़िल के लिए योगदान देना जारी रखेगी. हालांकि, हमें उम्मीद है कि इस बदलाव की वजह से, यह समुदाय के लिए ज़्यादा शेयर किए जाने वाले संसाधन बन पाएंगे.

नतीजे

इन सभी बदलावों से क्या नतीजे मिलते हैं?

स्पीड

Chrome पर, Polymer अब पांच गुना तेज़ हो गया है और Safari पर 8 गुना तेज़ हो गया है.

Safari में पॉलिमर अब आठ गुना तेज़ हो गया है

फ़ाइल का साइज़

फ़ाइल का साइज़ भी 87% कम कर दिया गया है. इसे 123 केबी से घटाकर 15 केबी (6 केबी gzip) किया गया है.

पॉलिमर अब 87% छोटा हो गया है

रोडमैप

अगली रिलीज़ में कुछ एपीआई ब्रेकिंग बदलाव होंगे, जिन्हें नए वर्शन नंबर (0.8) से दिखाया जाएगा. हालांकि, टीम यह साफ़ तौर पर बताना चाहती है कि यह कोई बदलाव नहीं है. अपने मौजूदा प्रोजेक्ट को Polymer 0.5 से 0.8 में बदलने का तरीका आसान होगा.

Polymer टीम ने एक रोडमैप भी तैयार किया है, ताकि डेवलपर को आने वाले समय में होने वाली रिलीज़ के बारे में साफ़ तौर पर जानकारी मिल सके.

Polymer रोडमैप, q1 में बीटा, q2 में 1.0

0.8 की झलक अब GitHub पर एक ब्रांच के तौर पर उपलब्ध है. हालांकि, इसे अब भी बहुत सक्रिय तौर पर डेवलप किया जा रहा है और इसके दस्तावेज़ों की कमी है. 0.9 के आधिकारिक बीटा को Q1 2015 के लिए प्लान किया गया है, जिसमें 1.0 को Q2 में कभी लॉन्च किया जाएगा.

प्रयोग खत्म हो गया है

Polymer में हाल ही में हुए सभी बदलावों के साथ, इसके पीछे की टीम यह काम कर रही है कि वेब कॉम्पोनेंट को हर डेवलपर के स्टैक का अहम हिस्सा बनाया जा सके. अगर आपको वेब कॉम्पोनेंट की जानकारी नहीं है, तो इन टेक्नोलॉजी के बारे में जानें और इनके बारे में जानें. अगर आपने पहले से ही कॉम्पोनेंट और पॉलिमर के साथ काम करना शुरू कर दिया है, तो आने वाला समय वाकई अच्छा होगा. सभी नए अपडेट के लिए, Polymer ब्लॉग पर नज़र बनाए रखें. साथ ही, सवाल या टिप्पणी करने के लिए, Polymer से जुड़े ईमेल पाने वाले लोगों की सूची में साइन अप करें. हैकिंग के लिए शुभकामनाएं!