लिनक्स पर C ++ और C के विकास के लिए IDEs की तुलना: KDevelop, Eclipse, NetBeans, CodeBlocks और Anjuta [बंद]


49

मैं लिनक्स पर पूर्ण पैमाने पर आईडीई के अपने अनुभव को नोट करना चाहूंगा।

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

  • सी ++ और शायद कुछ सी विकास (जावा, पायथन और अन्य सामान नहीं)
  • सर्वर साइड प्रोग्रामिंग (GUI विकास की कोई आवश्यकता नहीं)
  • लिनक्स पर काम नहीं "क्रॉस-प्लेटफॉर्म" विकास।

राय के संबंध में:

  1. कितना स्थिर है? अगर IDE क्रैश होता है तो मुझे इसकी आवश्यकता नहीं है।
  2. उपयोग करने के लिए आरामदायक।
  3. डिबगिंग के लिए शक्तिशाली।
  4. विभिन्न बिल्ड सिस्टम के साथ एकीकरण
  5. विशाल परियोजनाओं पर स्केलेबिलिटी (कोड की सैकड़ों हजारों लाइनों की परियोजनाएं)

मैं केडवेल्व के साथ काम करता था और यह बहुत अच्छी आईडीई थी और ऐसा लगता है कि केडेल्व 4 एक बहुत बड़ी प्रगति है। ऐसा भी लगता है कि कई लोग नेटबींस और ग्रहण का उपयोग करते हैं।


9
मुझे आपके द्वारा प्राप्त किए गए उत्तरों से बहुत दिलचस्पी है और मैं लोगों को जवाब प्रदान करने के लिए आभारी रहूंगा यदि वे दो अन्य बिंदुओं के बारे में पूछते हैं, जिसमें मैं दिलचस्पी रखता हूं। 50 हजारों फाइलों / 30 लाखों लाइनों की परियोजनाओं के लिए स्केलेबिलिटी। आईडीई द्वारा डिफ़ॉल्ट रूप से उपयोग नहीं किया गया है जो एक परियोजना संरचना के लिए अनुकूलन क्षमता। मेरे प्रयोग कई साल पुराने हैं, लेकिन उस समय मैंने जो कुछ भी करने की कोशिश की, उन पहलुओं में मैं असफल रहा।
एपीग्रामग्राम

@AProgrammer - बहुत अच्छा बिंदु, सूची में जोड़ा गया।
Artyom

आप CodeLite- codelite.org पर भी नज़र डाल सकते हैं । दुर्भाग्य से मुझे विशाल परियोजनाओं के साथ इसका उपयोग करने का अधिक अनुभव नहीं है। फिर भी इसकी जाँच करना उचित हो सकता है।
rsc 8

साथ परियोजना और clang_complete प्लगइन्स और ठीक से विन्यस्त कर, vim आप लगभग सब कुछ (डिबगिंग को छोड़कर) आईडीई होगा दे देंगे। उन लोगों के साथ मुझे संदेह है कि आप वैसे भी विम के साथ रहेंगे; मैं निश्चित रूप से कर दूंगा।
जन हडेक

मैं खुद इसके बारे में सोच रहा था। इस प्रश्न को पोस्ट करने के लिए धन्यवाद।
निलंबित

जवाबों:


39

यहाँ आईडीई के साथ मेरा व्यक्तिगत अनुभव है। मैंने सभी IDE स्थापित किए जो मुझे मिल सकते थे, और उन सभी के साथ खेला (यही वह है जो मैं आपको करने की सलाह दूंगा):

  • kdevelop

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

  • ग्रहण

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

  • अंजुता और कोडब्लॉक

मैंने इसे शीघ्र ही आजमाया, और यह पिछले दो की तरह अच्छा नहीं था। कोडब्लॉक लघु परियोजनाओं के लिए अच्छा है, लेकिन मध्यम और बड़े के लिए नहीं।

  • NetBeans

एक और अच्छी IDE, लेकिन जब से मेरा घर नेटवर्क शेयर पर है, और जिस प्रोजेक्ट में मैं काम करता हूं वह काफी बड़ा है, यह बहुत धीमा था। यह हर समय पार्स करता है।

  • qtcreator

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


