प्रोग्रामिंग में डेटा प्रकार उस डेटा के प्रकार और प्रकृति को दर्शाता है जिसे उपयोगकर्ता उपयोग करना चाहता है। यह डेटा प्रकार ही है जिसे कंपाइलर या इंटरप्रेटर संभालने वाला है और मुख्य मेमोरी में संबंधित स्टोरेज स्थान प्रदान करता है।
अब डेटा की प्रकृति के आधार पर डेटा प्रकार मुख्य रूप से दो प्रकार के होते हैं: एक मौलिक डेटा प्रकार और दूसरा व्युत्पन्न डेटा प्रकार। प्रोग्रामिंग में इन दोनों डेटा प्रकारों का उपयोग किया जाता है और डेटा पर व्यावसायिक तर्क लागू करते समय दोनों समान रूप से महत्वपूर्ण होते हैं।
मौलिक डेटा प्रकार और व्युत्पन्न डेटा प्रकार के बीच महत्वपूर्ण अंतर निम्नलिखित हैं
| क्र. सं. | मुख्य बिंदु | मौलिक डेटा प्रकार | व्युत्पन्न डेटा प्रकार |
|---|---|---|---|
| 1 | परिभाषा | जैसा कि नाम से पता चलता है, मौलिक डेटा प्रकार वह डेटा प्रकार है जो ठोस है और भाषा द्वारा ही पेश किया गया है यानी इसकी अपनी मौलिक विशेषताएं और गुण हैं साथ ही उन पर ऑपरेशन करने के लिए कुछ मौलिक विधियां हैं। | दूसरी ओर व्युत्पन्न डेटा प्रकार वे डेटा प्रकार हैं जो मौलिक डेटा प्रकारों से बने होते हैं यानी वे मौलिक डेटा प्रकारों से व्युत्पन्न होते हैं और मौलिक डेटा प्रकारों के अलावा कुछ अतिरिक्त या संशोधित गुण रखते हैं। |
| 2 | कार्यान्वयन | किसी भी भाषा में मौलिक डेटा प्रकार ठोस रूप में लागू होते हैं यानी प्रत्येक भाषा में निश्चित मौलिक डेटा प्रकार होते हैं, उदाहरण के लिए C++ में कैरेक्टर, इंटीजर, फ्लोट, और void मौलिक डेटा प्रकार हैं। | दूसरी ओर प्रोग्रामिंग में व्युत्पन्न डेटा प्रकार अमूर्त कार्यान्वयन में लागू होते हैं क्योंकि उनकी परिभाषा उपयोगकर्ता द्वारा परिभाषित की जाती है कि वे किस प्रकार के डेटा से निपटने वाले हैं, उदाहरण के लिए पॉइंटर्स, ऐरे, स्ट्रक्चर और यूनियन व्युत्पन्न डेटा प्रकार हैं। |
| 3 | डेटा | कैरेक्टर डेटा प्रकार वर्णों को स्टोर करने के लिए उपयोग किया जाता है और इसे char, साइन्ड char, अनसाइन्ड char के रूप में वर्गीकृत किया जा सकता है। | दूसरी ओर पॉइंटर्स का उपयोग चर के मान के बजाय चर के पते को स्टोर करने के लिए किया जाता है। |
| 4 | असाइनमेंट | इंटीजर का उपयोग पूर्णांकों (दशमलव अंक नहीं होने वाले) के असाइनमेंट और स्टोरेज के लिए किया जाता है और इसे साइन्ड और अनसाइन्ड के रूप में वर्गीकृत किया जा सकता है। आगे इसे int, short int और long int के रूप में वर्गीकृत किया जाता है। | दूसरी ओर व्युत्पन्न डेटा प्रकार के मामले में ऐरे का उपयोग समान प्रकार के डेटा को रखने के लिए किया जाता है यह कैरेक्टर, इंटीजर, फ्लोट या यहां तक कि उपयोगकर्ता परिभाषित डेटा प्रकार भी हो सकता है। |
| 5 | प्रदर्शन | मौलिक डेटा प्रकार के मामले में केवल डेटा का प्रकार और प्रकृति चिंता का विषय है इसलिए समय जटिलता का कोई मुद्दा नहीं है क्योंकि हम भाषा के ठोस कार्यान्वयन से निपटते हैं। | दूसरी ओर समय जटिलता व्युत्पन्न डेटा प्रकार के मामले में आती है क्योंकि यह मुख्य रूप से उस डेटा पर हेरफेर और तर्क के निष्पादन से संबंधित है जो इसमें स्टोर है। |