बिल्ड की बुनियादी बातें

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

इस सेक्शन में, बिल्ड और बिल्ड सिस्टम बनाने के इतिहास और बुनियादी बातों के बारे में बताया गया है. इसमें, Bazel को बनाने के दौरान लिए गए डिज़ाइन से जुड़े फ़ैसलों के बारे में भी बताया गया है. अगर आपको Bazel, Buck, और Pants जैसे आर्टफ़ैक्ट-आधारित बिल्ड सिस्टम के बारे में पता है, तो इस सेक्शन को छोड़ा जा सकता है. हालांकि, यह समझने के लिए यह एक मददगार खास जानकारी है कि आर्टफ़ैक्ट-आधारित बिल्ड सिस्टम, बड़े पैमाने पर काम करने के लिए क्यों बेहतर होते हैं.

  • बिल्ड सिस्टम क्यों ज़रूरी है?

    अगर आपने पहले कभी बिल्ड सिस्टम का इस्तेमाल नहीं किया है, तो यहां से शुरुआत करें. इस पेज पर, बिल्ड सिस्टम का इस्तेमाल करने की वजह बताई गई है. साथ ही, यह भी बताया गया है कि जब आपका संगठन कुछ डेवलपर से ज़्यादा बढ़ने लगता है, तो कंपाइलर और बिल्ड स्क्रिप्ट सबसे सही विकल्प क्यों नहीं होते.

  • टास्क-आधारित बिल्ड सिस्टम

    इस पेज पर, टास्क-आधारित बिल्ड सिस्टम (जैसे, Make, Maven, और Gradle) और उनसे जुड़ी कुछ चुनौतियों के बारे में बताया गया है.

  • आर्टफ़ैक्ट-आधारित बिल्ड सिस्टम

    इस पेज पर, टास्क-आधारित बिल्ड सिस्टम की समस्याओं के जवाब में, आर्टफ़ैक्ट-आधारित बिल्ड सिस्टम के बारे में बताया गया है.

  • डिस्ट्रिब्यूटेड बिल्ड

    इस पेज पर, डिस्ट्रिब्यूटेड बिल्ड या ऐसे बिल्ड के बारे में बताया गया है जो आपके लोकल मशीन के बाहर एक्ज़ीक्यूट किए जाते हैं. इसके लिए, संसाधनों और बिल्ड के नतीजों को शेयर करने के लिए, ज़्यादा मज़बूत बुनियादी ढांचे की ज़रूरत होती है. (यहीं असली जादू होता है!)

  • डिपेंडेंसी मैनेजमेंट

    इस पेज पर, बड़े पैमाने पर डिपेंडेंसी से जुड़ी कुछ मुश्किलों और उन मुश्किलों से निपटने की रणनीतियों के बारे में बताया गया है.