समाप्त करने के लिए :

  • यदि आप पर्याप्त धैर्य रखते हैं (या यदि आप एक अच्छा विन्यास पाते हैं), तो ग्रहण के साथ जाएं। यह वास्तव में सबसे अच्छा मुफ्त आईडीई है।
  • यदि आप कॉन्फ़िगर करने के लिए कुछ सरल चाहते हैं, तो kdevelop के साथ जाएं।

एक और विकल्प दोनों को स्थापित करना है, और अपने डेवलपर्स को चुनना है कि उन्हें बेहतर क्या सूट करता है।


16
ग्रहण जावा का एक धीमा टुकड़ा है .... जब तक कोई विकल्प न हो, तब तक एक का उपयोग करने का कोई कारण नहीं है। मेरे पीसी पर यह सिर्फ एक मिनट के भीतर शुरू हुआ। नफ ने कहा, नहीं?
कोडर

10
@ कोडर खैर, आप इसे एक बार शुरू करेंगे, और इसे फिर से शुरू किए बिना पूरे दिन का उपयोग करेंगे। ये बात हुई न। 1 मिनट एक दिन में इसका उपयोग करने की तुलना में कुछ भी नहीं है।
BЈовић

6
@VJovic: टैब के बीच स्विच करने में टैब के आधार पर 18 सेकंड से 1 सेकंड तक का समय लगता है, और स्लोडाउन पहले केवल स्लोवॉक्स का उपयोग नहीं करते हैं। यहां तक ​​कि विजुअल स्टूडियो भी उसकी तुलना में तड़क-भड़क वाला लगता है।
कोडर

7
@ कोडर एडिसन ने कहा, आपकी स्थापना या वातावरण अच्छा नहीं है। मेरा ग्रहण सुपर फास्ट है। टैब स्विचिंग लगभग तुरंत है।
B19овиЈ

4
एक्लिप्स लीवर की मेमोरी को छलनी की तरह। मल्टी यूजर लिनक्स बॉक्स, 16 गिग रैम के साथ, कुछ दिनों से अधिक समय से चल रहे एक्लिप्स (सीडीटी) के कुछ उदाहरणों के साथ रैम से बाहर निकलता है। इसलिए धीमी शुरुआत एक समस्या है, क्योंकि आपको दिन में कम से कम एक बार पुनः आरंभ करने की आवश्यकता है, या फिर धीमे-धीमे प्रवेश करें। Eclispe RAM उपयोग - 600Meg / आवृत्ति 100 / दिन बढ़ रहा है। पूरी तरह से चित्रित IDE 50Meg / आवृत्ति 0 / दिन, VIM, 10Meg 0 / दिन से बढ़ रही है। $ US250 / सीट के मूल्य टैग के साथ एक वाणिज्यिक IDE, प्रति दिन एक बार ग्रहण को लोड करने के लिए खोई हुई उत्पादकता पर आधारित 1 वर्ष से भी कम समय में ROI आधारित दिखा।
मटनज़

13

Qt क्रिएटर पर एक नज़र डालें।

  • यह बहुत स्थिर है। मुझे इसके साथ कोई क्रैश याद नहीं है।
  • टैब की अनुपस्थिति में उपयोग करने के लिए कुछ समय लग सकता है लेकिन समग्र इंटरफ़ेस अच्छा है।
  • यह gdb का उपयोग करता है। डीबगिंग विजुअल स्टूडियो में उतनी महान नहीं है लेकिन फिर भी बहुत अच्छी है। यह अब प्रोफाइलर (Valgrind) के साथ भी एकीकृत होता है।
  • यह qmake और CMake के साथ एकीकृत होता है। लेकिन आप कस्टम कमांड चला सकते हैं इसलिए लगभग हर चीज का उपयोग करना संभव होना चाहिए।
  • विशाल परियोजनाओं के बारे में कुछ नहीं कह सकते हैं, लेकिन यह उन्हीं लोगों द्वारा बनाया और उपयोग किया जाता है जो क्यूटी लिखते हैं, इसलिए आवश्यकताएं अधिक हैं।
  • यह परियोजना संरचना के बारे में कोई धारणा नहीं बनाता है।

मैंने कुछ समय पहले केडवेल्व 4 की कोशिश की थी। यह निश्चित रूप से सही दिशा में बढ़ रहा है, लेकिन थोड़ा छोटी गाड़ी है। आप इसे वैसे भी आज़माना चाह सकते हैं।

मैंने बहुत कम समय के लिए CodeBlocks का उपयोग किया लेकिन मुझे याद है कि मुझे यह पसंद नहीं आया क्योंकि इंटरफ़ेस बदसूरत था।


