Linux'ta C ++ ve C geliştirme için IDE'lerin karşılaştırılması: KDevelop, Eclipse, NetBeans, CodeBlocks ve Anjuta [kapalı]


49

Linux'taki tam ölçekli IDE deneyimlerinizi not etmek isterim.

Kişisel olarak çoğunlukla çalışıyorum vim, ancak diğer programcılar gerçek bir IDE görmek istiyor. Bu nedenle, farklı IDE'ler ve bunlar arasındaki karşılaştırmalar hakkındaki kişisel görüşünüzü aşağıdaki bağlamda duymak isterim:

  • C ++ ve belki bazı C gelişimi (Java, Python ve diğer şeyler değil)
  • Sunucu tarafı programlama (GUI geliştirmeye gerek yok)
  • Linux üzerinde çalışmak platformlar arası bir gelişim değil.

Görüş gerekli görüşler:

  1. Ne kadar stabil? IDE çökerse buna ihtiyacım yok.
  2. Kullanımı rahat.
  3. Hata ayıklama için güçlü.
  4. Çeşitli yapı sistemleriyle entegrasyon
  5. Büyük projelere göre ölçeklenebilirlik (yüzbinlerce kod satırı projesi)

KDevelop ile çalıştım ve çok güzeldi IDE ve KDevelop 4'ün çok büyük bir ilerleme olduğu görünüyor. Ayrıca birçokları Netbeans ve Eclipse kullanıyor.


9
Alacağım cevaplarla çok ilgileniyorum ve ilgilendiğim diğer iki noktaya değinirlerse, cevap veren insanlara minnettar olurum. 50 bin dosya / 30 milyon satırlık alanlardaki projelere ölçeklenebilirlik ve IDE tarafından varsayılan olarak kullanılan proje yapısına uyum sağlama. Deneylerim birkaç yaşında ama o zaman denediğim her şey bu yönlerden başarısız oldu.
AProgrammer

@AProgrammer - Çok iyi nokta, listeye eklendi.
Artyom

CodeLite- codelite.org sitesine de bir göz atabilirsiniz . Ne yazık ki, büyük projelerle kullanma konusunda fazla tecrübem yok. Yine de kontrol etmeye değer olabilir.
rsc

İle proje ve clang_complete eklentileri ve düzgün yapılandırılmış marka, vim size (ayıklama hariç) IDE olur neredeyse her şeyi verecektir. Ben şüpheli olanlar ile yine de vim kalacaksınız; Kesinlikle yaparım.
Jan Hudec

Sadece kendim hakkında merak ediyordum. Bu soruyu gönderdiğiniz için teşekkür ederiz.
askıya

Yanıtlar:


39

İşte benim IDE'ler ile kişisel deneyimim. Bulabildiğim tüm IDE'leri yükledim ve hepsiyle oynadım (size tavsiyem budur):

  • kdevelop

Ben şahsen kullanırım. Yüklemiş olduğum sürüm çöküyor, ancak en son sürümü sitelerden indirdim ve iyi çalışıyor. Yapılandırması basit ve kullanımı harika. Eklentiler aracılığıyla özel yapım sistemlerini desteklerler. Bazı tuhaf özellikler bulabilirsiniz (yalnızca doğrudan dahil edilen başlıkları ayrıştırma gibi), ancak genellikle büyük projeler için işe yarar.

  • tutulma

Süper karmaşık yapılandırmak, ancak tam anlamıyla her şeyi sağlar. Herkesi memnun edecek doğru bir konfigürasyon bulmak için yeterli zamanınız varsa, o zaman gidin. Ancak bir şeyi değiştirmeye çalışmak çok can sıkıcıdır çünkü çok fazla seçeneği vardır.

  • anjuta ve kod blokları

Kısa sürede denedim ve önceki iki kadar iyi değildi. Codeblocks kısa projeler için iyidir, ancak orta ve büyük için.

  • netbeans

Bir başka iyi IDE, ancak evim ağ paylaşımında olduğundan ve çalıştığım proje oldukça büyük olduğu için çok yavaştı. Her zaman ayrıştırır.

  • qtcreator

Yapılandırması basit, ancak birçok seçenek eksik. Örneğin, onunla ilgili en tuhaf şey, qt sınıflarını ayrıştıramaması ve otomatik olarak tamamlayamamasıdır. Özel yapım sistemini destekler.


Sonuç olarak:

  • Eğer yeterince sabırlıysanız (veya iyi bir konfigürasyon bulursanız), tutulma ile devam edin. Gerçekten en iyi ücretsiz IDE.
  • Yapılandırması basit bir şey istiyorsanız, kdevelop ile gidin.

Diğer bir seçenek de her ikisini de kurmak ve geliştiricilerin kendilerine daha uygun olanı seçmelerine izin vermek.


