it-swarm.dev

Standart bir düzenleyiciye karşı IDE) kullanımını haklı kılan nedir?

Kendimi seçtiğim metin düzenleyicimi (vim, nano, gedit, zehirinizi seçin) herhangi bir IDE geç) çok daha sık kullanıyorum.

Benim ide kısayolları tozlu fark ettikten sonra bu düşünmeye başladı ve merak: bir IDE bir metin editörü yerine sizin için ne haklı ?

Bu nedenle, bir IDE kullanarak ve yalnızca bir düzenleyiciye güvenerek değil için hangi mantığı kullanırdınız?

39
Chris

I: entegrasyon. İyi bir metin editörü kod yazmak için güzel olabilir, ancak programlamanızın çoğu yazmak için harcanmaz; test ve hata ayıklama için harcanır ve bunun için metin düzenleyicinizin derleyiciniz ve hata ayıklayıcı ile entegre olmasını istersiniz. Bu bir IDE'nin en büyük gücü.

70
Mason Wheeler

Bunlar en sevdiğim IDE, IntelliJ, Java, PHP, Javascript, HTML, hatta ActionScript için kullanmayı sevdiğim özellikleridir.

  • Hata denetimi - Kod için canlı yazım denetimi gibi. Kesinlikle çok önemli.
  • Kodda gezinme - Ctrl+click bir işleve, değişkene, tanımına gitmek için yazın. (IntelliJ yukarıdaki dillerin hepsinde çok iyidir)
  • Kod tamamlama - Ctrl+space sürekli ihtiyacım olan sınıf veya yöntem adını doldurmak için. Bu, ton kodlamayı hızlandırır ve hatta ihtiyacınız olan bir şeye bulunduğunuz bağlamdan erişilemediğinde hataları oluşmadan yakalamanıza yardımcı olur. IntelliJ bile kısaltmaları genişletmenize yardımcı olun - NPE yazın, Ctrl+space ve "NullPointerException", "NoPageError" vb. gösterilecek. İsabet Alt+enter _ import otomatik olarak eklemek için de gerçekten güzel.
  • Kod oluşturma - Alıcıları ve ayarlayıcıları oluşturun, birkaç tıklamayla bir arayüzden yöntemler uygulayın.
  • Çok iyi kod renklendirme - IntelliJ sadece standart anahtar kelimeyi değil, dizeyi, değişken ismi renklendirmeyi değil, aynı zamanda renklerin üye değişkenlerini, yerel değişkenleri, parametreleri de renklendirir. ActionScript'te aslında ayarlayıcı/alıcı olan bir değişken bir işlev gibi renklendirilir.
  • Yeniden düzenleme - Hatasız yeniden adlandırma en büyüğüdür. IntelliJ, ayarlayıcıları ve alıcıları veya dizgi kullanımlarını bile yeniden adlandırmada çok iyidir. Tabii ki regex tabanlı arama ve ihtiyacınız olduğunda değiştirme ve "myNumber", "MyNumber" ve "MYNUMBER" yerine "myString", "MyString" ve "MYSTRING" yerine geçmenizi sağlayan bir "büyük/küçük harf koru" seçeneği var bir operasyonda
  • Sürüm kontrolü entegrasyon - SVN kullanıyoruz ve benim favorim IDE VC özellikleri sınıflar olmadan oluşturma, silme, taşıma SVN hakkında düşünmek, geçmişe kolayca göz atmak, çok iyi bir fark aracı, iyi birleştirme yeteneği ve editördeki dosyalara not satırı (satır satır geçmiş gösteren).
  • Bağımlılık içe aktarma - Kaynağınız olan bir üçüncü taraf kitaplığına güvenirken, referans, hata ayıklama vb. İçin koda kolayca gidebilirsiniz.
  • Akıllı yazma - kodu yapıştırma ve otomatik olarak doğru sekme konumuna yapıştırma, uç braketlerinin otomatik tamamlanması, parantezler, tırnak işaretleri vb.
  • Çok iyi Test çalıştırıcısı JUnit, FlexUnit, PHPUnit için
  • Hata ayıklama - elbette. JBoss, Jetty ve hatta Flash hatalarını ayıkla. Doğrudan koda gitmek için Ctrl + yığın izlerini tıklatın.

Verebileceğiniz kod renklendirme gibi şeyler, ancak iyi kod renklendirme çevre görüşü gibidir - tam Word'ü tanımlamak için bu ekstra saniyeyi almadan önemli şeylere odaklanmanızı sağlar.

IntelliJ ayrıca Ctrl+space değişken adları önermek için. Java'da yeni bir EventMessageItem değişkeni bildirir ve Ctrl+space, "eventMessageItem", "eventMessage", "item" vb. önerecektir.

