2015-11-06 4 views
89

मैं थोड़ा काम धावक और बंडलर दुनिया के लिए नया हूँ और जैसी चीजों से गुजर रही है, जबकिटास्क धावक (गुल, ग्रंट, आदि) और बंडलर (वेबपैक, ब्राउज़र)। एक साथ क्यों उपयोग करें?

ग्रंट, Gulp, Webpack, Browserify

, मैं महसूस नहीं किया था के बीच ज्यादा अंतर नहीं है उन्हें। दूसरे शब्दों में, मुझे लगता है कि वेबपैक एक कार्य धावक जो कुछ भी कर सकता है वह कर सकता है। लेकिन फिर भी मुझे एक विशाल उदाहरण मिल गए जहां गल्प और वेबपैक का एक साथ उपयोग किया जाता है। मैं कारण क्यों नहीं समझ सका।

इस के लिए नया होने के नाते, मैं गलत दिशा में चीजें ले रहा हूं। यह बहुत अच्छा होगा अगर आप यह बता सकें कि मैं क्या खो रहा हूं। किसी भी उपयोगी लिंक का स्वागत है।

अग्रिम धन्यवाद।

उत्तर

187

Grunt और Gulp वास्तव में कार्य धावक हैं, और उनमें कॉन्फ़िगर संचालित संचालित कार्यों जैसे स्ट्रीम आधारित परिवर्तनों के विपरीत अंतर हैं। प्रत्येक की अपनी ताकत और कमजोरियां होती हैं, लेकिन दिन के अंत में, वे उन कार्यों को बनाने में बहुत मदद करते हैं जिन्हें बड़ी बिल्ड समस्या हल करने के लिए चलाया जा सकता है। अधिकांश समय, उनके पास ऐप के वास्तविक रन-टाइम से कोई लेना-देना नहीं है, बल्कि वे बदलते हैं या वे फ़ाइलों, कॉन्फ़िगरेशन और अन्य चीजों को जगह में डालते हैं ताकि रन टाइम अपेक्षित रूप से काम कर सके। कभी-कभी वे आपके ऐप को चलाने के लिए आवश्यक सर्वर या अन्य प्रक्रियाओं को भी उत्पन्न करते हैं।

Webpack और Browserify पैकेज बंडलर हैं। असल में, वे सभी पैकेज की निर्भरताओं के माध्यम से चलाने के लिए डिज़ाइन किए गए हैं और उनके स्रोत को एक फ़ाइल में जोड़ते हैं (आदर्श) ब्राउज़र में उपयोग किया जा सकता है। वे आधुनिक वेब विकास के लिए महत्वपूर्ण हैं, क्योंकि हम Node.js और v8 कंपाइलर के साथ चलाने के लिए डिज़ाइन किए गए कई पुस्तकालयों का उपयोग करते हैं। फिर, पेशेवर और विपक्ष और विभिन्न कारण हैं जो कुछ डेवलपर एक या दूसरे (या कभी-कभी दोनों!) पसंद करते हैं। आम तौर पर इन समाधानों के आउटपुट बंडलों में संभावित रूप से विशाल बंडल में सही फ़ाइल या मॉड्यूल पर जाने में आपकी सहायता के लिए कुछ प्रकार के बूटस्ट्रैपिंग तंत्र होते हैं।

धावक और बंडलर के बीच धुंधली रेखा यह हो सकती है कि बंडलर अपने रन-टाइम के दौरान जटिल परिवर्तन या trans-pilations भी कर सकते हैं, ताकि वे कार्य करने वाले कई चीजें कर सकें। वास्तव में, ब्राउज़र और वेबपैक के बीच शायद लगभग सौ transformers है जिसका उपयोग आप अपने स्रोत कोड को संशोधित करने के लिए कर सकते हैं। तुलना के लिए, कम से कम 2000 गल्प प्लगइन्स अभी npm पर सूचीबद्ध हैं। तो आप देख सकते हैं कि स्पष्ट हैं (उम्मीद है ...;)) आपके आवेदन के लिए सबसे अच्छा काम करने की परिभाषाएं।

कहा जा रहा है कि, आप वास्तव में एक ही समय में या टंडेम में कार्य-धावक और पैकेज बंडलर दोनों का उपयोग करके एक जटिल परियोजना देख सकते हैं। उदाहरण के लिए, मेरे कार्यालय में, हम अपनी परियोजना शुरू करने के लिए गल्प का उपयोग करते हैं, और वेबपैक वास्तव में एक विशिष्ट गल्प कार्य से चलाया जाता है जो स्रोत बंडल बनाता है जिसे हमें ब्राउज़र में हमारे ऐप को चलाने की आवश्यकता होती है। और क्योंकि हमारा ऐप isomorphic है, हम भी bundle some of the server कोड भी हैं।

मेरी विनम्र राय में, आप इन सभी तकनीकों से परिचित होना चाहेंगे क्योंकि संभावना है कि आप अपने करियर के दौरान सभी को देखेंगे (उपयोग करें)।

+18

एसओ पर सबसे अच्छे उत्तरों में से एक मैंने कभी पढ़ा है और वास्तव में जो मैं खोज रहा था। धन्यवाद। शायद एक ब्लॉग पोस्ट में लिखो? – ajbraus

संबंधित मुद्दे