İnceleme: 6 Python IDE'si mat

Bir dilin popülerliğini ve başarısını ölçmek için kullanabileceğiniz tüm ölçütler arasında kesin bir faktör, o dil için mevcut geliştirme ortamlarının sayısıdır. Python'un son yıllarda popülaritesinin artması, hem genel programcıya hem de bilimsel çalışma ve analitik programlama gibi görevler için Python kullananlara yönelik araçlarla güçlü bir IDE desteği dalgası getirdi.

Python destekli bu altı IDE, kullanım durumlarının gamını kapsar. Bazıları, bir eklenti aracılığıyla Python desteğine sahip olan veya Python'a özgü uzantılarla başka bir ürünün yeniden paketlendiği çok dilli IDE'lerdir. Her biri biraz farklı bir Python geliştirici kitlesine fayda sağlar, ancak çoğu evrensel çözümler olarak faydalı olmaya çalışır.

Günümüzde pek çok IDE, belirli bir dilde gelişimi desteklemek için içten dışa yazılan uygulamalar yerine, belirli diller ve görevler için eklentilerle donatılmış çerçevelerdir. Bu amaçla, IDE seçiminiz, aynı aileden başka bir IDE ile deneyiminiz olup olmadığına göre belirlenebilir.

İlgili video: Python neden programlamayı kolaylaştırır?

Böyle bir deneyime sahip olmayanlar için PyCharm, başlamak için en iyi yerlerden biridir. Yeni gelenler için dostça, ancak özellik setinde hamstrung değil. Aslında, burada profili verilen tüm IDE'ler arasında en kullanışlı özelliklerden bazılarına sahiptir. Bu özelliklerin çoğu, yalnızca ürünün ücretli sürümünde mevcuttur, ancak ücretsiz sürümde, yeni başlayan bir geliştiricinin başlamasına yardımcı olacak pek çok şey vardır.

LiClipse ve Visual Studio için Python Araçları (PTVS), sırasıyla Eclipse ve Microsoft Visual Studio'yu yakından tanıyan geliştiriciler için iyi seçimlerdir. Her ikisi de, Python'u oldukça güzel bir şekilde bütünleştiren, tam gelişmiş geliştirme ortamlarıdır. Bununla birlikte, aynı zamanda çok fazla bilişsel ek yük ile gelen geniş, karmaşık uygulamalar. Bunlardan herhangi birinde ustalaştıysanız, Python çalışması için harika bir seçim olduğunu göreceksiniz.

ActiveState'in Komodo IDE'sinin Python enkarnasyonu, Komodo IDE'yi başka bir dil için zaten kullanmış olanlar için doğaldır ve çekiciliğini genişletmesi gereken benzersiz özelliklere (normal ifade değerlendiricisi gibi) sahiptir. Komodo, hem acemilerden hem de uzmanlardan yakından bakmayı hak ediyor.

Spyder, genel olarak Python için bir geliştirme platformu olmaktan ziyade, IPython veya Anaconda gibi dağıtımlarda diğer bilimsel bilgi işlem araçlarıyla çalışmak için en uygunudur. Son olarak, IDLE en iyi hızlı ve kirli komut dosyası oluşturma için ayrılmıştır ve bu durumda bile, bir Python sözdizimi eklentisine sahip bağımsız bir kod düzenleyicinin arka koltuğunu alabilir. Bununla birlikte, IDLE ihtiyacınız olduğunda her zaman yanınızda.

BOŞTA

Python'un her kurulumunda bulunan geliştirme ortamı olan IDLE, varsayılan Python IDE olarak düşünülebilir. Ancak, IDLE hiçbir şekilde tam gelişmiş bir IDE'nin yerini tutmaz; daha çok süslü bir dosya editörü gibi. Yine de IDLE, Python geliştiricilerinin dile ayak uydurması için varsayılan seçeneklerden biri olmaya devam ediyor ve Python'un her sürümünde, özellikle Python 3.5 ile aşamalı olarak iyileştirildi. (IDLE'yi iyileştirmeye yönelik son çabalarla ilgili ilginç tartışma için bu sayfaya bakın.)

IDLE, tamamen varsayılan bir Python kurulumuyla birlikte gelen bileşenlerle oluşturulmuştur. CPython yorumlayıcısının kendisinin yanı sıra, bu Tkinter arayüz araç setini içerir. IDLE'yi bu şekilde oluşturmanın bir nimeti: Tutarlı bir dizi davranışla platformlar arası çalışır. Bir dezavantaj olarak, arayüz çok yavaş olabilir. Örneğin, bir komut dosyasından konsola büyük miktarda metin yazdırmak, komut dosyasının doğrudan komut satırından çalıştırılmasına göre çok daha yavaştır.

