2015-12-07 2 views
26

मुझे रोस्लिन के बारे में थोड़ा उलझन है।विज़ुअल स्टूडियो 2015 के साथ रोस्लिन सी # कंपाइलर का उपयोग कैसे करें?

मैंने जो किया है: मैंने बनाम 2015 समुदाय संस्करण स्थापित किया है और extensibilty> डाउनलोड कंपाइलर प्लेटफ़ॉर्म एसडीके में डाउनलोड किया है।

इसलिए मैंने एक सरल कंसोल एप्लिकेशन बनाया: हैलो वर्ल्ड उदाहरण।

ठीक है अब मैं बनाम 5 डिफ़ॉल्ट और एक roslyn के बीच सी # कंपाइलर चुनने की उम्मीद कर रहा हूं ..., लेकिन मुझे ऐसा विकल्प नहीं मिला है। तो मेरा पहला सवाल है: सी # कंपाइलर का संस्करण कैसे चुनें?

दूसरा मैंने मास्टर-रोस्लिन डाउनलोड किया है और मैं बिल्ड करता हूं, फिर मुझे csc.exe मिला, अच्छी तरह से अजीब बात यह है कि अगर मैं exe को लॉन्च करता हूं तो मुझे सी # कंपाइलर संस्करण 42.42.42.42 मिलता है। ???? सही?

फिर मैंने कुछ ट्यूटोरियल्स का पालन किया है, लेकिन सभी उद्देश्य मुझे: टेक्स्ट फ़ाइल या स्ट्रिंग वर्र्स से स्रोत लोड करने और वाक्यविन्यास पेड़ का विश्लेषण या परिवर्तन करने के लिए, फिर var को संकलित करें।

खैर इस बिंदु मैं उलझन में हूँ पर

... तो:

वास्तव में क्या Roslyn है? एक मेटा कंपाइलर? इसका मतलब यह है कि मैं प्रतिबिंब की तरह रनटाइम पर अपना कोड बदल सकता हूं? दूसरा: डिफ़ॉल्ट सीएससी के साथ बनाम2015 के साथ संकलित कैसे हो सकता है या Roslyn चुन सकते हैं? तीसरा: यदि मैं रोस्लिन का एक कस्टम संस्करण बनाता हूं तो मैं Vs2015 का उपयोग करके अपने स्रोत को कैसे संकलित कर सकता हूं? जो जानते हैं कि csc.exe roslyn है? कोई मदद या कमांड लाइन कोडनाम को मुद्रित नहीं करती है।

धन्यवाद

उत्तर

36

तो यह है कि आप कुछ सवाल मिल गया है दिखता है:

रोसलिन क्या है?

रोज़लीन विजुअल स्टूडियो 2015 के अंदर नया डिफॉल्ट कंपाइलर है। यदि आप विजुअल स्टूडियो 2015 के भीतर एप्लिकेशन बना रहे हैं और चला रहे हैं, तो उन्हें रोज़लिन कंपेलर के साथ संकलित किया जा रहा है। आपको सभी नई सी # 6 सुविधाओं का लाभ उठाना होगा जो केवल नए कंपाइलर के भीतर उपलब्ध हैं।

आप VS2015 उपयोग कर रहे हैं, रोसलिन पूरी तरह से पुराने संकलक की जगह है और जहाँ तक मुझे पता है आप वी.एस. 2015 के भीतर पुराने संकलक उपयोग नहीं कर सकते

रोसलिन भी एक मंच है कि आप का निर्माण करने के लिए अनुमति देता है कार्यक्रम जो अन्य कार्यक्रमों को संशोधित, व्याख्या और समझ सकते हैं। यह वास्तव में आपको कोड लिखने का मतलब नहीं है जो स्वयं को संशोधित करता है (हालांकि यह संभवतः एक डिग्री के लिए संभव है)।

आम रोसलिन के लिए उपयोग के मामलों रहे हैं:

  1. बिल्डिंग Code Analyzers कि दृश्य स्टूडियो के भीतर त्रुटियों और चेतावनियों प्रदान करते हैं।
  2. विजुअल स्टूडियो के लिए बिल्डिंग एक्सटेंशन जो स्रोत कोड को समझते हैं।
  3. स्रोत कोड को समझने या चलाने वाले अन्य टूल्स का निर्माण करना। उदाहरण: ScriptCS - सी # कोड के साथ स्क्रिप्टिंग।

