क्या एकता C # के किसी भिन्न संस्करण का उपयोग करती है, या क्या यह सभी समान है? यह नियमित C # से अलग दिखता है लेकिन इसमें कुछ नियमित C # तत्व होते हैं।
क्या एकता C # के किसी भिन्न संस्करण का उपयोग करती है, या क्या यह सभी समान है? यह नियमित C # से अलग दिखता है लेकिन इसमें कुछ नियमित C # तत्व होते हैं।
जवाबों:
जैसा कि अन्य उत्तरों में कहा गया है कि एकता 4.x मोनो मोनो 2.6 के आधार पर मोनो के संशोधित संस्करण का उपयोग करता है
अधिकांश भाग के लिए, यह .Net 2.0 के साथ संगत है , हालांकि मैं एक मोनो 2.6 विशिष्ट संगतता सूची को ट्रैक करने में कामयाब नहीं हुआ हूं।
यह नियमित C # से अलग दिखता है लेकिन इसमें कुछ नियमित C # तत्व होते हैं।
जैसा कि आपके प्रश्न पर एक टिप्पणी में उल्लेख किया गया है, यह संभवत: भाषा के बजाय एकता की विशेष स्क्रिप्टिंग एपीआई के कारण है।
एक उदाहरण के रूप में, एक विशिष्ट एकता परियोजनाओं में बहुत से कोड मोनोबेहेवियर नामक एक वर्ग के उपवर्गों में निहित हैं। ये ऐसे घटक हैं जो एकता संपादक वातावरण में GameObjects पर गिराए जाते हैं। यह आर्किटेक्चर C # कोड की ओर जाता है जो विशिष्ट C # कोड को अलग दिखता है (मुझे वैसे भी) कई तरीकों से:
व्यावहारिक रूप से, एकता की वर्तमान C # संस्करण में सबसे बड़ी C # भाषा सुविधा मुझे याद आती है जो async और संबंधित कीवर्ड और कार्यक्षमता के लिए समर्थन है। यूनिटी में इसी तरह की अवधारणा कोरटाइन है । ये मुख्य थ्रेड पर निष्पादित होते हैं इसलिए सही async नहीं हैं, लेकिन लंबे समय तक चलने वाले कोड को कई फ़्रेमों पर विभाजित करने की अनुमति देते हैं। निचले स्तर का मल्टीथ्रेडिंग अभी भी समर्थित है।
async
सी # में भी बहु-थ्रेड में async सच नहीं है - यह मुख्य धागे पर भी चलता है। कॉरटाइन्स और एसिंक्स के बीच उपयोग के दृष्टिकोण से सबसे बड़ा अंतर कई बार कोड चलाया जाता है।
एकता 4 में मोनो 2.6 का उपयोग किया गया है, जो कि C # भाषा सहित .NET फ्रेमवर्क का पूर्ण कार्यान्वयन है।
मुझे यकीन नहीं है कि यह अलग कैसे दिखता है, लेकिन ध्यान रखें कि एकता कई भाषाओं का समर्थन करती है, जिनमें से सभी एक ही मोनो रनटाइम के शीर्ष पर काम करती हैं। क्या यह संभव है कि आप यूनिटीस्क्रिप्ट के साथ सी # को भ्रमित कर रहे हैं ?
एकता नियमित C # का उपयोग करती है।
फिर से, जब आप एकता में C # लिखते हैं, तो आप उनके पुस्तकालयों का बहुत उपयोग कर रहे होंगे, लेकिन जहाँ तक मुझे पता है, C # में सब कुछ संभव है एकता में, नीचे सूचीबद्ध मतभेदों के अलावा अन्य संभव है:
विंडोज फॉर्म और एएसपी से संबंधित .Net के अधिक विशिष्ट क्षेत्र एकता के माध्यम से सीमाएं हैं।
जब आप संपादन और संकलन-समय त्रुटियों के लिए विज़ुअल स्टूडियो का उपयोग कर सकते हैं, तो आपको एकता आईडीई में निर्माण और चलाना होगा।
एकता मोनो का उपयोग करती है जो कि .Net का एक खुला स्रोत कार्यान्वयन है जिसका अर्थ है कि मामूली अंतर हैं।
यह सवाल कि क्या एकता द्वारा प्रयुक्त C # संस्करण एक "नियमित" C # से भिन्न है, अन्य पदों द्वारा उत्तर दिया गया है। आप स्पष्ट रूप से एकता में कुछ तत्व है जो इस तरह के एक नियमित संस्करण से अलग हो सकती मैं केवल मामूली अंतर मैंने देखा जब काम पर सी # मैं उपयोग की तुलना साझा करेंगे (विजुअल स्टूडियो 2010 में यानी सी # 4.0 और उच्चतर) और सी #, के लिए पूछ रहे हैं के बाद से जो यह है कि मैं फ़ंक्शन परिभाषाओं में मापदंडों के लिए डिफ़ॉल्ट मानों का उपयोग नहीं कर सकता। वह यह है कि आपको C # के नए संस्करण का उपयोग करने के लिए अपनी परियोजना को अधिक सावधानी से स्थापित करना होगा। आगे की व्याख्या के लिए इस लिंक को देखें ।
संपादित करें: मैं इस उत्तर को तब से छोड़ता हूं जब तक मुझे पता है कि यह गलतफहमी है जो काफी लोगों को होती है।