IDLE'nin birkaç acil kolaylığı vardır. Python için yerleşik bir okuma-değerlendirme-yazdırma döngüsü (REPL) veya etkileşimli konsol içerir. Aslında, bu etkileşimli kabuk, boş bir düzenleyici yerine IDLE başlatıldığında kullanıcıya sunulan ilk öğedir. IDLE ayrıca Ctrl-Space tuşuna bastığınızda anahtar sözcükler veya değişkenler için öneriler sağlamak gibi diğer IDE'lerde bulunan birkaç araç ve entegre bir hata ayıklayıcı içerir. Ancak bu özelliklerin çoğu için uygulamalar, diğer IDE'lere kıyasla ilkeldir ve Tkinter'in sınırlı UI bileşenleri seçimi ile gizlidir. Ve IDLE için mevcut olan üçüncü taraf eklentileri koleksiyonu (böyle bir proje IdleX'tir), diğer IDE'lerde bulacağınız kadar zengin değildir.

Özetle, IDLE iki senaryo için en iyisidir. Birincisi, hızlı bir Python betiğini birlikte kesmek istediğinizde ve bunu yapmak için önceden yapılandırılmış bir ortama ihtiyacınız olduğunda. İkincisi, bacaklarını yeni alan yeni başlayanlar içindir. Yeni başlayanların bile hızlı bir şekilde daha sağlam bir seçeneğe geçmesi gerekecek.

örümcek

Spyder, "Bilimsel PYthon Geliştirme Ortamı" nın kısaltmasıdır. Python ile bilimsel bilgi işlem için bir çalışma tezgahı olarak kullanılması amaçlanmıştır ve bu, özellik setine, paketlemeye ve IDE'nin genel davranışına yansır. Spyder, genel Python geliştirme için yararlı özelliklere sahiptir, ancak esas olarak IPython ve bilimsel bilgi işlem paketleriyle çalışmadığınız sürece, muhtemelen farklı bir IDE ile daha iyi durumda olursunuz.

Spyder'ı genel amaçlı bir Python geliştirme ortamı olarak kullanmamanın en büyük nedeni, özellik seti değil, kurulum sürecidir. Spyder, Visual Studio veya PyCharm gibi bir ürün biçiminde bağımsız bir yürütülebilir dosya olarak teslim edilmez. Bunun yerine, bir Python paketi olarak kurulur. Spyder'a giden en kolay yolunuz, Continuum Analytics'in Anaconda'sı gibi önceden yüklenmiş olarak gelen bir Python dağıtımını kurmaktır.

1. Uzantı olarak kullanılabilir, ancak yalnızca sözdizimi denetimini destekler. 2. Eclipse eklentisi olarak mevcuttur. 3. Ticari versiyonda mevcuttur. 4. Entegrasyon talimatlarına bakın. 5. Ana bilgisayarda kurulu sürüm kontrol sistemlerini kullanır.
  BOŞTA Komodo LiClipse PyCharm PTVS örümcek
Cython desteği Hayır Evet (1) Hayır Evet: 3) Hayır Hayır
Sürüm kontrolü Hayır Evet Evet Evet Evet Evet (5)
Grafik hata ayıklayıcı Hayır Evet Evet Evet Evet Hayır
IPython desteği Hayır Hayır Hayır Evet Evet (4) Evet
Makrolar Hayır Evet Evet (2) Evet (2) Evet Hayır
Birden çok tercüman Hayır Evet Evet Evet Evet Evet
Yeniden düzenleme Hayır Evet Evet Evet Evet Hayır
Veritabanı entegrasyonu Hayır Evet Evet (2) Evet: 3) Evet Hayır
HTML / CSS / JavaScript Hayır Evet Evet Evet Evet: 3) Hayır

Spyder, geleneksel Python konsolunun yerini alan IPython'u içerir. IPython'a komut yazdığınızda, sonuçlar etkileşimli olarak incelenebilir. Her komut, bir "hücre" veya çıktısının saklanıp harmanlanmasını sağlayan bir kod parçası olarak değerlendirilebilir.

Spyder, hücre davranışlarını kod düzenleyicisine entegre ederek buna katkıda bulunur. Herhangi bir Python betiğine özel olarak biçimlendirilmiş yorumlar eklerseniz, bunları hücrelere bölebilir ve bu hücreleri IPython arayüzünde herhangi bir sırayla çalıştırabilirsiniz. Bu şekilde, hücreleri daha sonra bir IPython not defterine yerleştirmek üzere prototiplemek için Spyder'ı kullanmak kolaydır.