इन उद्देश्यों के लिए रोज़लिन का उपयोग करने के लिए, आप NuGet से Microsoft.CodeAnalysis पैकेज खींचें। आप कोड को पार्स करने के लिए इन संकुलों का उपयोग कर सकते हैं, सिंटैक्स पेड़ का विश्लेषण कर सकते हैं, प्रतीकों का विश्लेषण कर सकते हैं या कोड संकलित कर सकते हैं और आईएल उत्सर्जित कर सकते हैं।

आप रोसलिन के बारे में और अधिक जानने में रुचि रखते हैं, मैं शुरू कर दिया है एक श्रृंखला Learn Roslyn Now कहा जाता है कि आप में रुचि हो सकती।

मैं संकलक की जगह कर सकते हैं?

हाँ आप कर सकते हैं, लेकिन मुझे विश्वास नहीं है कि यह उन परिवर्तनों के परीक्षण के बाहर एक अच्छा विचार है जिन्हें आप रोज़लिन में योगदान देना चाहते हैं। आप विज़िट स्टूडियो के भीतर से रोज़लिन को बनाने और चलाने के लिए गिटहब से रोज़लिन को खींच सकते हैं और these instructions का पालन कर सकते हैं।

यदि आप उन निर्देशों का पालन करते हैं, तो आप Roslyn प्रोजेक्ट को F5 के साथ चलाने में सक्षम होंगे। यह विजुअल स्टूडियो का एक नया उदाहरण शुरू करेगा जो आपके कस्टमाइज्ड कंपाइलर का उपयोग कर रहा है। इस प्रकार माइक्रोसॉफ्ट के बाहर के लोग अब से कंपाइलर में विशेषताओं का योगदान देंगे। (पहले आप विजुअल स्टूडियो में अपने कस्टम कंपाइलर को तैनात नहीं कर सके, लेकिन उन्होंने विजुअल स्टूडियो अपडेट 1 में तय किया)।

+0

हाँ मैं यूट्यूब चैनल देखता हूं, बहुत अच्छा! कृपया उदाहरण के साथ जारी रखें और रोसलीन और प्रैक्टिकल उपयोग के बारे में आपका वीडियो ... धन्यवाद :), लेकिन आप जानते हैं कि मास्टर संस्करण में 42.42.42.42 मुद्रित संस्करण के रूप में क्यों है? कोई अच्छा कारण? thx – LXG

+1

रोज़लिन पर जोशवर्टी के यूट्यूब चैनल का लिंक यहां दिया गया है। वास्तव में बहुत दिलचस्प और उसके द्वारा महान प्रयास। https://www.youtube.com/watch?v=wXXHd8gYqVg&list=PLxk7xaZWBdUT23QfaQTCJDG6Q1xx6uHdG – RBT

+0

* "आप NuGet से Microsoft.CodeAnalysis संकुल को खींचते हैं।" * तो यह मुझे भ्रमित कर रहा है। मैंने सोचा था कि वीएस 2015 के साथ पहले से ही शामिल होना चाहिए, लेकिन मुझे लगता है कि यह नहीं है। –

9

रोसलिन दो बातें है:

  1. आप वाक्य रचना के पेड़ और प्रतीकों की तरह "संकलक बातें" देखने की सुविधा देता है कि एक एपीआई।
  2. एक नया csc.exe जो # 1 के ऊपर लागू किया गया है। यदि आपने ऐसा नहीं किया

आप संकलक में परिवर्तन बनाने के लिए और का उपयोग करें कि निर्माण करने के लिए चाहते हैं, these instructions पर एक नज़र डालें। कुछ अलग-अलग तरीके हैं जिन्हें आप csc.exe का अपना संस्करण बना सकते हैं और उसके बाद कुछ बनाने के लिए इसका उपयोग कर सकते हैं। लेकिन जैसा कि आप ढूंढ रहे हैं, वहां कोई "पसंद" संवाद नहीं है।

1

रोज़लिन विजुअल स्टूडियो 2015 का डिफ़ॉल्ट कंपाइलर है। इसलिए, यदि आप VS2015 इंस्टॉल करते हैं तो आप पहले से ही Roslyn का उपयोग कर रहे हैं।

रोज़लिन .NET कंपाइलर प्लेटफ़ॉर्म के लिए कोडनाम है, और यह ओपन-सोर्स सी # और विजुअल बेसिक कंपाइलर्स प्रदान करता है। यह परियोजना github पर उपलब्ध है।

संबंधित मुद्दे