जैसा कि हम जानते हैं कि किसी भी भाषा में प्रोग्रामिंग एक वैरिएबल की घोषणा के साथ शुरू होती है जिसके बाद उसकी परिभाषा और तर्क कार्यान्वयन होता है। इसलिए यह जानना सबसे महत्वपूर्ण कारकों में से एक है कि किसी भी प्रोग्रामिंग भाषा में कोडिंग शुरू करने से पहले उसे कैसे घोषित किया जाए।
अब अगर हम सी # भाषा का उदाहरण लेते हैं तो भाषा में प्रगति के साथ परिवर्तनशील घोषणा में परिवर्तन होता है। जैसा कि सी # के पूर्व संस्करण में लिखे गए सभी कोड को संकलन समय पर ही मान्य किया गया था, जिसने इसे स्टेटिक टाइप की गई भाषा के रूप में बनाया जहां var कीवर्ड का उपयोग करके चर घोषित किए जा रहे हैं। C#4.0 के बाद डायनामिक का परिचय होता है जहां सिंटैक्स का सत्यापन या त्रुटियों की जांच केवल रन टाइम पर होती है, इसके साथ ही यह वैरिएबल की घोषणा के लिए कीवर्ड डायनामिक भी पेश करता है।
वर और डायनामिक के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।
Sr. नहीं. | कुंजी | <वें शैली ="पाठ-संरेखण:केंद्र;">वर <वें शैली="पाठ्य-संरेखण:केंद्र;">गतिशीलवें>||
---|---|---|---|
1 | परिभाषा | var एक सांख्यिकीय रूप से टाइप किए गए चर के रूप में जाना जाता है जिसका अर्थ है कि इन चरों के डेटा प्रकार का संकलन समय पर अनुमान लगाया जाता है जो कि उस प्रकार के मान के आधार पर किया जाता है जिसके साथ इन चरों को प्रारंभ किया जाता है। | दूसरी ओर डायनेमिक डायनामिक रूप से टाइप किए गए वेरिएबल हैं जो स्पष्ट रूप से दर्शाता है कि उनका प्रकार रन-टाइम पर अनुमानित है न कि संकलन समय पर। |
2 | संस्करण | सी तेज भाषा में var C#3.0 में पेश किया गया है | दूसरी ओर डायनामिक को बाद में C#4.0 में पेश किया गया |
3 | प्रकार | var के मामले में, वेरिएबल के प्रकार की पहचान संकलन समय पर कंपाइलर द्वारा की जाती है। | दूसरी ओर डायनेमिक के मामले में वेरिएबल के प्रकार को कंपाइलर द्वारा रन टाइम पर ही पहचाना जाता है। |
4 | घोषणा | var के मामले में वेरिएबल को इसकी घोषणा के समय इनिशियलाइज़ किया जाता है ताकि कंपाइलर को वेरिएबल के प्रकार को उसके द्वारा असाइन किए गए मान के अनुसार पता चल सके। | दूसरी ओर डायनेमिक के मामले में घोषणा के समय इनिशियलाइज़ होना अनिवार्य नहीं है। |
5 | अपवाद | यदि घोषणा के समय प्रारंभ नहीं किया गया है तो var के साथ वेरिएबल डिफाइन एक अपवाद फेंकता है। | जबकि डायनेमिक के साथ वेरिएबल डिफाइन कोई अपवाद नहीं फेंकता है, अगर वे अपनी घोषणा के समय इनिशियलाइज़ नहीं होते हैं |