Büyük, çok dilli projeler için IDE (linux çekirdeği gibi)


11

Milyonlarca kez "hangi IDE kullanıyorsunuz" sorusunun sorulduğunu biliyorum. Ama bu bağlamda sorduğunu hiç görmedim. Birden fazla dili ve binlerce dosyayı kapsayan büyük projeler üzerinde çalışırken IDE için bazı öneriler nelerdir.

İyi bir örnek android kaynağıdır. Sadece çekirdek için iyi bir C / C ++ IDE değil, aynı zamanda Java ve kabuk komut dosyaları için de gereklidir. Bu tür bir proje için inşa edilmiş bir şey var mı?

Normalde kullandığım C / C ++ için KDevelop. Bunu seviyorum, ancak linux çekirdeği gibi büyük projeler için kullanılırken patlıyor gibi görünüyor. Ayrıca Java veya python için hiçbir şey yapmaz.

Temelde aradığım şey, linux çekirdeğinin kendisi de dahil olmak üzere büyük projelerle çalışmak için IDE'ler / kurulumlar (yani vim + komut dosyaları) için öneriler.

Düzenle :

Sanırım belirsiz olmuş olabilirim. Tam olarak bir IDE aramıyorum. Gerçekten ilgilendiğim şey, büyük ve birleştirilmiş projelerle çalışmayı kolaylaştıran bir araçtır (araç seti?). Örneğin. Linux çekirdeği birçok makro işlevi tanımlar. Çekirdek ağacında herhangi bir kaynak dosyayı açmak ve o makro tanımını (fareyle ya da vim uzantısı penceresi ya da herhangi bir şey olsun) görebilmek istiyorum.


Özellikle Linux çekirdeğinde gezinmek için LXR (çevrimiçi Linux çapraz referansı) çok yararlıdır. Android için Eclipse tercih edilen IDE'dir, bu nedenle yazarlar bazı enerjileri işleri iyi yapmak için harcadılar.
Gilles 'SO- kötü olmayı bırak'

1
Android ile mi demek istediniz? Veya android çekirdeği / NDK geliştirme?
Falmarri

@Falmarri - Bulduğum kadarıyla, Linux çekirdeği geliştirme özel durumunda, Link + çok popüler görünüyor: sourceforge.net/projects/linkplustest
Guy Avraham

Yanıtlar:


5

Ne tavsiye ederim demek başına herhangi bir IDE's yapışmaz olduğunu. Kodunuzun dosya sisteminde düz dosyalar olarak kalmasına izin verin ve uygulamanız gereken işlemleri uygulamak için bağımsız araçlar (Emacs, GCC araç zinciri, Ctags, vb.) Kullanın. Bu kod temeli IDE bağımsız ve onu çevreleyen dağınıklık (.project dosyaları, vb gibi) tutacak.


2
Sanırım bu benim sorum. Mutlaka bir IDE'ye ihtiyacım yok (tüm özelliklerinde olduğu gibi). Ama görmek istediğim şey çekirdek makrolarının tanımlandığı yer, kod tamamlama ve bunun gibi şeyler. Projeler, derleme süresi bağımlılıkları ve koşullu tanımlarla on binlerce dosyaya ulaşmaya başladığında, vim kullanarak işleri düz tutmak son derece zordur.
Falmarri

1

Sadece deneyimden konuşabilirim, bu yüzden muhtemelen projelerinizi sizin boyutunuzda içermiyor. Code :: Blocks'u C ve C ++ 'da geliştirme için kullanıyorum .

Ancak genel Fikir, git , vim , ctags , vb . Şeyleri akıllıca kullanmak ve her şeyi belirli bir IDE'ye bağlı tutmaktır. İşin püf noktası, geliştiricileri belirli bir IDE kullanmaya zorlamak değil. Projenizdeki herkes istediği geliştirme tekniğini ve programlarını kullanmalıdır.

Büyük miktarda dosyayı yönetmeye gelince, dosya sisteminin işi yapmasına izin verin. Kodunuzdaki yorumları ve klasörleri ve açıklayıcı dosyaları kullanın.


1

Tutulma muhtemelen sizin için en iyi seçim olacaktır. Tüm işletim sistemleri için özelleştirilebilen çok sayıda dil ve teknoloji için eklentilere sahiptir. Eksi olarak java kullanır ve çok fazla bellek gerektirir.


2
Eclipse bunu daha büyük projeler için kullanırken çok güvenilmezdir. Java geliştiricileri buna bağlı, çünkü etrafında çok az alternatif var.
polemon

Sorunsuz bir şekilde büyük bir projeyle kullandınız mı?
tshepang

2
Tutulma ile ilgili sorunum eklenti zihniyetidir. Birçoğu (hala?) Uyumsuz ve çoğunlukla tutarsız kullanıcı arayüzleridir. Java olmayan bir dosyayı düzenlemek gibi "yeni" bir şey yapmak istediğinizde, tüm yüklemeyi çalıştığı kadar dengesiz hale getirme şansı olan bir eklenti indirip yüklemeniz gerekir.
mattnz

1

Visual Slick Edit'i büyük (milyonlarca SLOC), eski çok dilli, çok platformlu, çok geliştirme ortamı için kullanıyorum. Ticari ve pahalıdır (Zamanınızı hesaba katmadıkça). Ciddi Java oturumu için Eclipse'e geçiyorum, ancak Java, C / C ++, Ada, Python, Pearl, Scripts ve diğerlerinde hızlı bir düzeltme / araç için bunu yapabileceğimi bildiğim tek araçtır. Kutu.

Deneme sürümü indirmemek ve deneme yapıp yapmadığınızı görmek için kendinize bir kötülük yaparsınız

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.