एक मौलिक प्रकार और एक वस्तु के बीच की सीमा धुंधली है और अक्सर कृत्रिम रूप से पेश की जाती है। उदाहरण के लिए, सी में एक संरचना केवल रिकॉर्ड का एक गुच्छा है, बस एक व्युत्पन्न गैर-वस्तु प्रकार है। सी ++ में, एक संरचना एक वर्ग है जिसमें सभी क्षेत्रों में सार्वजनिक, एक वस्तु है। फिर भी, सी ++ लगभग पूरी तरह से पीछे सी के साथ संगत है ... सीमा यहां वास्तव में नरम है।
प्रोटोटाइप-आधारित प्रोग्रामिंग के लिए आपको रनटाइम पर ऑब्जेक्ट्स को म्यूट करने की आवश्यकता होती है। उन्हें नरम टाइप का होना चाहिए क्योंकि रनटाइम पर प्रत्येक परिवर्तन, एक प्रकार का एक वर्ग दूसरे में बदलता है - इसका प्रकार बदलता है।
यद्यपि आप मौलिक और व्युत्पन्न गैर-वस्तु प्रकारों को स्थिर रख सकते हैं। लेकिन यह एक अजीब विषमता का परिचय देता है, वस्तुएं नरम-टाइप की जाती हैं, गैर-वस्तुएं स्थिर-टाइप की जाती हैं, और दोनों के बीच एक कठोर बारियर स्थापित होना चाहिए। क्या आपको एक संरचना को आकार देने में सक्षम होना चाहिए? एक स्ट्रिंग? क्या संख्या एक वर्ग या एक मौलिक प्रकार, या मूलभूत प्रकारों का एक समूह होना चाहिए, int / float / bignum / etc?
इस यूनिफॉर्म को सीखना, उपयोग करना और लिखना केवल अधिक स्वाभाविक और आसान है, सभी प्रकार के परिवर्तनशील हैं या रनटाइम के दौरान कोई प्रकार परस्पर भिन्न नहीं हैं। यदि आप केवल एक ही प्रकार (ऑब्जेक्ट) घोषित करते हैं, तो आप दोनों दुनिया के सिरदर्द और समस्याओं को समाप्त कर सकते हैं।
स्टैटिक-टाइप किया गया है:
- लागू करने के लिए आसान है
- तेज / अधिक कुशल
- सुरक्षित
- अमूर्तता के कारण बड़ी प्रणालियों को बनाए रखना / दस्तावेज़ करना आसान है।
डायनामिक-टाइप है:
- में लिखने के लिए तेज़
- अधिक संक्षिप्त
- भाषा सीखना आसान
- डिज़ाइन त्रुटियों के लिए अधिक क्षमा करना।
दोनों को सम्मिश्रित करके तुम बहुत त्याग करते हो।
- कार्यान्वयन पिछले दो की तुलना में कठिन हो जाता है।
- गति निर्भर करती है कि क्या आप नरम प्रकारों का उपयोग करते हैं या नहीं ... यदि आप करते हैं, तो यह कम है, यदि आप नहीं करते हैं, तो भाषा को बिल्कुल क्यों चुनें?
- प्रकार सुरक्षा सभी ऑब्जेक्ट प्रकारों के लिए विंडो से बाहर है।
- एक प्रकार के मोर्फ्स का दूसरे में अनुसरण करना एक बहुत मुश्किल काम है। यह दस्तावेज - बहुत कठिन।
- आपको अभी भी सभी बहीखाते को मौलिक प्रकारों के साथ करने की आवश्यकता है, जो संक्षिप्तता और लेखन गति को मारता है
- भाषा जटिलता किसी भी "विशिष्ट" लोगों की तुलना में अधिक (सीखने में अधिक कठिन) है,
- डायनामिक-टाइप का "क्षमा" करने के लिए बेमेल विशेषता प्रकारों में कुछ बहुत मुश्किल त्रुटियों के लिए प्रवृत्ति द्वारा प्रतिस्थापित किया जाता है।