2009-04-28 7 views
12

के साथ सी # विकास की व्यवहार्यता हाल ही में, मैं उबंटू लिनक्स में मोनो और मोनो डेवलपमेंट पैकेज में आया था। वे सीएलआई के अनुसार एक .NET रनटाइम रखने का दावा करते हैं। पैकेज को स्वयं स्थापित करने से पहले, मैं निम्नलिखित जानना चाहूंगा:मोनो

  1. मोनो कितना शक्तिशाली है?

  2. क्या मैं लिनक्स के लिए जीयूआई एप्लीकेशन विकसित कर सकता हूं जैसे विंडोज के लिए WinForm अनुप्रयोगों को विकसित करना।

  3. क्या विजुअल स्टूडियो आईडीई के साथ मोनो डेवेल आईडीई संगत है। क्या मैं मोनो डेवलपमेंट और काम के लिए वीएस 2008 समाधान आयात कर सकता हूं?

  4. क्या यह .NET 2.0 और ऊपर का समर्थन करता है?

संपादित करें: जोड़ा जा रहा है एक और संदेह

वहाँ लिनक्स में कॉड ई के निर्माण के बिना लिनक्स में (एक WinForm अनुप्रयोग के) नेट exe चलाने के लिए कोई तरीका है? असल में मेरे पास पहले विकसित कुछ छोटी उपयोगिताओं के लिए कोड नहीं है और उन्हें लिनक्स में चलाने की इच्छा है।

उत्तर

6
  1. (अजीब, मार्कडाउन एक के साथ गणना शुरू करता है, भले ही मैं 2 के साथ शुरू हुआ ...)

  2. हां, आप कर सकते हैं, लेकिन आप तृतीय पक्ष घटकों के साथ सीमित हैं, क्योंकि आंतरिक कार्यान्वयन अलग है, और पिछली बार मैंने चेक किया (बहुत पहले नहीं), मोनो विनफॉर्म कार्यान्वयन ने मेरे टेस्ट ऐप को देखा अजीब (मालिक द्वारा खींची गई सूची दृश्य)। यह वास्तव में अनुशंसित नहीं है, हालांकि मोनो का दावा है कि यह अब पूरी तरह से WinForms-2.0-संगत है।

  3. मोनो डेवेल एक शार्प डेवलपमेंट शाखा है, जिसके बाद समाधान समाधान है। मुझे नहीं पता कि मोनो डेवलपमेंट है या नहीं। लेकिन अच्छी बात यह है कि आप केवल विजुअल स्टूडियो के साथ विकसित हो सकते हैं और मोनो पर अपने संकलित ऐप्स चला सकते हैं। और मोनो, वैसे भी, विंडोज के लिए भी उपलब्ध है।

  4. हाँ, यह करता है, जहां तक ​​सीएलआर जाता है। जैसा कि मार्क ग्रेवल ने पहले ही लिखा है, विंडोज फाउंडेशन पुस्तकालय गायब हैं, जैसा कि कुछ अन्य हैं (सिस्टम। प्रबंधन, उदाहरण के लिए)। लेकिन चीजें ज्यादातर एएसपी.NET 2.0 सहित काम करनी चाहिए। Mono's application portability guidelines इस पर एक अच्छा पढ़ा है।

+0

1. कि डिजाइन – Andy

2

1: बहुत अच्छा, वास्तव में। सभी पूर्ण ढांचे नहीं हैं, इसलिए यदि आप कोड लिख रहे हैं जो एमएस .NET और मोनो दोनों पर निर्माण करना चाहिए, तो आपको दोनों प्लेटफॉर्म

4: हाँ - हालांकि WPF/WCF/WF (3.0) याद कर रहे हैं या

नीचे slimmed मैं विकास पर्यावरण के बारे में ज्यादा पता नहीं है, के बाद से मैं VSTS (Windows पर) का उपयोग करें और बस मोनो पर निर्माण करने के लिए एक NANT स्क्रिप्ट का उपयोग ...

0
  1. मोनो बहुत शक्तिशाली, कभी कभी भी माइक्रोसॉफ्ट के कार्यान्वयन की तुलना में अधिक शक्तिशाली है। link text
  2. Yes you can. विनफॉर्म 2.0 समर्थित है
  3. मुझे विश्वास है।
  4. हां यह करता है। C# 3 is supported और यह देखने के लिए कि प्रत्येक परियोजना से कितना समर्थन है, केवल Winforms और asp.net कार्यान्वयन को देखें। http://mono-project.com