8

कई जीसीसी डेवलपर्स (और जीसीसी, स्रोत कोड के 5 से 9 लाखों लोगों की लाइनों है निर्भर करता है कि आप उन्हें गिनती) बस का उपयोग emacs या viकी तरह उपयोगिताओं के साथ grep, ctagsया etags, make, svn, gcc, आदि)।

एक बड़े सॉफ्टवेयर को विकसित करने के लिए आपको एक आईडीई की आवश्यकता नहीं है।

यदि आपका सॉफ़्टवेयर काफी बड़ा है (उदाहरण के लिए कम से कम 0.3 मिलियन लाइनें), तो आप सॉफ़्टवेयर मैट्रिक्स, सॉफ़्टवेयर नेविगेशन, विशिष्ट चेतावनी, कोडिंग नियमों आदि के प्रयोजनों के लिए GCC थ्रू प्लग इन या MELT एक्सटेंशन को कस्टमाइज़ करने पर भी विचार कर सकते हैं ।


10
यह सवाल नहीं था। जैसा कि मैंने उल्लेख किया है कि मैं ज्यादातर रिम (grep, ctags आदि के साथ) का उपयोग करता हूं - मुझे पता है कि यह कितना अच्छा है। हालाँकि कई प्रोग्रामर IDE पसंद करते हैं
Artyom

1
आईडीई सी ++ वर्ग से संबंधित सुविधाओं के लिए विशेष रूप से सहायक है, जो विम में अच्छी तरह से कॉन्फ़िगर करने के लिए बहुत कठिन हैं। कच्चे सी ctags के साथ ठीक है।
सिरो सेंटिल्ली 新疆 i i i 事件 '

6

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

ग्रहण के परिवर्तन: हर चीज के बारे में बहुत सारे उपकरण (संस्करण नियंत्रण सहित); सिंटैक्स चेक, और ऑटो-पूरा करने के लिए बहुत अच्छी तरह से काम करता है। संकलन / निर्माण / डिबग करते समय अच्छी नौकरी। यह मल्टी-प्लेटफ़ॉर्म (लिनक्स, विंडोज, सोलारिस, आदि)
नुकसान है: कुछ फ़ंक्शंस या सेटिंग्स एक बुरे सपने हैं (उदाहरण के लिए, जब आपको प्रोजेक्ट को अपने वर्कस्टेशन से सर्वर पर तैनात करना होता है, तो ग्रहण एक प्रकार का कैश रखता है, और यदि यह सोचता है कि सर्वर पर फ़ाइल 'अप टू डेट' है, फ़ाइल अधिलेखित नहीं है)। ग्रहण बहुत बड़ा है , अपनी अधिकांश सीपीयू-पावर को चोक कर देता है और आपकी सारी याददाश्त को खत्म कर देता है। Http://www.ihateeclipse.com पर अधिक जानकारी ।

KDevelop तेज है, और C / C ++ और KDE / Qt परियोजनाओं के लिए बहुत अच्छा है, लेकिन कुछ कार्यों की कमी जैसे Mercurial (KDevelop 3.3.4, नए संस्करणों के लिए नहीं जानते) का समर्थन करता है।


4

दृश्य SlickEdit - वाणिज्यिक, किसी भी अच्छे उपकरण की तरह, "बस काम करता है"। सूरज के नीचे हर भाषा को संभालता है, बॉक्स से बाहर, बहुत विन्यास योग्य और यदि आवश्यक हो, पूरी तरह से प्रोग्राम करने योग्य, डिबगिंग के लिए जीडीबी के आसपास एक गुई डालता है। बहुत बड़ी परियोजनाओं को संभालता है (मैं इसे 5million + SOLC के कोड आधार के लिए उपयोग करता हूं, जिनमें से मैं लगभग 1 बिलियन लोगों के साथ खेलता हूं।) - कई पुरस्कार वापस जीते और तब से बेहतर हुए। कोशिश करो

ग्रहण - जावा में प्रोग्रामिंग करते समय पसंद का उपकरण, किसी भी समर्थित एकल भाषा के लिए ठीक है। जावा प्रोग्राम विकसित करने वाले जावा डेवलपर्स के लिए जावा में लिखा गया। लेकिन हर छोटे छोटे फीचर और प्रमुख फीचर के लिए प्लगइन्स की जरूरत होती है। एक समय में एक से अधिक भाषाओं के लिए "सिर्फ काम" नहीं करता है।