16
Eclipse, yavaşça çalışan bir Java parçasıdır ... Kesinlikle alternatif olmadıkça birini kullanmak için hiçbir sebep yoktur. Benim bilgisayarımda sadece bir dakikadan az bir sürede başladı. Nuff dedi ki hayır?
Kodlayıcı

10
@Coder Peki, bir kez başlayacak ve yeniden başlatmadan bütün gün kullanacaksınız. Bu bir fikir. 1 dakika, bir günde ne kadar süreyle kullanacağınıza kıyasla hiçbir şey değildir.
BЈовић

6
@ VJovic: Sekmeler arasında geçiş yapmak, sekmeye bağlı olarak 18 saniye ile 1 saniye arasında sürer ve yavaşlamalar ilk önce yalnızca yavaşlamalar değildir. Visual Studio bile buna kıyasla daha çekici görünüyor.
Kodlayıcı

7
@Coder Edison'un dediği gibi, kurulum veya ortamınız iyi değil. Tutulmam çok hızlı. Sekme geçişi neredeyse anında.
BЈовић

4
Ecilpse, elek gibi hafıza sızdırıyor. 16 Gig RAM'e sahip çok kullanıcılı Linux kutusu, birkaç günden daha uzun süre çalışan birkaç Eclipse (CDT) örneğiyle birlikte RAM tükenir. Dolayısıyla yavaş başlangıç ​​bir problemdir, çünkü günde en az bir kez yeniden başlamanız ya da yavaşlamanız ardından dev ekibine girmeniz gerekir. Eclispe RAM kullanımı - 100 / günde büyüyen 600Meg / örnek. Tam özellikli IDE 50Meg / örnek 0 / gün, VIM, 10Meg 0 / gün büyüyor. 250 ABD Doları / koltukluk bir fiyat etiketine sahip bir ticari IDE, Eclipse'i günde bir kez yüklemek için üretkenlik kaybına bağlı olarak 1 yıldan daha az yatırım getirisi elde etti.
mattnz

13

Qt Creator'a bir göz atın.

  • Oldukça kararlı. Herhangi bir çarpışma olduğunu hatırlamıyorum.
  • Sekmelerin yokluğuna alışmak biraz zaman alabilir ancak genel arayüz iyi.
  • Gdb kullanır. Hata ayıklama, Visual Studio'daki kadar iyi değil ama yine de oldukça iyi. Ayrıca şimdi profiler (Valgrind) ile bütünleşir.
  • Qmake ve CMake ile bütünleşir. Ancak özel komutlar çalıştırabilirsiniz, böylece hemen hemen her şeyi kullanmanız mümkün olur.
  • Büyük projeler hakkında bir şey söyleyemem ama Qt yazan aynı kişiler tarafından üretilip kullanılıyor, bu yüzden gereksinimler yüksek.
  • Proje yapısı hakkında herhangi bir varsayımda bulunmuyor gibi görünüyor.

Bir süre önce KDevelop 4'ü denedim. Kesinlikle doğru yöne doğru hareket ediyor ancak hafif bir araba. Yine de denemek isteyebilirsiniz.

CodeBlocks'u çok kısa bir süre kullandım ama Arayüz çirkin olduğu için hoşuma gitmediğini hatırlıyorum.


8

Birçok GCC geliştiricileri (ve GCC bunları saymak nasıl bağlı kaynak kodunun 5 ila 9 milyon hatları vardır) sadece kullanmak emacs veya vibenzeri araçlar ile grep, ctagsya etags, make, svn, gcc) vb.

Büyük bir yazılım geliştirmek için bir IDE'ye ihtiyacınız yok.

Yazılımınız yeterince büyükse (örneğin en az 0,3 milyon satır), GCC eklentileri veya MELT uzantılarını yazılım ölçümleri, yazılım gezinme, belirli uyarılar, kodlama kuralları vb. İçin özelleştirmeyi bile düşünebilirsiniz .


10
Soru bu değildi. Belirttiğim gibi, çoğunlukla vim kullanıyorum (grep, ctags vb. İle) - Ne kadar iyi olduğunu biliyorum. Ancak birçok programcı
Artyom

1
IDE'ler, Vimend'de iyi yapılandırılması zor olan C ++ sınıfı ile ilgili özellikler için özellikle faydalıdır. Çiğ C, ctags ile tamam.
Ciro Santilli,

6

Ben çoğunlukla Eclipse ile çalışıyorum. Yıllardır büyük memnuniyetle KDevelop kullandım, ancak şimdi çok dilli projeler üzerinde çalışıyorum (C, C ++, PHP, Java, Python, Veritabanı, Web vb.).

