Programming Language एक तरह का लैंग्वेज है जो computers या digital systems में use होता है | इस लैंग्वेज की मदद से हम कंप्यूटर में instructions का एक set तैयार कर सकते हैं जिन्हें हम program कहते हैं | इसी लैंग्वेज से ही कंप्यूटर में सॉफ्टवेयर design एंड code किये जाते हैं | ये कई तरह के होते हैं जिन्हें प्रोग्रामर अपने समझ के हिसाब से प्रोग्राम बनाने में इस्तेमाल करते हैं | सभी प्रोग्रामिंग लैंग्वेज का अपना स्टैण्डर्ड होता है | सभी प्रोग्रामिंग लैंग्वेज के अपने define किये हुए syntax और प्रोग्राम procedure होते हैं जो उस प्रोग्रामिंग लैंग्वेज में प्रोग्राम कैसे design एवं code करना है ये बताते हैं | आज कल बहुत से प्रोग्रामिंग लैंग्वेज जैसे C, C++, Basic, Java, Python उपलब्ध हैं जिनका इस्तेमाल करके आप कोई प्रोग्राम बना सकते हैं | कंप्यूटर में mainly तीन तरह के लैंग्वेज होते हैं |
(a) Machine Language
(b) Assembly Language
(c) High-Level Language
(a) Machine Language:
machine level language वह लैंग्वेज है जो कंप्यूटर में low level पर work करता है अर्थात बाइनरी level पर work करता है कोई भी instruction 0 और 1 के फॉर्म में होता है इसमें इनपुट और आउटपुट दोनों 0 और 1 के फॉर्म में ही फ्लो होते हैं इसमें कंप्यूटर के कंपोनेंट्स के बीच communication direct होता हैं इसमें किसी दूसरे की मध्यस्थता की जरुरत नहीं पड़ती है |
इस लैंग्वेज में लिखे हुए प्रोग्राम बहुत फ़ास्ट और high performance के होते हैं | इसमें ट्रांसलेटर की आवश्यकता नहीं पड़ती है | इस लैंग्वेज में लिखे हुए प्रोग्राम कंप्यूटर डायरेक्ट समझता है |
इस लैंग्वेज में प्रोग्राम लिखना बहुत कठिन है और बहुत सी गलतियों की गुंजाइश रहती है | इसमें मेमोरी डायरेक्ट manipulate होती है इसलिए हर एक मेमोरी लोकेशन को याद करना पड़ता है जो काफी कठिन है इसमें कोई फंक्शन नहीं होता है इसमें कमांड्स भी कम होते हैं इसमें प्रोग्राम में कोई error आने पर उसको maintain और debug करना बहुत कठिन है इसमें logic design करना कठिन होता है |
(b) Assembly Language:
Assembly language machine language से थोडा higher लैंग्वेज है | इस लैंग्वेज की विशेषता मशीन लैंग्वेज से ज्यादा है | इस लैंग्वेज में कोड मशीन लैंग्वेज की तुलना में अधिक readable और understandable होता है | यह लैंग्वेज एक विशेष प्रकार का terms या symbol use करता है जिन्हें mnemonics कहते हैं ये mnemonics किसी फंक्शन या ऑपरेशन को denote करते हैं चूँकि कंप्यूटर केवल बाइनरी नंबर्स को समझता है इस लिए इसमें एक assembler program होता है जो असेंबली कोड को बाइनरी में कन्वर्ट करता है
इसमें कोड लिखना मशीन लैंग्वेज की तुलना में fast और अधिक efficient होता है इसमें error आने की संभावना मशीन लैंग्वेज की तुलना में कम होता है इसमें कोड की readability अच्छी होती है जिससे errors की संख्या मशीन लैंग्वेज की तुलना में कम हो जाता है
असेंबली लैंग्वेज machine dependent होता है अर्थात किसी कंप्यूटर में असेंबली लैंग्वेज के द्वारा लिखा हुआ प्रोग्राम किसी अन्य कंप्यूटर में जरुरी नहीं की चले | इसमें mnemonics को याद करना कठिन है | इसमें प्रोग्राम लिखते समय mnemonics को अच्छे से arrangement करना कठिन कार्य होता है |
(c) High Level Language:
इस तरह के लैंग्वेज कंप्यूटर के सबसे एडवांस लैंग्वेज होते हैं इसमें syntax काफी कुछ normal लैंग्वेज जैसा होता है इसमें use होने वाले keywords आम भाषा के जैसे ही होते हैं चुंकि इस लैंग्वेज से लिखे हुए कोड डायरेक्ट मशीन से कम्यूनिकेट नहीं करते हैं इसलिए इनको मशीन कोड में convert करने के लिए इन languages में Compilers और Interpreters का use होता है Compilers और Interpreters high level लैंग्वेज को मशीन लैंग्वेज अर्थात बाइनरी कोड में change कर देते हैं | C, C++, Java, C#, Visual Basic, Python High level Language के examples हैं |
चुंकि इसमें लिखे हुए प्रोग्राम को Compilers या Interpreters द्वारा machine code में convert किया जाता है इसलिए इसमें लिखे हुए प्रोग्राम मशीन लैंग्वेज और असेंबली लैंग्वेज की तुलना में slow होते हैं |
इन languages में प्रोग्राम लिखना काफी आसान होता है | इनमे use होने वाले syntax आमभाषा से काफी मिलता जुलतें हैं इसलिए इनको याद करना भी बहुत आसान होता है और इसमें गलतियों की संभावना कम होती है |
Source Code क्या होता है | What is source code
किसी प्रोग्राम को बनाने के लिए computer programmer द्वारा प्रोग्रामिंग लैंग्वेज का इस्तेमाल करके लिखा हुआ कोड ही source code कहलाता है | इसमें इस्तेमाल किया हुआ programming लैंग्वेज high level language या assembly language हो सकता है | सोर्स कोड मशीन dependent नहीं होते हैं | अर्थात high level लैंग्वेज का इस्तेमाल करके एक कंप्यूटर में लिखे हुए कोड दुसरे मशीन में भी चल जाते हैं | आजकल कई high level लैंग्वेज उपलब्ध हैं जैसे C, C++ जिनको use करके program लिखे जाते हैं |
Object Code क्या होता है | What is object code
high level language से लिखे हुए कोड को Compilers या Interpreters द्वारा convert किया हुआ कोड ही ऑब्जेक्ट कोड कहलाता है सामान्यतः ऑब्जेक्ट कोड ही मशीन कोड होता है | इसमें न केवल प्रोग्रामिंग लैंग्वेज से related कोड होते हैं बल्कि उनको linker द्वारा अन्य लाइब्रेरी files से कैसे लिंक करके एक executable file या लाइब्रेरी file बनाना है इसका भी इनफार्मेशन इस ऑब्जेक्ट कोड में होता है |
Compiler क्या होता है | What is Compiler
Compiler एक या एक से अधिक कंप्यूटर प्रोग्राम होते हैं जो high level language में लिखे हुए Code को low level लैंग्वेज अर्थात बाइनरी level में convert करते हैं | Compiler द्वारा convert किये हुए कोड Compiled Code या Object code कहलाते हैं | जो high level language अपने source code को machine code में convert करने के लिए Compiler का इस्तेमाल करते हैं उन्हें Compiled language कहते हैं | C, C++, ALGOL, BASIC कुछ compiled language के examples हैं | C++ में इस्तेमाल होने वाले gcc, clang, intel c++ compiler, mingw, LLVM etc कुछ compilers के उदाहरण हैं |
Interpreter क्या होता है | What is Interpreter
Interpreter भी एक या एक से अधिक कंप्यूटर प्रोग्राम होते हैं जो high level language में लिखे हुए code को low level language में convert करते हैं interpreter द्वारा convert किये हुए code interpreted code या object code कहलाते हैं जो high level language अपने source code को machine code में convert करने के लिए interpreter का इस्तेमाल करते हैं उन्हें interpreted language कहते हैं | PHP, Python, Perl, Javascript etc कुछ interpreted language के उदाहरण हैं | Zend Engine, CPython, Perlinterp कुछ interpreter के उदाहरण हैं |
कुछ high level language अपने source कोड को machine code में convert करने के लिए compilers और interpreters दोनों का इस्तेमाल करते हैं इस process में interpreter द्वारा source कोड को डायरेक्ट मशीन कोड में convert नहीं किया जाता है बल्कि पहले उसको Intermediate Code में convert करते हैं फिर उसको compilers को दे दिया जाता है | इस intermediate code को byte code कहते हैं |
Compiler और Interpreter में अंतर | Difference between Compilers and Interpreters
compiler पूरे source कोड को एकबार में ही मशीन कोड में convert कर देता है मशीन कोड में convert करते वक्त compiler हर तरह के errors को भी check करता है source कोड को compiler द्वारा मशीन कोड में convert करते वक्त आये हुए errors को Compiling Error कहते हैं इसमें source कोड line by line मशीन कोड में convert होकर execute नहीं होता है बल्कि पूरा source कोड एकबार में ही मशीन कोड में convert हो जाता है और पूरा कोड एकबार में ही execute होता है इसलिए compiled लैंग्वेज में लिखे हुए प्रोग्राम काफी fast होते हैं |
interpreter में source कोड line by line मशीन कोड या assembly कोड में convert होकर execute होते हैं| इसमें source कोड line by line scan होते हैं इसलिए जिस भी line में error आता है वहां error दिख जाता है इसलिए interpreted लैंग्वेज में debugging आसान होता है चुंकि interpreter line by line program को execute करता है इसलिए compiler की तुलना में इसमें program का execution time ज्यादा होता है |
#Programming Language #Compilers #Assemblers #Source Code #Object code