स्रोत कोड को मशीन कोड में बदलने के लिए प्रोग्रामर कंपाइलर का उपयोग करते हैं।
कंप्यूटर बाइनरी में लिखी गई मशीनी भाषा से कमांड पढ़ते हैं, यानी शून्य और एक के लंबे तार। जबकि कंप्यूटर इस भाषा को कुशलता से पढ़ सकते हैं, अधिकांश मानव प्रोग्रामर नहीं कर सकते। इसीलिए प्रोग्रामर एक प्रोग्रामिंग भाषा में काम करते हैं जिसे वे समझ सकते हैं, जिसे वे मशीनी भाषा में अनुवाद करते हैं जिसे कंप्यूटर समझ सकता है। जबकि कई नई भाषाएं दुभाषियों का उपयोग करती हैं जो प्रोग्राम के चलने पर एक से दूसरे में अनुवाद करते हैं, पुराने प्रोग्रामिंग भाषाएं उन कम्पाइलरों का उपयोग करती हैं जिन्होंने यह अनुवाद पूरी तरह से कंप्यूटर द्वारा निष्पादित किए जाने से पहले किया था कार्यक्रम।
लाभ: स्व-निहित और कुशल
संकलित कार्यक्रमों का एक प्रमुख लाभ यह है कि वे स्व-निहित इकाइयाँ हैं जो निष्पादित होने के लिए तैयार हैं। क्योंकि वे पहले से ही मशीन भाषा बायनेरिज़ में संकलित हैं, कोई दूसरा एप्लिकेशन या पैकेज नहीं है जिसे उपयोगकर्ता को अप-टू-डेट रखना है। यदि कोई प्रोग्राम Windows के लिए x86 आर्किटेक्चर पर संकलित किया गया है, तो अंतिम उपयोगकर्ता को केवल x86 आर्किटेक्चर पर चलने वाले Windows ऑपरेटिंग सिस्टम की आवश्यकता होती है। इसके अतिरिक्त, एक पूर्व-संकलित पैकेज वास्तविक समय में स्रोत कोड संकलित करने वाले दुभाषिए की तुलना में तेजी से चल सकता है।
दिन का वीडियो
नुकसान: हार्डवेयर विशिष्ट
चूंकि एक कंपाइलर स्रोत कोड को एक विशिष्ट मशीन भाषा में अनुवाद करता है, इसलिए प्रोग्राम को होना चाहिए विशेष रूप से ओएस एक्स, विंडोज या लिनक्स के लिए संकलित, साथ ही विशेष रूप से 32-बिट या 64-बिट. के लिए वास्तुकला। एक प्रोग्रामर या सॉफ्टवेयर कंपनी के लिए उत्पाद को व्यापक संभव दर्शकों तक पहुंचाने की कोशिश कर रहे हैं, इसका मतलब है कि एक ही एप्लिकेशन के लिए स्रोत कोड के कई संस्करणों को बनाए रखना। इसके परिणामस्वरूप स्रोत कोड रखरखाव पर अधिक समय व्यतीत होता है और अद्यतन जारी होने पर अतिरिक्त परेशानी होती है।
लाभ: हार्डवेयर अनुकूलन
एक विशिष्ट हार्डवेयर पैकेज में बंद होने के बावजूद इसके डाउनसाइड्स हैं, एक प्रोग्राम को संकलित करना भी इसके प्रदर्शन को बढ़ा सकता है। प्रोग्राम पर चलने वाले हार्डवेयर के विवरण के संबंध में उपयोगकर्ता कंपाइलर्स को विशिष्ट विकल्प भेज सकते हैं। यह संकलक को मशीनी भाषा कोड बनाने की अनुमति देता है जो अधिक सामान्य कोड के विपरीत, निर्दिष्ट हार्डवेयर का सबसे कुशल उपयोग करता है। यह उन्नत उपयोगकर्ताओं को अपने कंप्यूटर पर प्रोग्राम के प्रदर्शन को अनुकूलित करने की भी अनुमति देता है।
नुकसान: समय संकलित करें
कंपाइलर होने की कमियों में से एक यह है कि इसे वास्तव में सोर्स कोड संकलित करना चाहिए। जबकि छोटे प्रोग्राम जिन्हें कई नौसिखिए प्रोग्रामर कोड संकलित करने में बहुत कम समय लेते हैं, बड़े एप्लिकेशन सूट को संकलित करने में काफी समय लग सकता है। जब प्रोग्रामर के पास करने के लिए कुछ नहीं होता है, लेकिन कंपाइलर के समाप्त होने की प्रतीक्षा करते हैं, तो यह समय बढ़ सकता है—विशेषकर के दौरान विकास चरण, जब कार्यक्षमता का परीक्षण करने और समस्या निवारण के लिए कोड को संकलित करना होता है गड़बड़ियां