Spyder, hata ayıklama için Python'un yerleşik Pdb hata ayıklayıcısını kullanır. Pdb için komut satırı arabirimi, Winpdb grafik hata ayıklayıcısını isteğe bağlı bir eklenti olarak yükleyebilmenize rağmen, PyCharm veya LiClipse'de bulunan daha karmaşık grafik hata ayıklayıcılardan çok uzaktır. Ne yazık ki, Winpdb'yi Python 3 ile kullanamazsınız, çünkü hala yalnızca Python 2'de (özellikle wxPython) mevcut olan paketlere bağımlılıkları vardır. Bu amaçla, çoğu insan Pdb ile sıkışıp kalacak.

Spyder ayrıca Git ve Mercurial gibi sürüm kontrol sistemleriyle entegrasyonunda diğer IDE'lere kıyasla sınırlıdır. Başlatılmış bir proje havuzunda çalışıyorsanız, o projedeki dosyalar havuz için sağ tıklama bağlam menüsü öğelerini gösterecektir. Bununla birlikte, doğrudan Spyder'da yerleşik bir sürüm kontrol mekanizması yoktur; Yürütülebilir dosyaları sistem yolundan kullanılabilen uygun sürüm kontrol uygulamasının bir sistem düzeyinde zaten kurulu olması gerekir. Spyder, kullanıcı arayüzünde depoları yönetmek için araçlar da içermez. Depoları kendiniz yönetme alışkanlığınız varsa, bu eksiklikler o kadar da kötü değildir, ancak değilseniz ek engeller oluştururlar.

Spyder, genel Python geliştirme için yararlı özelliklere sahiptir. Gözüme hemen çarpanlardan biri, Spyder'ın arayüzündeki değişken kaşif bölmesiydi. IPython'a komutlar yazarken, oluşturulan tüm değişkenler orada kaydedilir ve etkileşimli olarak incelenebilir. Diğer bir kullanışlı araç ise Kullanıcı Modülü Silici'dir. Etkinleştirin ve Python yorumlayıcısı bir Python betiği çalıştırdığında tüm modülleri sıfırdan yeniden yükleyecektir. Bu şekilde, bir modülün kodunda yapılan herhangi bir değişiklik, tüm uygulamayı yeniden başlatmak zorunda kalmadan çalışan bir programa uygulanabilir.

ActiveState Komodo IDE

ActiveState'in IDE ürünleri neredeyse her ana dil için sürümler içerir. Şirketin buna yaklaşımı biraz LiClipse'in çalışma şekline benziyor: Temel ürünü (bu durumda Komodo IDE) alın ve Python geliştirmesi için eklentilerle donatın.

Komodo, Komodo'nun diğer diller için enkarnasyonlarına aşina olanlar için en uygun olanıdır. Bu tür deneyime sahip kişiler, Python ürününe dalmakta zorluk çekmeyecekler. Eğer soğuk geliyorsan, kayda değer bazı UI tuhaflıkları var. Örneğin, uygulama menü çubuğu varsayılan olarak görünmez; Göstermek için sağ üstteki hamburger menüsünü tıklamanız veya Alt tuşuna dokunmanız gerekir. Konuları temiz ve basit tutmak içindir, ancak bazı zevkler için fazla minimalist olabilir.

Öte yandan, arayüz seçeneklerinden bazıları hemen çekici. Düzenlediğiniz dosyanın herhangi bir bölümüne bir bakışta atlamanıza olanak tanıyan, düzenleyicide kodun küçültülmüş bir önizlemesi olan "mini haritayı" özellikle beğendim. LiClipse benzer bir özelliğe sahiptir, ancak Komodo'nun uygulaması ile çalışmak daha kolaydır.

Çoğu Python IDE'si Python'a özgü sözdizimi denetimi veya kod yazımı gibi özelliklerle donatılmıştır. Komodo IDE tüm bunlara sahiptir, ancak aynı zamanda dilin 2. ve 3. sürümlerini desteklemek için tasarlanmıştır. Örneğin, bir Python kabuğu başlatmak istiyorsanız ve sistem yolunuzda Python'un her iki sürümü için de tercümanlarınız varsa, her iki sürümü de açıkça seçebilirsiniz. Python 2 ve Python 3'te belirli bir ifadenin davranışlarını yan yana hızlı bir şekilde test etmem gerekti ve bu, bunu yapmanın kullanışlı bir yoludur.

Komodo, bir uygulama için birden fazla çalıştırma veya hata ayıklama yapılandırması uygulama seçeneği sunar, ancak LiClipse'deki benzer bir özellikten biraz daha az esnektir. Bir uygulamayı başlattığınızda, programa uygulamanız için size bir dizi profil verilir. Profil seçiciyi devre dışı bırakabilir ve doğrudan bir profil çalıştırmaya geçebilirsiniz, ancak devre dışı bırakma belirli bir proje için değil, yalnızca uygulama çapında yapılabilir. LiClipse'in belirli bir profili seçebileceğiniz veya tek bir tıklama ile en son kullanılan profili başlatabileceğiniz araç çubuğu açılır menüsünü tercih ediyorum.

