Python… her yaş grubundaki programcılar için dünyadaki en popüler ve en sevilen programlama dilidir. Yeni başlayan biriyseniz, bu dili öğrenmeniz şiddetle tavsiye edilir. Programlamada, programımızı yazmak ve yürütmek için kod düzenleyicinin ve IDE’lerin önemini hepimiz biliyoruz, ancak en iyi kod düzenleyiciyi veya IDE’yi seçmek her zaman kafa karıştırıcı bir sorudur. En iyi kod düzenleyicinin veya IDE’nin programlama dili, proje türü, proje boyutu, işletim sistemi desteği ve diğer birçok özelliği dikkate alma gibi pek çok şeye bağlı olduğunu unutmayın. Python dili de bir istisna değildir.
Bakınız: Python Dersleri
Bu yazıda Python’un kullanmak için kod düzenleyicisini veya IDE’leri tartışacağız. Bu bilgiler, deneyimli geliştiriciler tarafından verilen görüşlere, herkese açık web verilerine, Python Geliştirici Anketi 2018 Sonuçları / Editörleri ve IDE’ler gibi önceki bazı anketlere ve en önemli kişi Guido van Rossum (Python Yaratıcısı). Öncelikle IDE ve kod editörünün farklı şeyler olduğunu anlayın.
- Metin / Kod Düzenleyici: Kod düzenleyicileri, sözdizimi vurgulama ve kod biçimlendirme gibi bazı özelliklerle kodu yazmanıza ve düzenlemenize olanak tanıyan hafif bir araçtır. IDE’den daha az özellik barındırır.
Entegre Geliştirme Ortamı (IDE): IDE’ler, yazılım geliştirme için gereken tüm temel araçları sağlayan tam teşekküllü ortamlardır. Yalnızca kodu işlemez (örneğin, yazma, düzenleme, söz dizimi vurgulama ve otomatik tamamlama), aynı zamanda programcılara yardımcı olan hata ayıklama, yürütme, test etme ve kod biçimlendirme gibi başka özellikler de barındırır.
Belirli terimlere göre en iyi kod düzenleyiciye genel bir bakışla başlayalım …
Seviyen nedir?
- Başlangıç – IDLE (veya Çevrimiçi Python Düzenleyicileri), python dilindeki ilk adımlar için mükemmel bir seçimdir. PyCharm da iyidir ancak bunu kullanırken deneyimli bir kişinin yardımını alır.
- Orta Düzey – PyCharm, Sublime, Atom, Vs Code.
- Gelişmiş – PyCharm, Vim, Emacs, Sublime, Atom, Vs Code.
Nihai Hedefiniz Nedir?
- Web geliştirme – PyCharm Professional, VS Code
- Veri Bilimi – Spyder, Jupyter Notebook, PyCharm Professional
- Komut Dosyası – Sublime, Atom, PyCharm Community, Eclipse + PyDev
- Kaliteli Geliştirici – Sublime, Atom, PyCharm Community, Jupyter Notebook
Ortamınız / İşletim Sisteminiz nedir?
- Linux, macOS – PyCharm, Sublime, Atom, Vim, Jupyter
- Windows – Sublime, VS Code, Eclipse + PyDev, PyCharm
- Çoklu / karışık işletim sistemi – PyCharm, Sublime, Atom
Hangi Donanıma Sahipsin?
- Kötü – IDLE, Atom, Sublime, Online Editör
- İyi – PyCharm, VS Code, Eclipse + PyDev
IDE’ler ve Kod Düzenleyicileri Nedir?
IDE (veya Entegre Geliştirme Ortamı), yazılım geliştirmeye adanmış bir programdır. Adından da anlaşılacağı gibi, IDE’ler yazılım geliştirme için özel olarak tasarlanmış çeşitli araçları entegre eder. Bu araçlar genellikle şunları içerir:
- Kodu işlemek için tasarlanmış bir düzenleyici (örneğin sözdizimi vurgulama ve otomatik tamamlama ile)
- Derleme, yürütme ve hata ayıklama araçları
- Bir çeşit kaynak kontrolü
- Çoğu IDE, birçok farklı programlama dilini destekler ve çok daha fazla özellik içerir. Bu nedenle, büyük olabilirler ve indirip yüklemeleri zaman alabilir. Bunları doğru şekilde kullanmak için ileri düzeyde bilgiye de ihtiyacınız olabilir.
Buna karşılık, özel bir kod düzenleyici, sözdizimi vurgulama ve kod biçimlendirme yeteneklerine sahip bir metin düzenleyici kadar basit olabilir. Çoğu iyi kod düzenleyicisi kod çalıştırabilir ve bir hata ayıklayıcıyı kontrol edebilir. En iyileri, kaynak kontrol sistemleriyle de etkileşim halindedir. Bir IDE ile karşılaştırıldığında, iyi bir özel kod düzenleyici genellikle daha küçük ve daha hızlıdır, ancak genellikle daha az özellik zengindir.
İyi Bir Python Kodlama Ortamı İçin Gereksinimler
Bir kodlama ortamında gerçekten neye ihtiyacımız var? Özellik listeleri uygulamadan uygulamaya değişir, ancak kodlamayı kolaylaştıran bir dizi temel özellik vardır:
- Kod dosyalarını kaydetme ve yeniden yükleme
Bir IDE veya düzenleyici çalışmanızı kaydetmenize ve her şeyi daha sonra yeniden açmanıza izin vermiyorsa, pek bir IDE değildir. - Ortamın içinden kod çalıştırma
Benzer şekilde, Python kodunuzu çalıştırmak için düzenleyiciden çıkmanız gerekiyorsa, o zaman bu basit bir metin düzenleyiciden fazlası değildir. - Hata ayıklama desteği
Kodunuz çalışırken adım adım ilerleyebilmek, tüm IDE’lerin ve çoğu iyi kod düzenleyicinin temel bir özelliğidir. - Sözdizimi vurgulama
Kodunuzdaki anahtar kelimeleri, değişkenleri ve sembolleri hızlı bir şekilde tespit edebilmek, kodu okumayı ve anlamayı çok daha kolay hale getirir. - Otomatik kod biçimlendirme
Değerinde olan herhangi bir düzenleyici veya IDE, bir süre sonunda veya ifade için iki nokta üst üste işaretini tanıyacak ve sonraki satırın girintili olması gerektiğini bilecektir.
Elbette, kaynak kod kontrolü, bir uzantı modeli, derleme ve test araçları, dil yardımı vb. gibi isteyebileceğiniz birçok başka özellik vardır. Ancak yukarıdaki liste, iyi bir düzenleme ortamının desteklemesi gereken “temel özellikler” olarak gördüğüm şeydir.
Bu özellikleri göz önünde bulundurarak, Python geliştirme için kullanabileceğimiz bazı genel amaçlı araçlara bir göz atalım.
Python’a Özgü Düzenleyiciler ve IDE’ler
PyCharm
Kategori: IDE
Web sitesi: https://www.jetbrains.com/pycharm/
Python için en iyi (ve tek) tam özellikli, adanmış IDE’lerden biri PyCharm’dır. Hem ücretli (Profesyonel) hem de ücretsiz açık kaynaklı (Topluluk) sürümlerinde bulunan PyCharm, Windows, Mac OS X ve Linux platformlarına hızlı ve kolay bir şekilde yüklenir.
PyCharm, PyCharm doğrudan Python geliştirmeyi destekler. Yeni bir dosya açıp kod yazmaya başlayabilirsiniz. Python’u doğrudan PyCharm içinde çalıştırabilir ve hata ayıklayabilirsiniz ve kaynak kontrolü ve projeler için desteği vardır.
Artıları: Tonlarca destek ve destekleyici bir toplulukla fiilen Python IDE ortamıdır. Python’u açar, düzenler, çalıştırır ve hata ayıklama yapar.
Eksileri: PyCharm’ın yüklenmesi yavaş olabilir ve varsayılan ayarların mevcut projeler için ince ayarlanması gerekebilir.
Spyder
Kategori: IDE
Web sitesi: https://github.com/spyder-ide/spyder
Spyder, veri bilimi iş akışları için optimize edilmiş açık kaynaklı bir Python IDE’dir. Spyder, Anaconda paket yöneticisi dağıtımıyla birlikte gelir, bu nedenle kurulumunuza bağlı olarak onu makinenize zaten yüklemiş olabilirsiniz.
Spyder ile ilgili ilginç olan şey, hedef kitlesinin Python kullanan veri bilimciler olmasıdır. Bunu baştan sona fark edeceksiniz. Örneğin, Spyder, SciPy, NumPy ve Matplotlib gibi yaygın Python veri bilimi kitaplıklarıyla iyi bir şekilde bütünleşir.
Spyder, sağlam sözdizimi vurgulamalı bir kod düzenleyici, Python kod tamamlama ve hatta entegre bir dokümantasyon tarayıcısı gibi bekleyebileceğiniz “ortak IDE özelliklerinin” çoğunu içerir.
Diğer Python düzenleme ortamlarında görmediğim özel bir özellik, Spyder’in IDE’nizin içinde tablo tabanlı bir düzen kullanarak verileri görüntülemenize olanak tanıyan “variable explorer” dır. Kişisel olarak, genellikle buna ihtiyacım yok ama güzel görünüyor. Python kullanarak düzenli olarak veri bilimi çalışması yapıyorsanız, bu benzersiz özelliğe aşık olabilirsiniz. IPython / Jupyter entegrasyonu da güzel.
Genel olarak, Spyder’ın diğer IDE’lerden daha basit hissettiğini söyleyebilirim. Her gün birincil düzenleme ortamım olarak kullandığım bir şeyden çok özel amaçlı bir araç olarak görmeyi seviyorum. Bu Python IDE’nin güzel yanı, Windows, macOS ve Linux’ta ücretsiz olarak mevcut olması ve tamamen açık kaynaklı bir yazılım olmasıdır.
Artıları: Anaconda Python dağıtımını kullanan bir veri bilimcisisiniz.
Eksileri: Daha deneyimli Python geliştiricileri, Spyder’ı günlük olarak çalışmak için çok basit bulabilir ve bunun yerine daha eksiksiz bir IDE veya özelleştirilmiş düzenleyici çözümünü tercih edebilir.
Eclipse + PyDev
Kategori: IDE
Web sitesi: www.eclipse.org
Python araçları: PyDev, www.pydev.org
Açık kaynak topluluğunda herhangi bir süre geçirdiyseniz, Eclipse’i duymuşsunuzdur. Linux, Windows ve OS X için mevcut olan Eclipse, Java geliştirme için fiilen açık kaynaklı bir IDE’dir. Eclipse’i çok çeşitli geliştirme faaliyetleri için kullanışlı kılan zengin bir uzantı ve eklenti pazarına sahiptir.
Böyle bir uzantı, Python hata ayıklamasını, kod tamamlamayı ve etkileşimli bir Python konsolunu etkinleştiren PyDev’dir. PyDev’i Eclipse’e yüklemek kolaydır: Eclipse’den Yardım, Eclipse Marketplace’i seçin, ardından PyDev’i arayın. Kur’a tıklayın ve gerekirse Eclipse’i yeniden başlatın.
Artıları: Eclipse’i zaten yüklediyseniz, PyDev’i eklemek daha hızlı ve daha kolay olacaktır. PyDev, deneyimli Eclipse geliştiricisi için oldukça erişilebilirdir.
Eksileri: Python ile veya genel olarak yazılım geliştirme ile yeni başlıyorsanız, Eclipse’in üstesinden gelinmesi gereken çok şey olabilir. IDE’lerin daha büyük olduğunu ve doğru kullanım için daha fazla bilgi gerektirdiğini söylediğimi hatırlıyor musunuz?
IDLE
IDLE, varsayılan olarak Python ile birlikte gelen platformlar arası açık kaynaklı bir IDE’dir, bu nedenle kurulum veya kurulum hakkında endişelenmenize gerek kalmaz. IDLE Python ile yazılmıştır ve bu IDE, python geliştirme üzerine pratik yapmak isteyen başlangıç seviyesindeki geliştiriciler için uygundur. IDLE hafiftir ve kullanımı basittir, böylece web tarayıcı oyun otomasyonu, temel web kazıma uygulamaları ve ofis otomasyonu gibi basit projeler oluşturabilirsiniz. Bu IDE, daha büyük projeler için iyi değildir, bu nedenle IDLE’den temel bilgileri öğrendikten sonra bazı gelişmiş IDE’lere geçin.
Visual Studio Code
Kategori: Kod Düzenleyici
Web sitesi: https://code.visualstudio.com/
Python araçları: https://marketplace.visualstudio.com/items?itemName=ms-python.python
Tam Visual Studio ile karıştırılmaması gereken Visual Studio Code , Linux, Mac OS X ve Windows platformları için kullanılabilen tam özellikli bir kod düzenleyicidir. Küçük ve hafif, ancak tam özellikli VS Code, açık kaynaklı, genişletilebilir ve hemen hemen her görev için yapılandırılabilir. Atom gibi, VS Code da Electron üzerine inşa edilmiştir, bu yüzden getirdiği avantaj ve dezavantajların aynısına sahiptir.
Python desteğini VS Code’da kurmak çok kolaydır: Marketplace’e hızlıca tıplayıp, Python’u arayın, Yükle’ye tıklayın ve gerekirse yeniden başlatın. VS Code, Python kurulumunuzu ve kütüphanenizi otomatik olarak tanıyacaktır.
Artıları: Electron sayesinde, VS Code her platformda mevcut, küçük bir ayak izine ve açık kaynağa sahip olmasına rağmen şaşırtıcı derecede tam özellikli.
Eksileri: Electron, VS Code’un yerel bir uygulama olmadığı anlamına gelir. Ayrıca, bazı kişilerin Microsoft kaynaklarını kullanmamak için ilkeli nedenleri olabilir.
Sublime Text
Kategori: Kod Düzenleyici
Web sitesi: http://www.sublimetext.com
Daha iyi bir metin editörü hayali olan bir Google mühendisi tarafından yazılan Sublime Text, son derece popüler bir kod editörüdür. Tüm platformlarda desteklenen Sublime Text, Python kod düzenleme için yerleşik desteğe ve sözdizimini ve düzenleme özelliklerini genişleten zengin bir uzantı kümesine (paket olarak adlandırılır) sahiptir.
Ek Python paketleri kurmak zor olabilir: tüm Sublime Text paketleri Python’da yazılır ve topluluk paketlerini kurmak genellikle Python komut dosyalarını doğrudan Sublime Text’te çalıştırmanızı gerektirir.
Artıları: Sublime Text’in toplulukta büyük bir takipçisi var. Tek başına bir kod editörü olarak, Sublime Text hızlı, küçük ve iyi destekleniyor.
Eksileri: Sublime Text ücretsiz değildir, ancak değerlendirme sürümünü belirsiz bir süre için kullanabilirsiniz. Uzantıların yüklenmesi zor olabilir ve düzenleyicinin içinden kod çalıştırma veya hata ayıklama için doğrudan destek yoktur.
Atom
Kategori: Kod Düzenleyici
Web sitesi: https://atom.io/
Tüm platformlarda kullanılabilen Atom, “21. Yüzyıl için hacklenebilir metin editörü” olarak tanımlanır. Şık bir arayüz, dosya sistemi tarayıcısı ve uzantılar için marketplace yeri ile açık kaynaklı Atom, JavaScript, HTML ve CSS kullanarak masaüstü uygulamaları oluşturmak için bir çerçeve olan Electron kullanılarak oluşturulmuştur. Python dil desteği, Atom çalışırken yüklenebilen bir uzantı tarafından sağlanır.
Artıları: Electron sayesinde tüm platformlarda geniş bir desteğe sahiptir. Atom küçüktür, bu nedenle hızlı indirilir ve yüklenir.
Eksileri: Derleme ve hata ayıklama desteği yerleşik değildir, ancak topluluk tarafından sağlanan eklentilerdir. Atom, Electron üzerine kurulduğundan, yerel bir uygulama olarak değil, daima bir JavaScript sürecinde çalışır.
GNU Emacs
Kategori: Kod Düzenleyici
Web sitesi: https://www.gnu.org/software/emacs/
IPhone-Android savaşından önce, Linux-Windows savaşından önce, hatta PC-Mac savaşından önce bile GNU Emacs’ın savaşçılardan biri olduğu Editör Savaşı vardı. “Genişletilebilir, özelleştirilebilir, kendi kendini belgeleyen, gerçek zamanlı görüntü düzenleyicisi” olarak faturalandırılan GNU Emacs, neredeyse UNIX kadar uzun süredir piyasadaydı ve tutkulu bir takipçi kitlesi var.
Her zaman ücretsiz ve her platformda mevcut olan (bir biçimde veya başka bir şekilde) GNU Emacs, özelleştirme için güçlü Lisp programlama dilinin bir biçimini kullanır ve Python geliştirme için çeşitli özelleştirme betikleri mevcuttur.
Artıları: Emacs’ı biliyorsunuz, Emacs kullanıyorsunuz, Emacs’ı seviyorsunuz. Lisp ikinci bir dildir ve size verdiği gücün her şeyi yapabileceğiniz anlamına geldiğini biliyorsunuz.
Eksileri: Özelleştirme, Lisp kodunu çeşitli komut dosyalarına yazmak (veya kopyalamak / yapıştırmak) anlamına gelir. Henüz sağlanmadıysa, nasıl yapılacağını anlamak için Lisp’i öğrenmeniz gerekebilir.
Vi / Vim
Kategori: Kod Düzenleyici
Web sitesi: https://www.vim.org/
Metin Editörü Savaşının diğer tarafında VI (aka VIM) duruyor. Hemen hemen her UNIX sisteminde ve Mac OS X’te varsayılan olarak dahil edilen VI, eşit derecede ateşli bir takipçiye sahiptir.
VI ve VIM, bir dosyanın görüntülenmesini bir dosyanın düzenlenmesinden ayıran modal düzenleyicilerdir. VIM, bir genişletilebilirlik modeli ve yerinde kod oluşturma dahil olmak üzere orijinal VI’da birçok iyileştirme içerir. VIMScripts çeşitli Python geliştirme görevleri için mevcuttur.
Artıları: VI’yı biliyorsunuz, VI kullanıyorsunuz, VI’yı seviyorsunuz. VIMScripts sizi korkutmaz ve onu isteğinize göre esnettiğinizi bilirsiniz.
Eksileri: Emacs gibi, Python geliştirmeyi etkinleştirmek için kendi komut dosyalarınızı bulmakta veya yazmakta rahat değilsiniz ve bir modal düzenleyicinin nasıl çalışması gerektiğinden emin değilsiniz.
Artı, iyi bir işletim sistemi olsa VI’nın harika bir metin editörü olacağını biliyorsunuz.
Thonny
Kategori: IDE
Web sitesi: http://thonny.org/
Python IDE ailesine yeni eklenen Thonny, yeni başlayanlar için bir IDE olarak faturalandırıldı. Estonya’daki Tartu Üniversitesi Bilgisayar Bilimleri Enstitüsü tarafından yazılan ve sürdürülen Thonny, sitedeki kurulum talimatları ile tüm büyük platformlar için kullanılabilir.
Varsayılan olarak, Thonny kendi paketlenmiş Python sürümüyle kurulur, böylece yeni bir şey yüklemenize gerek kalmaz. Daha deneyimli kullanıcıların bu ayarı değiştirmesi gerekebilir, böylece önceden yüklenmiş kitaplıklar bulunur ve kullanılır.
Artıları: Yeni bir Python kullanıcısısınız ve kullanıma hazır bir IDE istiyorsunuz.
Eksileri: Daha deneyimli Python geliştiricileri, Thonny’yi çoğu kullanım için çok basit bulacaktır ve yerleşik yorumlayıcı, üzerinde çalışılması gereken bir şey değildir. Artı, yeni bir araç olarak, bulduğunuz ve hemen çözülemeyen sorunlar olabilir.
Rodeo
Rodeo, Yhat tarafından geliştirilen açık kaynaklı bir Python IDE’dir. Özellikle makine öğrenimi ve veri bilimi için oluşturulmuştur.
Rodeo, verileri yüklemeyi ve verileri karşılaştırmayı çok kolaylaştırır.
Ayrıca veri denemesine izin verir.
Kullanıcılara rehberlik etmek için Python öğreticileriyle donatılmıştır.
Hile sayfaları malzeme referansı için sağlanmıştır.
Dosya ve paket araması çok kullanışlıdır..
Python geliştirme için tüm IDE’lerden ve metin düzenleyiciden bahsettik, ancak esas olarak veri bilimi projeleri ve yani Jupyter Notebook için kullanılan popüler bir web uygulaması veya aracı var. Girişe ve bazı özelliklerine bakalım…
Jupyter Notebook: Jupyter Notebook, web tabanlı interaktif bir geliştirme ortamıdır; Bilgiyi analiz etmesi, paylaşması ve sunması veri bilimi topluluğunda iyi bilinir. Canlı kod, görselleştirmeler vb. oluşturmanıza ve paylaşmanıza olanak tanıyan kullanımı kolay, açık kaynaklı bir yazılımdır. İyi özelliklerinden bazıları aşağıda verilmiştir …
Sayısal simülasyon, veri temizleme, makine öğrenimi veri görselleştirme ve istatistiksel modelleme desteği.
Markdown ve HTML entegrasyonu.
Entegre veri bilimi kütüphaneleri (matplotlib, NumPy, Pandas).
Güçlü sunumlar oluşturmak için kodunuzu görmenizi ve düzenlemenizi sağlar.
Ayrıca tüm çalışmanızı PDF ve HTML dosyalarına dönüştürebilir veya bir .py dosyası olarak dışa aktarabilirsiniz.
Sunucuları başlatma ve durdurma, klasörleri ve dosyaları açma.
4 Yorum