Bir IDE'nin Özellikleri Genel Amaçlı Bir Editörden Daha Yararlı Olmasını Sağlar


10

Lua dili için bir IDE yazıyorum. Birçok programcının IDE'yi kullanmaktan hoşlanmadığını ve şu anda vogue olan VIM'i, SCiTE'yi veya tercih etmediğini düşünüyorum.

Biraz zihin paylaşımı kazanmaya çalışırken, bir IDE'nin genel amaçlı bir editör için cazip bir alternatif haline getirebilecek özellikleri ile ilgileniyorum.

"Olması gereken" bir IDE konuşmak için bir "katil uygulaması" var mı?

Bunun tersi olarak düşünülebilir

IDE'de standart olmayan VIM'in en kullanışlı özellikleri

Birisi sormadıkça IDE'imle bağlantı kurmayacağım - ancak adımı Google'a yazıp bulabilirsiniz.

DÜZENLEME: IDE'm aslında mevcut bir IDE için bir dil eklentisidir, bu nedenle ana bilgisayar IDE'sinden birçok özelliği miras alıyorum - bir düzeyde dil desteğim kendi başına bir IDE olsa da - en azından dile özgü yönler kadar. endişeli.

Yanıtlar:


19
  1. Yeniden düzenleme olanakları (Yeniden adlandırma bağımlılıkları etkiler / Çıkartma Yöntemi / Çıkartma arayüzü vb.)
  2. Intellisense (veya başka bir kod tamamlama işlevi)
  3. Hata kontrolü (IDE aslında sembollerini biliyor)
  4. Kurulum zorluğu yok
  5. Entegre derleyici
  6. Entegre hata ayıklayıcı
  7. Referanslara / beyanlara ve onlardan daha iyi gezinme
  8. Proje şablonları / dosya şablonları
  9. GUI kurucuları
  10. Isıcam plakasını otomatik olarak üretebilir
  11. Sezgiseldir ve tüm sihirli anahtarları bilmeden kullanılabilir (hey, bu yüzden GUI'ler ilk etapta başarılı oldu)

Genel olarak, @Thomas Owens'ın belirttiği gibi, IDE'nin en büyük avantajı, bir bütün olarak sinerji etkileri ile araç entegrasyonudur, ancak yine de sezgisel ve kullanımı kolaydır.


3
Genel olarak, bir bütün olarak araç entegrasyonunu söyleyebilirim - sürüm kontrolü, sürekli entegrasyon sunucusu, hata izleyici, derleyici, hata ayıklayıcı, profiler, statik analiz ve benzeri ile entegrasyon. Derleyici ve hata ayıklayıcı entegre büyük bir anlaşma olduğunu söyleyebilirim, ama her şey güzel, temiz küçük bir pakette sahip olmak yardımcı olur.
Thomas Owens

@Thomas Owens: Çok doğru, ancak kaynak kontrolünü listelemedim, çünkü kaynak kontrolünü vim'e kolayca entegre edebilirsiniz, bu yüzden bu büyük bir anlaşma değil, sonuçta sadece bir komut satırı çağrısı ve örneğin Tortoise daha iyi gibi AnkhSVN. Profilcileri listelerdim ama tüm IDE'ler bir tane ile gelmez (VS, afaik kutusundan çıkmaz). Metrikler güzel bir nokta, ama yine de, sadece en yeni VS afaik sunuyor.
Falcon

Eclipse ve NetBeans'te, bahsettiğim şeylerin çoğu eklenti tabanlıdır, ancak vim ve emac'lar için de farklı yeteneklere sahip birçok eklenti (veya modül veya uzantı) vardır. Bence tüm araçlarda hoş olan budur - üretken olmanızı istediğinizi seçmek kolaydır.
Thomas Owens

Sanırım bu listenin birçoğu bir dereceye kadar. Ayrıca, kod biçimlendirme. ve hatta özel API'ler ve kütüphaneler için entegre yardım desteği. Listeniz oldukça kapsamlı. Belki de sonunda kişisel tercihe iniyor ve yapabileceğim çok fazla şey yok. (Benim IDE bir IntelliJ eklentisidir - belki bazıları için çok fazladır)
sylvanaar

2
Refactor / Rename gibi şeylerin çoklu dosya (proje çapında) olduğunu açıklığa kavuşturacağım - bir yöntemi veya değişkeni yeniden adlandırdığımda, PyCharm (örneğin) yeniden adlandırmayı yalnızca şu anda düzenlenmiş olan değil, projedeki her dosyaya uygulayacaktır. editör olarak yapardı. Aksi takdirde, kesinlikle bu listeye katılıyorum. Yakın zamanda PyCharm'ı satın aldım ve kullanmaya başladım ve ne kadar çok öğrenirsem, o kadar çok hoşuma gidiyor (ara sıra aksaklıklara rağmen :)
Cyclops

8

Bir IDE ve genel bir metin düzenleyici arasındaki en büyük fark, IDE'nin birlikte çalıştığınız programlama dilini anlaması ve işlevleri / yöntemleri otomatik olarak tamamlaması, yanlış tür ve yanlış dilbilgisi gibi hataları kontrol edebilmesidir. IDE'de, programınızı IDE'nizdeki komutlarla derleyip çalıştırabilmeniz için bir derleyici gibi tümleşik araçlar da bulunur.

Ancak VIM'in genel bir metin düzenleyicisinden daha fazlasını yapabileceğini düşünüyorum, belki bazı durumlarda IDE olarak görebilirsiniz.


2
+1 "dili anlamak" için. Sanırım diğer her şey bundan takip ediyor.
Dean Harding

evet - dil desteği uygulamam hem sözdizimsel hem de anlamsal olarak farkında.
sylvanaar

4

Yeniden Düzenleme Araçları

Kodlama için favori genel amaçlı metin düzenleyicimi kullanmamamın tek nedeni . Çünkü ortak kod düzeltmelerini sık kullandığınız genel amaçlarınız için makroya dönüştürmeniz gerekiyorsa, bu araçların yüklü olduğu bir IDE de kullanıyor olabilirsiniz.

Çoğu IDE'nin emacs'ın sahip olduğu kullanışlı işlevselliğe sahip olduğunu söyleyecek en az şey, sadece bazı keyfi tuş vuruşu kombinasyonuna gömüldü.


2

Metin düzenleyicide bulunmayan bir IDE özelliğine sahip olmak güzel: 1. Intellisense (otomatik tamamlama ve öneriler)

  1. Derleyici ile entegrasyon

  2. Hata ayıklama sistemi ile entegrasyon

  3. Sürüm kontrolü ile entegrasyon

  4. Veritabanı sistemi ile entegrasyon

  5. Anında sözdizimi denetimi ve yardımı

  6. Sözdizimi renklendirme

  7. Projeleri yalnızca kod dosyalarını değil

  8. Bir yöntemin nerede kullanıldığını bulur ve bir grafik çizer (bugüne kadar çoğu IDE'de bulunmaz)

  9. Bileşenleri kaydeder (dilinize bağlı olarak)

  10. GUI Editör (ler) i ile entegrasyon

  11. Kod segmentlerini yer imlerine ekleyin

  12. Geliştiriciler arasında kaynak güvenliği ve paylaşım

  13. Önceki sürümlere proje geri yükleme

  14. Çoklu proje konfigürasyonları (test, geliştirme, üretim)

  15. IDE özellikleri yapılandırılabilir

  16. Akıllı kaynak kodu karşılaştırması

  17. Değişkenlerin, yöntemlerin vb. Otomatik yeniden adlandırılması.

Yeni bir IDE oluşturmanın yararlı olduğunu düşünmüyorum.


Mevcut bir IDE'nin bir eklentisi olduğunu söylemeliydim. Sorumu düzenleyeceğim.
sylvanaar

2

Emacs gibi tamamen özelleştirilebilir bir editör ile bir IDE'ye sahip olmak isterim. Eklentileri yazmak ve daha sonra bunları test etmek için IDE'yi yeniden başlatmak istemiyorum. Bir komut dosyası dilinde eylemleri tanımlamak istiyorum (örneğin, python, ruby) ve bunları hemen kullanabilir, anahtar dizilere bağlayabilirim. Dil, tüm çalışma alanını değiştirebilmelidir.


1

3 şey her zaman belirli bir IDE kullanıp kullanmayacağım konusunda karar verir:

  • Otomatik tamamlama
  • Görsel bir GUI oluşturucu
  • Bir çeşit entegre ORM için veri araçları

Genellikle bu özelliklerin çoğuna sahip olan ya da en iyi performansı gösteren IDE'yi kullanıyorum. Bunlar, kazan plakası kodlamasını (GUI ve DAL) azaltarak ve düşünme süresini azaltarak (otomatik tamamlama, çok fazla API yığılmasını atlamama izin verir) üretkenliği en çok arttıran üç şeydir.


Yeniden düzenleme araçlarını GUI üreticilerinden çok daha yüksek sıralardım. Tüm programlar GUI var, ama onlar olabilir hepsi bir noktada üstlenmeden tabi.
Hayal kırıklığına

@FrustratedWithFormsDesigner - Sanırım her birine kendi. Yeniden düzenleme araçlarını nadiren kullanıyorum. Onlara karşı gerçekten hiçbir şeyim yok; Ben hiçbir şey kırmamak için sık sık elle elden geçirmeyi tercih ediyorum.
Morgan Herlocker

Bunu ben de yapardım, sanırım ilk başta bu tür araçlara güvensizdim. Ve eğer doğru şekilde uygulanmazlarsa, el ile yeniden düzenleme yapmak genellikle daha iyidir, ancak bu araçlar doğru yapıldığında İNANILMAZ !
Hayal kırıklığına
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.