Gerçekten harika bir katılım, düzenli ifade araç setidir. Bu aracın bir bölmesine normal bir ifade yazın, ikinci bölmede uygulamak için bazı örnek veriler sağlayın ve sonuçlar üçüncü bir bölmede görünür. Araç aynı zamanda Python dahil olmak üzere birden çok regex çeşidini destekler ve hatta size eşleştirme, bölme ve değiştirme işlemlerinin sonuçlarını gösterir. Çalışan normal ifadeler oluşturmakla her zaman mücadele ediyorum, bu yüzden bu araç bir nimettir.

Kullanıma hazır diğer bir kullanışlı özellik, Python için ortak kod parçacıkları kataloğudur. Örneğin, “yürüyün” üzerine tıklayın ve editör os.walk, sözdizimi ve kullanımını önceden hatırlayamadığım işlevlerden biri olan dizinlerde gezinmek için Python'un işlevini kullanmak için standart kodu ekler . Diğer diller de dahildir. Örneğin, standart yayınlı HTML'yi hazırladığınız bir Django şablonuna kaydırmanız gerekirse, Komodo size yardımcı olur.

Varsayılan Python dağıtımı, SQLite desteği ile birlikte gelir. Komodo IDE, SQLite veritabanları için yerleşik bir gezgin sağlayarak bunu tamamlar. MySQL veya Microsoft SQL Server için sağlanan "çalışma tezgahı" masaüstü uygulamalarının basitleştirilmiş bir sürümü gibidir. Arayüz hantal ve çekici değildir, ancak bir veritabanının hızlı ve kirli olarak incelenmesi veya yerinde düzenlenmesi için mükemmel şekilde uygundur. Tam gelişmiş bir veritabanı IDE'si olarak hizmet etmesi amaçlanmamıştır.

Özellikle Python'u hedeflemeseler bile, Komodo'da birçok yararlı özellik bulacaksınız. Makro kaydedici, bir uygulamayı başlatırken hangi uygulama profilinin kullanılacağını seçmek gibi bazı eylem türlerini kaydetmese de, genel eylemleri kaydetmenize ve oynatmanıza olanak tanır. Diğer bir özellik ise Komodo kullanıcıları arasında gerçek zamanlı işbirliğine izin verir, ancak hizmete erişmek için ActiveState hesaplarına kaydolmaları gerekir.

LiClipse 

Eclipse IDE genellikle yavaş ve aşırı yüklenmiş olmakla eleştirilir, ancak geniş dil desteği ve geliştirme eklentileri galerisi onu güçlü ve değerli bir araç haline getirir. Python, Eclipse'de PyDev eklentisi aracılığıyla desteklenir. Eclipse'i Python geliştirmeden başka bir amaçla kullanıyorsanız, yapacağınız en iyi şey LiClipse'i kapmaktır. (Bu inceleme boyunca LiClipse'i LiClipse ve PyDev tarafından birlikte sağlanan özellikler paketinin kısaltması olarak kullanacağım.)

LiClipse, Eclipse'in PyDev ile yeniden paketlenmesinin yanı sıra, kullanıcı deneyimini geliştirmek için bir dizi diğer Eclipse bileşenidir. LiClipse başlatıldığında, LiClipse markasını ve simgelerini engelleyerek, Eclipse'in normal sürümü gibi görünür ve davranır, bu nedenle deneyimli Eclipse kullanıcıları, çalışma alanını beğenilerine göre yapılandırma konusunda fazla sorun yaşamamalıdır. Eğer ediyorsanız değil Eclipse ile deneyimli, sen Eclipse'nın çalışma alanı (Eclipse bu yönü rutin eleştiriliyor) nasıl çalıştığını öğrenmek için biraz zamana ihtiyacı vardır. Bu anlamda LiClipse, Eclipse ile zaten rahat olan insanlar için, belki de başka bir dilde çalışmaktan en iyisidir.

Puan kartı Yetenek (% 30) Performans (% 10) Kullanım kolaylığı (% 20) Belgeler (% 20) Eklentiler (% 20) Genel Puan (% 100)
BOŞTA 3.5.1 6 7 8 7 5 6.5
Komodo IDE 10.1.1 8 8 7 8 8 7.8
LiClipse 3.1 9 7 7 8 9 8.2
PyCharm 2016.2.3 9 8 9 8 8 8.5
Spyder 3.0.0 7 7 7 7 6 6.8
Visual Studio 2015 için Python Araçları 2.2 9 8 7 9 9 8.5