नोड-वेबकिट बनाम इलेक्ट्रॉन [बंद]


81

हम निर्मित क्रॉस प्लेटफॉर्म डेस्कटॉप एप्लिकेशन की योजना बना रहे हैं। हमने पाया कि नोड-वेबकिट हमारे लिए एक आदर्श विकल्प है। लेकिन गिटहब ने नोड-वेबकिट का उपयोग करने के बजाय इलेक्ट्रॉन नामक अपना ढांचा विकसित किया ।

उनके बीच क्या अंतर है?


2
लेट्रॉन बनाम एन डब्ल्यू जे (अप्रैल'17)। Stackoverflow प्रश्न E: 2,630 बनाम N: 269 , Github पुल अनुरोधों E: 102 बनाम N: 6 , इलेक्ट्रॉन बनाम NW.js पर बनाए गए ऐप्स और अंत में Google ट्रेंड्स - इलेक्ट्रॉन बेहतर विकल्प लगते हैं।
किंजलोम

मैंने 'nw.js' को चुना है क्योंकि मैं इसे केवल अपने 'index.html' पर बता सकता हूँ और यह काम करता है। 'Nw.js' के साथ मुझे ऐसा लगता है कि मैं एक ब्राउज़र के लिए प्रोग्राम कर रहा हूँ, जिसमें 'node.js' के बजाय 'node.js' के साथ एक ब्राउज़र जोड़ा गया है, जिसमें 'इलेक्ट्रॉन' के शीर्ष दृष्टिकोण पर बोल्ट लगा है - और मेरी राय में यह बेहतर प्रतिमान है और दृष्टिकोण।
डैनियल सोकोलोस्की

जवाबों:


79

इलेक्ट्रॉन में नोड-वेबकिट के साथ अंतर को समझाने वाला एक पेज है:

https://github.com/atom/electron/blob/master/docs/development/atom-shell-vs-node-webkit.md

नोड-वेबकिट की तरह, इलेक्ट्रॉन जावास्क्रिप्ट और HTML के साथ डेस्कटॉप अनुप्रयोगों को लिखने के लिए एक मंच प्रदान करता है, और वेब पृष्ठों में निम्न स्तर की प्रणाली तक पहुंच प्रदान करने के लिए नोड एकीकरण है।

लेकिन दो परियोजनाओं के बीच बुनियादी अंतर भी हैं जो इलेक्ट्रॉन को नोड-वेबकिट से पूरी तरह से अलग उत्पाद बनाते हैं:

1 - आवेदन की प्रविष्टि

NW.js में एक एप्लिकेशन का मुख्य प्रवेश बिंदु एक वेब पेज या एक जेएस स्क्रिप्ट है। आप package.json में एक html या js फ़ाइल निर्दिष्ट करते हैं और इसे ब्राउज़र विंडो में एप्लिकेशन की मुख्य विंडो (html प्रविष्टि के मामले में) या स्क्रिप्ट निष्पादित होने पर खोला जाता है।

जबकि इलेक्ट्रॉन में, प्रवेश बिंदु एक जावास्क्रिप्ट स्क्रिप्ट है, सीधे URL प्रदान करने के बजाय, आपको मैन्युअल रूप से एक ब्राउज़र विंडो बनाने की जरूरत है और उसमें संबंधित एपीआई के साथ html फ़ाइल लोड करना होगा। आपको यह भी देखना होगा कि एप्लिकेशन को कब छोड़ना है, यह तय करने के लिए विंडो इवेंट्स को सुनना होगा।

तो इलेक्ट्रॉन Node.js रनटाइम की तरह अधिक काम करता है, और API अधिक निम्न स्तर के होते हैं, आप फ़ैंटम जैसे वेब परीक्षण उद्देश्य के लिए इलेक्ट्रॉन का उपयोग भी कर सकते हैं,

2 - बिल्ड सिस्टम

पूरे क्रोमियम के निर्माण की जटिलता से बचने के लिए, क्रोम क्रोमियम की सामग्री एपीआई तक पहुंचने के लिए लिबक्रोमियमकंटेंट का उपयोग करता है, लिबक्रोमियमकंटेंट एक एकल, साझा पुस्तकालय है जिसमें क्रोमियम सामग्री मॉड्यूल और इसकी सभी निर्भरताएं शामिल हैं। इसलिए उपयोगकर्ताओं को एटम-शेल बनाने के लिए एक शक्तिशाली मशीन की आवश्यकता नहीं है।

3 - नोड एकीकरण

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

4 - बहु-संदर्भ

यदि आप एक अनुभवी नोड-वेबकिट उपयोगकर्ता हैं, तो आपको नोड संदर्भ और वेब संदर्भ की अवधारणा से परिचित होना चाहिए, इन अवधारणाओं का आविष्कार किया गया था क्योंकि नोड-वेबकिट कैसे लागू किया गया था।

नोड के बहु-संदर्भ सुविधा का उपयोग करके, इलेक्ट्रॉन वेब पृष्ठों में एक नया जावास्क्रिप्ट संदर्भ पेश नहीं करता है।

स्रोत कोड सुरक्षा

इलेक्ट्रॉन आसार के साथ अपने अनुप्रयोगों को पैकेजिंग कर रहा है , जिसमें अनुप्रयोगों का असुरक्षित स्रोत कोड है। यह एप्लिकेशन 1 के लिए आवेदन 2 को निकालने और कमजोर लिपियों को इंजेक्ट करने के लिए संभव बनाता है, बिना उपयोगकर्ता को यह जानने के बिना। आप एक उदाहरण के लिए स्लैक ऐप में हेरफेर करने के तरीके को देखने के लिए GitHub पर इस परियोजना की जांच कर सकते हैं । अभी तक, इलेक्ट्रॉन टीम के पास सोर्स कोड प्रोटेक्शन के लिए समर्थन को लागू करने की कोई योजना नहीं है

NW.js ने अपने स्रोत कोड को संरक्षित बायनेरिज़ के संकलन के लिए समर्थन में बनाया है


3
अब नोड-वेबकिट का नाम बदलकर NW
Marwen Trabelsi

70
यह इलेक्ट्रॉन के प्रति थोड़ा पक्षपाती हो सकता है क्योंकि यह लेख इलेक्ट्रॉन के रेपो से आया है।
gbmhunter

7
nw.js Chrome ऐप्स आउट-ऑफ-द-बॉक्स चला सकते हैं। यह उन कई प्रोग्रामरों के लिए मूल्यवान है जिनके क्रोम वेबस्टोर पर ऐप जल्द ही अनाथ हो जाएंगे।
marlar

16
मैंने वास्तव में हाल ही में दोनों का उपयोग करने की कोशिश की, और मैंने इसके बारे में एक ब्लॉग पोस्ट लिखा । मैंने पाया कि nw.js वास्तव में सरल और इलेक्ट्रॉन की तुलना में उपयोग करने में आसान है। कुछ वेब पेजों को लेना और उन्हें nw.js में छोड़ देना और जाना आसान है। इलेक्ट्रॉन सेटअप के लिए गड़बड़ है और उनकी बहु-प्रक्रिया डिजाइन का मतलब है कि आपको सीधे-आगे सामान करने के लिए हुप्स के माध्यम से कूदना होगा। इलेक्ट्रॉन में एक बहुत अधिक समृद्ध प्लेटफॉर्म एकीकरण एपीआई है, हालांकि, आप अपने आवेदन में अधिक व्यापक रूप से देशी मैक / विंडोज / लिनक्स सुविधाओं का उपयोग करने की अनुमति देते हैं।
मिंग-यी Iu

3
मैंने भी पहली बार Node.js ब्राउज़र को Node.js के साथ डिज़ाइन किया है। इसमें बहुत अधिक डिज़ाइनर और आसान काम किया गया है जो इलेक्ट्रॉन के साथ Node.js के दृष्टिकोण की तुलना में काम करने में आसान है। NW.js के साथ मैं ब्राउज़र के लिए कोडिंग कर रहा हूं, इलेक्ट्रॉन के साथ मैं Node.js. के लिए कोडिंग कर रहा हूं
डैनियल सोकोलोस्की
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.