1
  1. बहुत शक्तिशाली को देखो। कोर कार्यान्वयन में कोई बड़ी बग नहीं है। यह एक विज्ञान परियोजना नहीं है। कमियों की अधिकांशतः जहां आप उम्मीद करेंगे, नवीनतम एपीआई (माइक्रोसॉफ्ट के मूल रूप से पहले-प्रेमी लाभ है)।

  2. हां। हमने अभी एक परियोजना पूरी की है जहां अधिकांश जीयूआई कोड विंडोज़ पर विनफॉर्म में विकसित किए गए थे। मैं बिना सिरदर्द के उबंटू का उपयोग कर उस पर काम करने में सक्षम था। उस ने कहा, यह एपीआई के सबसे कठिन भागों में से एक है, और अभी भी मुद्दे हैं। विवरण के लिए http://mono-project.com/WinForms देखें।

  3. पता नहीं, क्योंकि मैं इसका उपयोग नहीं करता हूं।
  4. हां, फिर भी, रनटाइम में कुछ गायब एपीआई हो सकती हैं।

नोट, मैं उबंटू हार्डी (8.04) का उपयोग करता हूं।

+0

"कोई बड़ी बग" का हिस्सा है? खैर, यह संदिग्ध है - मैंने कंपाइलर बग इत्यादि की एक श्रृंखला को लॉग किया है ... अब सब ठीक है, लेकिन सभी विकास के साथ: बग्स ... –

+0

मैंने भी बग लॉग किया है। जब मैं प्रमुख बग कहता हूं, मेरा मतलब शो-स्टॉपर्स है। –

2
  1. "शक्तिशाली" परिभाषित करें।
  2. मोनो के पास कुछ प्रकार के स्रोत संगतता की अनुमति देने के लिए WinForms कार्यान्वयन है। हालांकि, आपकी जरूरतों के आधार पर, आप लिनक्स मूल ढांचे के लिए मोनो बाइंडिंग में से एक का उपयोग करना चाहेंगे, जैसे Gtk# या Qyoto
  3. नहीं पता।
  4. आपके .NET के किन हिस्सों पर निर्भर करता है। सी # भाषा बहुत प्रचलित प्रतीत होती है, चीजें जो पहले से ही उल्लिखित एंटरप्राइज़ फीचर्स के करीब आती हैं, उतनी ही परेशानी होती है।

चीजों को समेटने के लिए, यदि आप मोनो को एक अलग लक्ष्य मंच के रूप में उपयोग करेंगे, तो आपके पास अच्छे नतीजे होने की संभावना है। यदि आप नो-कोड-परिवर्तन-आवश्यक .NET संगतता परत चाहते हैं, तो कम।

0

मैं मोनो में WinForms का उपयोग करता हूं। 2.x रिलीज बहुत अच्छे हैं।

मैं विंडोज़ पर विजुअल स्टूडियो में फॉर्म विकसित करता हूं, और उन्हें शून्य कोड में परिवर्तन के साथ लिनक्स में चलाता हूं। हां, फॉर्म XP पर थोड़ा अलग दिखते हैं, लेकिन फिर, एक एक्सपी-थीमाधारित जीयूआई गनोम में अजीब तरह दिखता है।

यदि आप अभी शुरू कर रहे हैं, तो WinForms के साथ चिपके रहें, जबकि आप मोनो/लिनक्स के साथ सहज महसूस करते हैं। हालांकि किसी बिंदु पर आप जीटीके की जांच करना चाहेंगे।

1
  1. मोनो शक्तिशाली शक्तिशाली है। इसमें एक बहुत मजबूत ओपन सोर्स कंकाल पर सभी नेट मांसपेशी है।

  2. जब आप कहते हैं "विंडोज के लिए WinForm अनुप्रयोगों को विकसित करने जैसे लिनक्स के लिए जीयूआई अनुप्रयोग विकसित करें" मैं समझता हूं कि आप एक दृश्य डिजाइनर के बारे में पूछ रहे हैं जो आपको यूआई को जल्दी से बनाने की अनुमति देगा। हाँ यह संभव है। मोनो डेवेल में स्टेटिक है - जीटीके # के लिए एक अंतर्निहित दृश्य डिजाइनर। QyotoDevelop भी है जो मोनो डेवेल में क्यूटी समर्थन को सक्षम बनाता है।

  3. हां, मोनो डेवलपेट मूल रूप से वीएस परियोजना/समाधान फ़ाइल प्रारूप का समर्थन करता है। आप वीएस के साथ अपने ऐप को संकलित करने के लिए एक ही कोड बेस का उपयोग कर सकते हैं। विंडोज पर नेट और लिनक्स पर मोनो में एमडी जीतें।

  4. वर्तमान में मोनो कुछ सामग्री के साथ सी # 3.0 का समर्थन करता है जो पहले से ही कार्यान्वित किया गया है और पाइपलाइन में बहुत कुछ है।

  5. हां, कई मामलों में मोनो में एक नेट संकलित ऐप चलाने के लिए संभव है, हालांकि वीएस समाधानों के लिए मोनो डेवेल के समर्थन के साथ यह वास्तव में कोई फर्क नहीं पड़ता। पूरी परियोजना को पुनर्निर्माण के लिए एफ 7 दबाकर उतना ही लगता है, इसलिए प्रयास वास्तव में नगण्य है। यह जांचने के लिए सबसे अच्छा टूल है कि आपका एप्लिकेशन मोनो में चलाया जा सकता है MoMA है।