Tüm bunlar bana yolumu kodum ve mimarim hakkında düşünmek için daha fazla zaman veriyor ve biçimlendirmeyi düzeltmek, dosya sistemi ile uğraşmak, kopyayı düzeltmek hakkında daha az düşünmek -ve-yapıştır hataları, uygulamalar arasında geçiş yapma, belgelerin takibi vb. Bu tür verimlilik artışlarına nasıl hayır diyebileceğinizi bilmiyorum.

49
Nicole

IDE kodunuzu bir editörden çok daha iyi anlıyor. Bu, örneğin, Java bir Tanrı gönderimi,

21
user1249
[To the IDE] You had me at intellisense/autocomplete
18
JohnFx

Üretkenlik. Mantıklı olan başka bir gerekçe var mı? Benim için, programlama sırasında gerçekleştirdiğim birçok işlevi merkezileştiren iyi tasarlanmış bir IDE) - kod oluşturma ve düzenleme, kaynak kontrolü kullanma, hata ayıklama, proje yönetim araçlarıyla etkileşim kurma, iletişim kurma diğer programcılar, belge oluşturma, otomatik testler yapma - üretkenliğimi azaltan süreç sürtünmesini önemli ölçüde azaltır.

Ayrıca, her bir aracı ayrı ayrı nasıl kullanacağımı bilmem gerekmiş gibi görünsem de, bunu yapmak istemiyorum. En azından benim için, sağ fare tıklaması bir CLI açmak ve yazmak için sonsuza kadar tercih edilir.

Ben çok kullandım, ama tekrar tekrar döndüğüm IDE Visual Studio, Wing IDE ve NetBeans vardır. Tüm programlama zaman harcadığım önemli bir değer katmak.

14
Adam Crossland

Tarihsel olarak, IDE'ler tek görevli bir bilgisayarda benzersiz kolaylıklar sağlamıştır. İlk C derleyicim edit-compile-run döngüsünde aşağıdaki adımları gerektirdi:

  • Düzenleyiciyi başlat
  • Programı düzenle
  • Programı kaydet, editörden çık
  • Derleme programı
  • Derlenmiş programı birleştir
  • Bağlantı derlenmiş ve birleştirilmiş program
  • Programı çalıştır

cP/M sistemimde. (Bir toplu iş programı disk sürücülerim daha büyük olduğu için bunların çoğunu otomatik hale getirebilirdim.)

Turbo Pascal'ı aldığımda, derleyici ve hata ayıklama sırasında editörü kullanılabilir tutabilmekten çok mutlu oldum.

Bence, IDE'leri ilk etapta popüler yapan şey bu.

9
David Thornley

LISP'de kod yazarsanız Emacs, yöntem parametrelerine ve otomatik tamamlamaya bakmak gibi Intellisense benzeri özelliklere sahiptir, bu nedenle orijinal IDE olduğunu söyleyebilirsiniz. Bir programı birden fazla görev için kullanabilmek de güzeldir (genel olarak düzenleme, Kabuk/komut istemi, haber okuma).

Genel olarak, editör vs. IDE soru programlama diline bağlı görünüyor. Gördüğüm kadarıyla, Ruby ve Haskell kodlayıcıları, örneğin, favori metin düzenleyicisini tercih ediyor gibi görünüyor.

7
Larry Coleman
  • Tek tıkla derleme
  • Hata ayıklama
  • Kod şablonları
  • Kod tamamlama
  • Sürüm kontrolü ve yeniden düzenleme araçlarıyla entegrasyon
  • Daha basit birim testi

birkaç isim

4
ysolik

Yanıtın, hangi programlama dilini kullandığınıza ve ne kadar iyi olduğunuza bağlı olacağını düşünüyorum. Java an IDE gibi ciddi bir şey yapıyorsanız şarttır. JS veya Ruby IDES fazla kullanılmıyor.

Notepad ++ ve geliştirmelerim için bir dizi Shell betikleri (yedeklemeler, git taahhütleri) kullanıyorum ve mükemmel çalışıyor.

3
Eastern Monk

"Editörler" lehine bazı argümanlar:

  1. Bir IDE henüz geliştirilmemiştir veya hiçbir zaman geliştirilmeyecektir.
  2. Bir düzenleyici ile "daha hızlı" ve daha cerrahi olarak değişiklik yapabilirsiniz.
  3. Çok daha az kaynağa ihtiyaç duyuyor (aynı anda açık olanların kullanımı çok daha kolay)
  4. Çünkü açıklananlar gibi bazı sorunları çözmenin tek yolu burada .
  5. (kişisel) Bazen her şeyi yazmak zorunda olduğumda, daha fazla düşünmeye çalışıyorum ve yazdıklarımla daha fazla ilgileniyorum. Birçok kez örneğin bir yöntem (formaqString), bir IDE kullanarak fark edilmeyecek bir yazım hatası buldum.
  6. Yalnızca klavyeyi kullanarak çalışmayı kolaylaştırır (hız/akış)
  7. Makro veya diğer zaman kazandırıcıları kullanma zekası.

