2009-02-27 10 views
6

मैं विंडोज वातावरण से आने वाले सी ++ विकास के लिए लिनक्स में स्विच करने पर विचार कर रहा था। क्या यह एक बुरा विचार है? मेरी कार्यस्थल हमारी परियोजनाओं के लिए विंडोज और विजुअल स्टूडियो का उपयोग करती है (कुछ सी # और जावा भी, लेकिन अभी मैं केवल सी ++ में विकास कर रहा हूं)। अगर वे मुझे सी # परियोजना पर रखने का फैसला करते हैं, तो विकास अभी भी संभव होगा (मोनो?)? इस तरह के संक्रमण में कठिनाइयों क्या हैं?विंडोज विकास के लिए लिनक्स पर स्विचिंग, बुरा विचार?

क्या मुझे अपनी परियोजनाओं पर काम करने में कोई समस्या होगी और इसके विपरीत? मैंने कहीं पढ़ा है कि प्रीकंपिल्ड हेडर और ऐसे (हम उनका उपयोग करते हैं), और एन्कोडिंग (टैब/स्पेस, लाइन एंडिंग इत्यादि) में समस्याएं होंगी।

यदि यह स्विच करना मुश्किल नहीं है, तो कैसे क्या मैं शुरू करूं? आईडीई? vim + बनाते हैं?

धन्यवाद। धन्यवाद दोस्तों, मुझे लगता है कि है कि समझ में आता है ..

उत्तर

25

एक बुरा विचार है कि:

वैसे, हम ज्यादातर Windows सॉफ्टवेयर ..


संपादित कर सकते हैं। मैं कम से कम दो कारणों से देख सकते हैं:

  • ही ओएस पर विकास करना आप विंडोज के साथ
  • दृश्य स्टूडियो चट्टानों
+0

जबकि मैं निश्चित रूप से जीएनयू टूलचेन और * निक्स संपादकों की अद्भुत अद्भुत शक्ति को याद करता हूं, तो विंडोज़ में वीएस का उपयोग न करने का कोई मतलब नहीं है। –

+0

सहमत हुए। पूरी तरह से। – Klaim

+0

वीएस के लिए सच है, एक ही ओएस पर विकसित होने के रूप में ... हाँ, और सेलफोन पर एस 60 या डब्ल्यूएम के लिए सामान विकसित करना? – vartec

8

स्टिक के लिए सॉफ्टवेयर लिखने यदि आप C++ के लिए विकसित कर रहे हैं और सी #। विजुअल स्टूडियो डीबगर बिल्कुल शानदार है, और ऐसा लगता है कि अधिकांश लिनक्स आईडीई तुलनीय नहीं हैं (जावा सामान के लिए ग्रहण को छोड़कर)। इसके अलावा, संभावना है कि यदि आप लिनक्स पर हैं तो आप एक अलग कंपाइलर का उपयोग करेंगे, और इससे वास्तव में अजीब बग का कारण बन सकता है।

+0

सलाह के लिए धन्यवाद .. – krebstar

+0

मैं बस यह इंगित करना चाहता हूं कि वीएस पर डिबगिंग - या उस मामले के लिए और कुछ भी - डीडीडी पर कुछ भी नहीं है। डीबगिंग के लिए बस कोई तुलना नहीं है। माना जाता है कि यह एक आउटडोड टूलकिट (मोटीफ) का उपयोग करता है, और इसमें "सत्य" विन पोर्ट नहीं है (सिग्विन और एक्स सर्वर का उपयोग करता है)। – supercheetah

2

कोई अच्छा विचार नहीं है क्योंकि मोनो में विंडोज़ फॉर्म के लिए समर्थन अभी तक पूरा नहीं हुआ है। लिनक्स सी # डेवलपर्स आमतौर पर जीयूआई के लिए जीटीकेशर्प का उपयोग करते हैं, जो आपके ऐप पर एक और निर्भरता जोड़ देगा और विंडोज फॉर्म से काफी अलग है। लेकिन GtkSharp भी बुरा नहीं है। मुझे विशेष रूप से जीटीके की पैकिंग बक्से की सुविधा पसंद है क्योंकि यह मेरे नियंत्रण (गलती, विजेट) को सही ढंग से आकार देने के लिए बहुत आसान बनाता है और सभी स्क्रीन डीपीआई समस्याओं को स्वचालित रूप से हटा देता है।

लेकिन यह भी एक मौका है कि आपके मौजूदा कोड में अन्य निर्भरताएं हो सकती हैं जो लिनक्स पर मौजूद नहीं हैं, खासकर पी/इनवोक नामक अप्रबंधित कोड। यदि ऐसा है, तो लिनक्स पर विकास करना असंभव हो सकता है।

+0

एमके .. धन्यवाद .. मैं वास्तव में एक सी # डेवलपर नहीं हूं, अगर वे मुझ पर कुछ फेंक देते हैं तो बस आगे सोचें .. :) – krebstar

1

मैं लिनक्स पर वेब विकास कर में बदला गया है, यहाँ क्या मैं व्यक्तिगत रूप से

पाया है आदेश काम करने में सही है कि (विशेष सॉफ्टवेयर का उपयोग कर) अंत में समस्याओं का कारण नहीं है मैं एक करना होगा है आभासी मशीन। शराब काफी दूर तक सॉफ्टवेयर मैं

मेरी विशेष जरूरतों के लिए

इसके अलावा जरूरत के लिए स्थिर होने के लिए नहीं है के साथ, बस पूरे "सिस्टम फ़ॉन्ट" की जा रही विभिन्न कई पटकथा मुद्दों का कारण बना है डब्ल्यू बी/खिड़कियां और यूनिक्स/लिनक्स

मैं जीतने के लिए वापस स्विच करने जा रहा हूँ। मुझे LINUX पसंद है, लेकिन एक विशेष क्षेत्र में जहां मेरे अधिकांश ग्राहक विंडोज और आईई का उपयोग करते हैं .... मुझे उनके पास चलाने की ज़रूरत है ... मुझे लगता है कि यह उत्पादकता

के लिए होशियार है (व्यक्तिगत राय, परमेश्वर की ओर से जनादेश नहीं)

टिम

+0

धन्यवाद .. हम देशी ऐप्स बनाते हैं .. – krebstar

1

मैं खिड़कियों के लिए चिपके हुए सुझाव देते हैं। विंडोज़ विकास के लिए विंडोज़ बहुत अच्छा है। लिनक्स वह जगह है जहां आप क्रॉस-प्लेटफ़ॉर्म सामग्री/लिनक्स विशिष्ट सामग्री (यदि आप चाहें) लिख सकते हैं। मैंने सी # सीखने के लिए मोनो की कोशिश की, यह खिलौनों के उदाहरणों के लिए काम किया, लेकिन .NET के कुछ हिस्सों के लिए नहीं। मैं खिड़कियों पर वापस स्विच किया। मैं कल्पना नहीं कर सकता कि लिनक्स पर स्विच करना एक अच्छा विचार है। मुझे कोई अपराध नहीं है, यह सिर्फ मेरी राय है।

+0

कोई अपराध नहीं लिया गया :) बस कुछ सलाह चाहिए उन लोगों से जिन्होंने पहले यह कोशिश की है :) धन्यवाद – krebstar