Eclipse'in Avantajları: Her şey için birçok araç (versiyon kontrolü dahil); sözdizimi kontrolü ve otomatik tamamlama için çok iyi çalışıyor. Derleme / bina / hata ayıklama yaparken iyi iş. Çok platformlu (Linux, Windows, Solaris, vb.)
Dezavantajları: bazı işlevler veya ayarlar bir kabustur (örneğin, projeyi iş istasyonunuzdan sunucuya dağıtmanız gerektiğinde, Eclipse bir tür önbellek tutar) ve sunucudaki dosyanın 'güncel' olduğunu düşünüyor, dosyanın üzerine yazılmadığını söylüyor). Tutulma çok büyük , CPU Gücünüzü çoğaltabilir ve tüm hafızanızı boşaltır. Daha fazla bilgi için http://www.ihateeclipse.com .

KDevelop hızlı ve C / C ++ ve KDE / Qt projeleri için harika ancak Mercurial desteği gibi bazı işlevlerden yoksun (KDevelop 3.3.4, yeni sürümler için bilmiyorum).


4

Görsel SlickEdit - ticari, herhangi bir iyi araç gibi, "sadece çalışır". Güneşin altındaki her dili, kutudan çıkarılabilir, yapılandırılabilir ve gerektiğinde tamamen programlanabilir şekilde işler, hata ayıklama için GDB'nin etrafına bir gui koyar. Çok büyük projeleri yönetiyor (yaklaşık 1 milyonu oynadığım 5 milyon + SOLC kod üssü için kullanıyorum.) - Geriye kadar çok sayıda ödül kazandı ve o zamandan beri daha iyi oldu. Dene

Eclipse - Java'da programlama yaparken tercih edilen araç, desteklenen her dil için TAMAM. Java programları geliştiren Java geliştiricileri için Java ile yazılmıştır. Ancak her küçük küçük özellik ve ana özellik için eklentilere ihtiyaç vardır. Bir seferde birden fazla dil için "sadece işe yaramaz".


4

Netbeans yavaş, yavaş bir IDE'dir. Biz "dinozor bilgisayarlarını" kullanmıyoruz, ancak bu IDE oldukça uzun bir süredir ASKI OLMAKTADIR. Ağ üzerinden NetBeans IDE'ye erişirsek (örneğin, VNC kullanarak), unut gitsin !!! Gecikme, Netbeans'ı kullanılamaz hale getirecek kadar kötü!

Eclipse'in ilk kullanım için kurulumu korkutucu derecede zor buluyorum, ancak sebat ederseniz, isteyebileceğiniz veya ihtiyaç duyabileceğiniz her şeye sahip bir IDE ile kurulacaksınız (muhtemelen eklentiler yoluyla).

Birden fazla IDE kullanmak istemiyorum ve sizden de şüpheleniyorum. Bütün hatalarıyla Eclipse'i tavsiye ederim.


4

Yani ... Sadece başka bir fikir ekliyorum ama bunu vim kullanıcısı olarak seçebileceğinizi sanmıyorum.

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

her şeyden önce en hafif IDE olacak (işletim sistemi bile diyebilirim) ve en özelleştirilebilir, böylece bazı lisp yapılandırması beyin işleri kaynakları dışında minimum kaynak kullanımıyla her şeyi yapabilirsiniz.

Şahsen ciddi bir projem olduğunda Visual Studio kullanıyorum. Ama linux üzerinde çalışmam gerektiğinde emacs kullanıyorum. (ayrıca hiç qt sevmiyorum)

Ayrıca (çoğunlukla last.fm eklentisini sevdiğim için ve orada clojure desteğini sevdiğim için) linux için güzel bir IDE buldum (hala bazı nedenlerden dolayı emacs'a geçmeye çalışıyorum == 'bazı nedenlerden dolayı) IDEA , C ++ için kullanmamı tavsiye ederim ama belki o da fena değil bu yüzden listenize ekleyebilirsiniz.


1

QT ve CodeBlocks tamam. Son zamanlarda CodeBlocks kullanıyorum.

Makefile projeleri için yapılandırılabilir, kod tamamlama çoğunlukla işe yarar ve MSVS'de olduğu gibi takılmaz, tanımları cayır cayır yanan hızlı gider. İşlev tarama da iyi yapılır.

Bazı ufak tefek sorunlar var, ancak Linux'ta günlük işler için çok iyi, IMHO


0

Linux'ta bir IDE kullanmaya çalıştığım tek girişim 2005'te oldu, ama o zaman hiçbir IDE denemedim (KDevelop, eclipse, Anjuta) hiç iyi değildi, bu yüzden tekrar vim + ctags + gdb'ye gidip Linux kodlaması için kullandım.


Muhtemelen siz bu cevabı bilen sizsiniz: vim'deki başka bir hiyerarşi sınıfında (ebeveyn / çocuk uygulaması) bazı yöntem uygulamasına nasıl gidersiniz.
Sergei

örneğin Eclipse'de kombinasyon, bir yöntem adında Ctrl + T'dir.
Sergei

@ Sergei Üzgünüz, ctags bunu desteklemiyor. YCM gibi bir konuda daha iyi şanslar elde edebilirsiniz: github.com/Valloric/YouCompleteMe
Nemanja Trifunovic
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.