Çalışmak için her gün bir IDE kullanıyorum, aksi takdirde Java/C # yazmak zordur.

(2) ile karşılaştırıldığında (3): Temelde yalnızca dosyaları uzaktan düzenleme (ssh/uzak masaüstünde) ve uzak bir sunucunun yapılandırmasında veya dosyalarında minimum değişiklikler yapma seçeneği.

3

IDE test/hata ayıklama/entegrasyon ve KEDIT'i düzenleme için kullanıyorum çünkü IDE düzenleme yeteneklerinde ciddi bir eksiklik var.
.NET IDE harici düzenlemeleri tanıdığı için, tek yapmam gereken düzenleyiciye kaydetmek ve kaynağı yeniden yüklemek için Sor'u kabul etmektir. hata ayıklama yetenekleri aynı anda.
Diğer IDE'ler için KEDIT'i şablon işlemci ve kaynak arama programı olarak kullanıyorum ve bu kaynağı IDE'ye kopyalayıp yapıştırıyorum.

2
Dave

Elbette dilinize bağlı olarak, bazı IDE'ler görsel Form/Pencere tasarımcılarını da içerir.

Belirtilmesi gerekmekle birlikte, bir programcının metin düzenleyicisi ile bir IDE iyi tanımlanmış bir çizgi değildir.) Birçok editör derleme, kod tamamlama, hata ayıklama vb. İşlemek için genişletilebilir.

2
GrandmasterB

IDE için:
- gelişmiş özellikler kutudan çıkarılmış.
- bazı özellikler çerçeveniz için o kadar özel ki editörlerin eşdeğeri yok.

Editör için:
- Ellerini klavyede tutmak.
- geliştirme ortamınız tüm sistemlerde aynı
- editörünüz için daha iyi senaryo yazımı
- IDE bazı özellikleri harici araçlar veya komut dosyalarıyla kullanılabilir. (intellisense, go tanım, referansları bul)

1
mike30

Kısa öğrenme eğrisi. Bu kadar.

0
nate c

Gerçekten tavsiye ederim tek hata ayıklayıcı. An IDE gerçekten eklenmiş başka gubbin yükü olan bir düzenleyicidir, ancak Komut İstemi'ne make (veya yukarı ok + enter) yazarak derleyebiliyorsanız, need bir IDE Explorer'da sağ tıklayarak ve doğru menü öğesini seçerek SCM'ye bağlanabiliyorsanız IDE'ye ihtiyacınız yoktur.

Şimdi bazı insanların yeniden düzenleme desteği (ilk kez kodunuzu yazın :)) veya bazı entegre GUI tasarımcısı (ancak o zaman bile, Visual Studio'yu kullanarak VS'de crappy XAML desteğini değil, GUI çalışmamı yapmak için İfade kullanıyorum) ) ve birçok kişi ihtiyaç intellisense ve autocomplete (özellikle Java ve C # godallmightlylong adları olan ayrıntılı diller için)).

Ama benim için, GUI hata ayıklayıcısı IDE'yi kullanmanın tek gerçekten iyi nedenidir. Hala bir 'komut satırı' hata ayıklayıcısı (iyi, windbg) kullanıyorum ama günlük, VS yerleşik olduğunu.

0
gbjbaanb

Bir IDE'nin faydaları vardır. Tüm diller kapsamlı bir IDE ölçekleri gerçekten bahşiş etmek için değildir veya söz konusu bir dil için bir tane oluşturmak yasak olabilir.Neden IDE istemesiniz?

  • Dil, IDE pop-up'larında geliştirme hızını artırabilecek zengin bir standart API'ye sahiptir.
  • Çok fazla kazan plakası kodu var. (Zorla deneme/yakalama, alıcılar/ayarlayıcılar, vb.)
  • Otomatik tamamlama, kodlama gereksinimlerinizi doğru bir şekilde karşılayabilir
  • Dil birimi test paketiniz söz konusu IDE'ye entegre edilmiştir.
  • IDE, en iyi uygulamalarla ilgili çok sayıda dil ortak kütüphanesinin farkındadır ve destekler.
  • İş mo'betta yapmak için eklentiler
  • O kadar ağır değil, sisteminizi yavaşlatıyor
  • Yüksek düzeyde entegre hata ayıklayıcı? Bu yardımcı olur.

Sorun, tüm dillerin kapsamlı bir IDE'den gerçekten büyük bir verimlilik kazancı sağlaması değildir. Yaptığım bazı işler için IDE'ler kullanıyorum (Java, C #) ama diğerleri için değil (Python, Ruby, Coldfusion). Her şey gerçekten dengeleyici bir eylem. Bazı diller için bu kadar kapsamlı bir paket gerekmez.

Her biri için IDE'ler var mı? Elbette. Her zaman birine ihtiyacınız var mı? Pek sayılmaz.

0
Rig