4

मैं मैक उपयोगकर्ता (पूर्व फ्रीबीएसडी लड़का) हूं, इसलिए मैं आपकी आंत महसूस कर रहा हूं। संक्षेप में: आप विजुअल स्टूडियो का उपयोग करना चाहते हैं। यह आपके सी # परियोजनाओं, अवधि के लिए सबसे अच्छा उपकरण है। यह आपके विंडोज-केंद्रित सी ++ प्रोग्रामिंग के लिए भी सबसे अच्छा टूल है। यहां तक ​​कि यदि यह नहीं था, तो यदि आप ओएस नहीं चलाते हैं तो यह आपके परीक्षण को भुगतना होगा।

चमकदार तरफ, हमेशा वर्चुअल मशीन में अपना विकास करें। विशेष रूप से विंडोज़ पर। स्रोत नियंत्रण का प्रयोग करें और अपने वीएम के लगातार स्नैपशॉट लें। जब आप ऐसा कर रहे हों, तो इससे कोई फर्क नहीं पड़ता कि आप अपने मेजबान पर लिनक्स या ओएस एक्स चलाते हैं।

चीयर्स

Nik

+1

हाय, क्या आप स्पष्टीकरण दे सकते हैं? मुझे किस तरह का वीएम उपयोग करना चाहिए?मैं अपने लिए स्रोत नियंत्रण का उपयोग करता हूं, क्योंकि टीम नहीं करता है। – krebstar

+0

जब आप विकास कर रहे हैं तो मुझे नहीं लगता कि यह महत्वपूर्ण है। मैं घर पर पैरालेल्स का उपयोग करता हूं, काम पर वीएमवेयर, लेकिन आप सूर्य के वर्चुअलबॉक्स का भी उपयोग कर सकते हैं। मैंने दूसरों की कोशिश नहीं की है, लेकिन विकास के लिए मुझे यकीन है कि कुछ भी ठीक है। आपको 3 डी गेमिंग क्षमताओं की आवश्यकता नहीं होगी :-) –

2

मैं वर्तमान में दोनों Windows और Linux पर विकसित करना। मुझे लगता है कि उन दो (या शायद अधिक) प्लेटफार्म के तहत एक ही कोड को संकलित करना बहुत उपयोगी है, क्योंकि आप कुछ कोडिंग त्रुटियों को वीसी ++ और जीसीसी के लिए कुछ अन्य धन्यवाद के लिए धन्यवाद दे सकते हैं। बेशक, सबसे महत्वपूर्ण मंच वह है जिसे आप विकसित कर रहे हैं। यदि आपका एप्लिकेशन विंडोज़ पर चलाएगा, तो इसे उसी प्लेटफॉर्म पर विकसित करें और केवल तभी यदि आप अधिक संसाधन आवंटित कर सकते हैं, तो इसे लिनक्स या अन्य पर पोर्ट करने का प्रयास करें। वैसे भी, यह विकसित होने के दौरान पोर्टेबिलिटी के बारे में सोचने की एक अच्छी आदत है, यह मानक समाधानों का उपयोग करने के लिए जितना संभव हो सके

1

यदि आप बहुत सारे लिनक्स खो रहे हैं - और आपको बातचीत करने के लिए विंडोज बॉक्स पर रहने की आवश्यकता है आपकी टीम और आपके काम के आवेदन के साथ - Cygwin और GNU Win32 tools इंस्टॉल करें।

+0

मेरे पास पहले से ही कुछ GNUwin32 टूल्स हैं, मुझे साइगविन होना चाहिए .. quirky, लेकिन मैंने इसे बहुत अधिक उपयोग नहीं किया है, इसलिए मेरी राय गिनती नहीं है :) I हालांकि लिनक्स की तरह करो, मैं जितना मैं अपने ईईई पर जितना कर सकता हूं इसका उपयोग करने की कोशिश करता हूं .. :) – krebstar

0

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