Úvod
Při programování v Pythonu jsou užitečné jak IDE, tak editory kódu. Znát rozdíl mezi všemi dostupnými možnostmi a kdy je použít je zásadní pro efektivní rozvoj.
Tento článek uvádí nejlepší Python IDE a editory kódu a definuje rozdíl mezi IDE a editory kódu.
Předpoklady
- Adekvátní operační systém
- Python nainstalován
IDE vs Editor kódu
IDE je jako skříňka na nářadí. Všechny nástroje, které byste mohli potřebovat, jsou již k dispozici. Jakmile jej nainstalujete, měli byste se pustit do svého projektu.
Editor kódu je jako mocný nástroj. Nebudete mít vše, co potřebujete, hned od začátku, ale můžete během cesty přidávat věci, aby to bylo funkčnější.
Nejlepší IDE Python
Každé IDE musí mít:
- Editor kódu.
- Ladicí program.
- Vytvářejte automatizační nástroje.
IDE Pythonu mají často vestavěný interpret nebo kompilátor. Mají také různé nástroje pro zjednodušení vývoje projektu. Čím více funkcí však IDE mají, tím jsou větší a pomalejší.
1. Visual Studio
Podporované operační systémy: Windows
Python je ve výchozím nastavení plně podporován ve Visual Studiu od roku 2017. Můžete jej vybrat během procesu instalace výběrem Python nebo Data Science pracovní zátěž.
Pokud používáte verzi sady Visual Studio vydanou před rokem 2017, vytvořte z ní IDE Python pomocí pluginu Python Tools for Visual Studio (PTVS).
Visual Studio a plugin PTVS jsou oba vytvořeny společností Microsoft. Visual Studio má bezplatnou a placenou verzi. PTVS je plugin s otevřeným zdrojovým kódem a zcela zdarma.
Výhody:
- Pokud již používáte Visual Studio, přidání PTVS je snadné.
- Nabízí IntelliSense pro snadnou úpravu kódu.
- Má interaktivní ladění, profilování, integraci testování jednotek a podporu pro IPython.
- Můžete přidat balíčky se šablonami pro vývoj webu a strojové učení.
Nevýhody:
- Nejedná se o nativní IDE Pythonu.
- Visual Studio zabírá hodně paměti.
- Počet možností bude děsivý, dokonce i u bezplatné verze.
- Visual Studio není k dispozici pro různé platformy.
2. PyDev
Podporované operační systémy: Linux, macOS, Windows
PyDev je Python IDE pro Eclipse vytvořené IBM. V současnosti jej vyvíjí nadace Eclipse a PyDev je pro něj plugin třetí strany. Oba jsou open source a zdarma k použití.
Výhody:
- Pokud jste domorodec v Eclipse, přidání PyDev by neměl být žádný problém.
- Dokončení kódu pomocí automatického importu, tipování typu a analýzy kódu prostřednictvím PyLint.
- PyDev má interaktivní a vzdálené ladění a integraci testování jednotek.
- Pro ovládání zdroje a správu kódu jsou k dispozici pluginy.
- K dispozici je integrovaná podpora Google App Engine a Django.
Nevýhody:
- Nejedná se o nativní IDE Pythonu.
- PyDev zabírá příliš mnoho paměti, pokud jej používáte pouze pro Python.
- Je to velmi náročné prostředí pro nové programátory a uživatele.
3. PyCharm
Podporované operační systémy: Linux, macOS, Windows
PyCharm je program vytvořený společností JetBrains. Je to plně vybavené IDE speciálně vytvořené pro Python. PyCharm je vynikající nástroj pro vývojáře full-stack.
K dispozici je placená a bezplatná verze s otevřeným zdrojovým kódem.
Výhody:
- Nativní Python IDE. Po vybalení přímá podpora vývoje Pythonu s fantastickou komunitou.
- Inteligentní pomoc a inteligentní dokončování kódu.
- Existují nástroje pro vzdálený vývoj pro ladění.
- Je k dispozici integrace Docker a Vagrant.
- Podpora pro webové vývojové rámce jako Flask a Django.
- Existují vědecké balíčky, podpora notebooků Anaconda a IPython.
Nevýhody:
- Pomalé načítání a velmi objemné.
- Nejužitečnější funkce jsou dostupné v placené verzi a ta je nákladná.
- Pro import existujících projektů je třeba upravit výchozí nastavení.
- Není vhodné pro začátečníky.
4. Spyder
Podporované operační systémy: Linux, macOS, Windows
Spyder je Python IDE vytvořený pro datové vědce. Je napsán v Pythonu vědeckými vývojáři Pythonu.
Spyder má užitečnou komunitu. Existují rozsáhlé vestavěné nástroje pro vědecké výpočty. Je zcela open source a je zdarma k použití.
Výhody:
- Pokud jste datový vědec a používáte Anacondu, Spyder se snadno instaluje a používá.
- Jde o vícejazyčný editor s nástroji pro analýzu kódu, automatickým dokončováním a prohlížečem třídy funkcí.
- Vědecký zásobník Pythonu (Numpy, Scipy, Pandas atd.) je snadno dostupný.
- Je vybaven proměnným průzkumníkem pro interaktivní úpravy a analýzu.
- Spyder obsahuje interaktivní nástroje pro vykreslování.
- Existují pluginy pro prostředí notebooků, terminálů a jednotek.
Nevýhody:
- Jde o nástroj pro datovou vědu, nikoli o univerzální IDE.
- Žádná podpora pro vývoj webu.
- Příliš jednoduché na práci, pokud jste zkušený vývojář Pythonu.
5. Thonny
Podporované operační systémy: Linux, macOS, Windows
Thonny je nové IDE specifické pro Python vytvořené s ohledem na začátečníky. Jeho instalace je jednoduchá a již je dodáván s vestavěným Pythonem.
Je to výchozí IDE pro Python na Raspbianu. Thonny je zdarma k použití. Můžete jej nainstalovat pomocí pip nebo prostřednictvím správce systémových balíčků.
Výhody:
- Výborné pro začátečníky a jako vzdělávací nástroj.
- Rozhraní je minimalistické a paměťově úsporné.
- Zahrnuje postupné vyhodnocování, automatické dokončování a zvýrazňování proměnlivého rozsahu.
- Samostatná okna pro volání funkcí.
- Podpora vzdáleného spouštění souborů přes SSH.
Nevýhody:
- Základní funkce. Thonny není tak vyspělý jako některá jiná IDE.
- Postrádá mnoho možností pro vědecký výzkum a vývoj webu.
- Protože je nový, existuje mnoho problémů.
- Podpora je pomalá a opravy nějakou dobu trvají.
6. NEČINNÁ
Podporované operační systémy: Linux, macOS (většinou), Windows
IDLE je standardně dodáváno s instalací Pythonu. Je napsán v Pythonu a existuje již dlouho. Vynálezce Pythonu, Guido Von Rossum, udělal IDLE.
Výhody:
- IDLE je skvělé výukové prostředí pro začátečníky se všemi potřebnými funkcemi.
- Má editor kódu pro více oken a možnost vyhledávat ve všech oknech.
- K dispozici je vestavěný kompilátor IDLE pro spouštění kódu.
- Skvělé pro nenáročné projekty.
Nevýhody:
- IDLE není dostatečně robustní pro spouštění velkých projektů.
- Chybí důležité funkce, které mají IDE, jako je kontrola verzí a párování závorek.
- Není dostatečně intuitivní pro začátečníky.
- Některé možnosti v systému macOS nefungují.
7. Křídlo
Podporované operační systémy: Linux, macOS, Windows
Wing je IDE navržené pro Python. Je lehký a zároveň plně vybavený. Existují tři různé verze:profesionální, osobní a vzdělávací. Poslední dva jsou k použití zcela zdarma.
Výhody:
- Wing je inteligentní editor s mnoha funkcemi.
- Může emulovat další IDE a editory.
- Wing má výkonné nástroje pro ladění a testování jednotek.
- Rychle konfigurovatelné pro vzdálený vývoj.
- Podpora pro vývojové rámce webu.
- Existují nástroje pro správu projektů a správu verzí.
Nevýhody:
- Osobní a vzdělávací verze postrádají mnoho možností.
- Profesionální verze je drahá.
- Není k dispozici mnoho pluginů.
- Malá komunita podpory.
- Pomalý vývoj ve srovnání s jinými IDE.
8. Eric Python
Podporované operační systémy: Linux, macOS, Windows
Eric Python je plně vybavené IDE napsané v Pythonu. Jedním z jeho klíčových prvků je ovládací prvek editoru Scintilla. Existuje mnoho pluginů, které rozšíří prostředí IDE.
Většina linuxových distribucí má Eric Python ve svých oficiálních repozitářích. Je to open source a je zdarma k použití.
Výhody:
- Python je pro něj primární jazyk.
- Může spouštět více editorů současně.
- Ladicí program je efektivní a již vestavěný.
- Prohlížeč tříd poskytuje jednoduchý přehled tříd a metod v projektu.
- Má spoustu funkcí pro správu verzí a správu projektů.
Nevýhody:
- Rozhraní je složité bez logické struktury.
- Může to být ohromující, dokonce i pro pokročilé programátory.
- Automatické doplňování není příliš dobré. Pro lepší práci potřebujete pluginy třetích stran.
- Více zásuvných modulů způsobí problémy s výkonem.
9. Jupyter
Podporované operační systémy: Linux, macOS, Windows
Jupyter je webové prostředí pro notebooky, které vychází z projektu IPython. Je oblíbený mezi datovými vědci i pedagogy. Jupyter je open-source a je zdarma k použití.
Výhody:
- Výborné pro prototypování a testování vědeckých projektů.
- Interaktivní výstup obsahuje buňky, které mohou být kód, HTML, obrázky, videa nebo bloky LaTeXu.
- Je velmi vizuálně přitažlivý, organizovaný a skvělý pro prezentace.
- Pro citlivá data je k dispozici hosting na straně serveru.
- Jupyter zahrnuje integraci velkých dat.
Nevýhody:
- Zápis do buněk dává nebezpečné návyky programování.
- Velké projekty je těžké sledovat a udržovat.
- Nástroje pro správu verzí nejsou ve výchozím nastavení k dispozici.
- Není vhodný pro spolupráci.
Nejlepší editory kódu Python
Editory kódu jsou životně důležité nástroje pro programátora. Vypadají a působí jako textové editory, ale mají zvýraznění syntaxe. Jsou velmi lehké a pomocí pluginů mohou být ještě výkonnější.
1. Kód Visual Studio
Podporované operační systémy: Linux, macOS, Windows
Visual Studio Code nebo VS kód je plně vybavený editor kódu. Lehký a malý, můžete jej nakonfigurovat pro většinu programovacích úloh.
Není to nativní editor Pythonu, ale je k dispozici plná podpora Pythonu. Podporu Pythonu můžete snadno přidat prostřednictvím tržiště. VS Code je zdarma a s otevřeným zdrojovým kódem.
Výhody:
- Integrované Intellisense a chytré dokončování kódu jsou vestavěny.
- Má integrovaný terminál k dispozici pro rychlé testování.
- K dispozici je spousta rozšíření a je vysoce přizpůsobitelné.
- VS Code pokrývá širokou škálu programovacích jazyků a technologií.
- Aktualizace jsou časté.
Nevýhody:
- Není nativní editor Pythonu.
- Funkce vyhledávání je omezená.
- Příliš mnoho rozšíření může zpomalit. Některé funkce jsou v rozporu.
- Před spuštěním je třeba kód uložit.
2. Vznešený text
Sublime Text, vytvořený inženýrem společnosti Google, je populární textový editor. Má vynikající komunitní podporu a spoustu dostupných balíčků pro její rozšíření. Sublime Text má bezplatnou a placenou verzi.
Výhody:
- Nízké využití paměti.
- Funkce Přejít usnadňují vyhledávání v kódu.
- Sublime Text je přitažlivý pro nové i zkušené kodéry.
- Existuje víceřádková úprava.
Nevýhody:
- Instalace balíčků Pythonu je matoucí, zvláště pro nové uživatele.
- Neustále vás vyzve ke koupi plné verze.
- Ladění v Pythonu a spouštění kódu není přímo podporováno.
- Chybí mu integrovaný terminál.
- Některé funkce je těžké najít.
3. Atom
Podporované operační systémy: Linux, macOS, Windows
Atom je „hackovatelný textový editor 21. století“ vyvinutý společností GitHub. Je přizpůsobitelný a rozšiřitelný pomocí balíčků. Atom je zdarma k použití a open source.
Výhody:
- Atom má skvělý ekosystém knihovny balíčků. Je vestavěný a snadno se používá.
- Nabízí inteligentní automatické dokončování kódu pro různé jazyky.
- K dispozici je úprava kódu ve více oknech.
- Integrace Git pro správu verzí.
Nevýhody:
- Vývoj pluginů se od doby, kdy Microsoft převzal GitHub, výrazně zpomalil. Mnoho balíčků již není udržováno.
- Neefektivní správa paměti, když máte hodně balíčků.
- Počet funkcí a potřebná konfigurace ztěžuje použití pro úplného začátečníka.
4. Vi/Vim
Podporované operační systémy: Linux, macOS, Windows
Vim, dříve známý jako Vi, je jedním z nejstarších editorů. Má rozhraní příkazového řádku a běží přes terminál. Ústředním konceptem za tím je, že programátor může ke všemu přistupovat pomocí příkazů klávesnice.
Výhody:
- Vysoce přizpůsobitelné a flexibilní. Desetiletí pluginů.
- Velmi lehký a efektivní z hlediska zdrojů.
- Je integrován do terminálů macOS a většiny distribucí Linuxu.
- Došlo ke zvýšení produktivity díky klávesovým zkratkám.
Nevýhody:
- Verze systému Windows nefunguje správně a často se porouchá.
- Křivka učení je strmá a klávesové zkratky nejsou intuitivní.
- Není vhodná pro začátečníky.
- Automaticky se přihlásíte do války redaktorů s uživateli Emacsu.
5. GNU/Emacs
Podporované operační systémy: Linux, macOS, Windows
Známý jako GNUMACS je jedním z nejstarších editorů. Je považován za jeden z nejefektivnějších dostupných editorů. Velmi rozšiřitelný a samodokumentující editor je známý podporou téměř všech jazyků, včetně lidských.
Původním autorem je Richard Stallman a v současnosti jej vyvíjí projekt GNU. GNU je ústřední složkou hnutí za svobodný software a jednou z nejstarších, které se stále udržují.
Výhody:
- Nízká hmotnost a efektivní paměť. Skvělé pro velké projekty.
- Plně přizpůsobitelné, aby bylo možné dělat téměř cokoliv s rozsáhlou knihovnou rozšíření.
- Emacs má relativně snadnou křivku učení pro komplikovaný editor.
- Vynikající podpora komunity se spoustou zdrojů online.
Nevýhody:
- GNU je stará a není snadné ji uchopit a naučit se. Klávesové zkratky nejsou standardní.
- Přizpůsobení a rozšíření se provádí v Emacs Lisp.
- Nalezení všech funkcí může nějakou dobu trvat a výzkum.
- Automaticky se přihlásíte do války redaktorů s uživateli Vi/Vim.
Jak si vybrat?
IDE má všechny funkce editoru kódu, ale editor kódu nemá všechny funkce IDE.
Správná volba závisí na složitosti a typu projektu, vašich rozvojových dovednostech a velikosti týmu. Na základě těchto faktorů doporučujeme následující Python IDE a editory kódu:
Začátečníci:
- Thonny
- NEČINNÁ
Pokročilí vývojáři:
- Eric Python
- Atom
- Vi/Vim
- GNU/Emacs
Vědecké počítačové projekty:
- Spyder
- Jupyter
Projekty vývoje webu:
- PyDev
- Visual Studio
- Kód Visual Studio
Organizace a velké týmy:
- PyCharm
- Křídlo
- Vznešený text