4

Netbeans एक धीमा, धीमा IDE है। हम "डायनासोर कंप्यूटर" का उपयोग नहीं कर रहे हैं, लेकिन यह आईडीई काज काफी लंबे समय से है। अगर हम नेटवर्क पर Netbeans IDE का उपयोग करते हैं (कहते हैं, VNC का उपयोग करके), तो इसके बारे में भूल जाएं !!! लैग इतना खराब है जितना कि नेटबीन्स को अनुपयोगी बनाना है!

मुझे लगता है कि प्रारंभिक उपयोग के लिए सेटअप करने के लिए ग्रहण कठिन है, लेकिन अगर आप दृढ़ रहें, तो आप एक आईडीई के साथ हवा लेंगे, जिसमें वह सब कुछ हो सकता है जो आप चाहते हैं या आवश्यकता हो सकती है (संभवतः प्लग-इन के माध्यम से)।

मैं एक से अधिक IDE का उपयोग नहीं करना चाहता, और मुझे संदेह है कि आप भी नहीं। मैं अपने सभी दोषों के साथ ग्रहण की सिफारिश करूंगा।


4

इसलिए ... मैं सिर्फ एक और राय जोड़ता हूं लेकिन मुझे नहीं लगता कि आप इसे विम उपयोगकर्ता के रूप में चुन सकते हैं, इसलिए

emacs + gdb http://www.cs.bu.edu/teaching/tool/emacs/programming/

सबसे पहले जो सबसे हल्का आईडीई होगा (मैं इसे ऑपरेटिंग सिस्टम भी कह सकता हूं) और सबसे अधिक अनुकूलन योग्य है ताकि आप कुछ लिस्प कॉन्फ़िगरेशन ब्रेनवर्क संसाधनों को छोड़कर न्यूनतम संसाधनों के उपयोग के साथ सब कुछ कर सकें।

व्यक्तिगत रूप से जब मेरे पास एक गंभीर परियोजना है तो मैं विज़ुअल स्टूडियो का उपयोग कर रहा हूं। लेकिन जब मुझे linux पर काम करने की आवश्यकता होती है तो मैं emacs चलाता हूं। (यह भी मुझे क्यूटी पसंद नहीं है)

इसके अलावा (ज्यादातर क्योंकि मुझे last.fm प्लगइन और वहाँ क्लोजर सपोर्ट पसंद है) मुझे लिनक्स के लिए एक अच्छी IDE मिली (फिर भी इसे कुछ कारणों से == 'से खाली करने के लिए स्विच करने का प्रयास किया गया) IDEA , नहीं मैं इसे C ++ के साथ उपयोग करने की सलाह देता हूं लेकिन शायद यह बहुत बुरा नहीं है इसलिए आप इसे अपनी सूची में जोड़ सकते हैं।


1

क्यूटी और कोडब्लॉक ठीक हैं। मैं हाल ही में कोडब्लॉक का उपयोग करता हूं।

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

कुछ मामूली समस्याएं हैं, लेकिन लिनक्स पर दिन के काम के लिए यह बहुत अच्छा है, आईएमएचओ।


0

लिनक्स पर एक आईडीई का उपयोग करने का मेरा एकमात्र प्रयास 2005 में हुआ था, लेकिन उस समय कोई आईडीई मैंने कोशिश नहीं की थी (केडीवेल्ड, एक्लिप्स, अंजुता) कोई भी अच्छा था, इसलिए मैं vim + ctags + gdb पर वापस चला गया और अभी भी लिनक्स कोडिंग के लिए इसका उपयोग कर रहा हूं।


संभवतः आप वह व्यक्ति हैं जो उत्तर जानते हैं: विम में पदानुक्रम (माता-पिता / बच्चे के कार्यान्वयन) के एक अन्य वर्ग में कुछ विधि कार्यान्वयन के लिए कैसे जाते हैं।
सर्गेई

उदाहरण के लिए ग्रहण में संयोजन एक विधि नाम पर Ctrl + T है।
सर्गेई

@Sergei क्षमा करें, ctags समर्थन नहीं करता है। आप YCM की तरह कुछ के साथ बेहतर किस्मत हो सकता है: github.com/Valloric/YouCompleteMe
Nemanja Trifunovic
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.