Programmēšana

Pārskats: 6 Python IDE dodas uz paklāja

Starp visiem rādītājiem, kurus jūs varētu izmantot, lai novērtētu valodas popularitāti un panākumus, viens drošs faktors ir tai pieejamo attīstības vides skaits. Python popularitātes pieaugums pēdējos gados ir radījis spēcīgu IDE atbalsta vilni, izmantojot rīkus, kas paredzēti gan vispārējam programmētājam, gan tiem, kuri izmanto Python tādiem uzdevumiem kā zinātniskais darbs un analītiskā programmēšana.

Šie seši IDE ar Python atbalstu aptver lietošanas gadījumu gammu. Daži no tiem ir daudzvalodu IDE, kuriem ir Python atbalsts, izmantojot pievienojumprogrammu vai cita produkta pārsaiņošanu ar specifiskiem Python paplašinājumiem. Katrs no tiem dod labumu nedaudz atšķirīgai Python izstrādātāja auditorijai, lai gan daudzi cenšas būt noderīgi kā universāli risinājumi.

Mūsdienās liels skaits IDE ir ietvari, kas aprīkoti ar spraudņiem konkrētām valodām un uzdevumiem, nevis no iekšpuses uzrakstītas lietotnes, lai veicinātu attīstību noteiktā valodā. Šajā nolūkā jūsu IDE izvēli var noteikt pēc tā, vai jums ir vai nav pieredzes ar citu IDE no tās pašas ģimenes.

Saistītais video: kāpēc Python atvieglo programmēšanu

Tiem, kam nav šādas pieredzes, PyCharm ir viena no labākajām vietām, kur sākt. Tas ir draudzīgs jaunpienācējiem, bet nav sarežģīts tā funkciju komplektā. Faktiski tas spēlē dažas no visnoderīgākajām funkcijām starp visiem šeit profilētajiem IDE. Daudzas no šīm funkcijām ir pieejamas tikai produkta par samaksu versijā, taču bezmaksas versijā ir daudz, lai palīdzētu iesācējam izstrādātājam.

LiClipse un Python rīki Visual Studio (PTVS) ir laba izvēle izstrādātājiem, kuri jau ir cieši iepazinušies ar attiecīgi Eclipse un Microsoft Visual Studio. Abas ir pilnvērtīgas attīstības vides - tikpat pilnīgas kā jūs atradīsit -, kas diezgan labi integrē Python. Tomēr tās ir arī plašas, sarežģītas lietojumprogrammas, kurām ir daudz kognitīvo pieskaitāmo izmaksu. Ja jūs jau esat apguvis kādu no tiem, jūs atradīsit lielisku izvēli darbam ar Python.

ActiveState Komodo IDE Python iemiesojums ir dabisks tiem, kas jau ir izmantojuši Komodo IDE kādai citai valodai, un tam ir unikālas funkcijas (piemēram, regulārās izteiksmes vērtētājs), kurām jāpaplašina tās pievilcība. Komodo ir pelnījis rūpīgu iesācēju un ekspertu uzmanību.

Spyder ir vislabāk piemērots darbam ar IPython vai citiem zinātniski skaitļošanas rīkiem tādos izplatījumos kā Anaconda, nevis kā Python izstrādes platforma kopumā. Visbeidzot, IDLE ir vislabāk rezervēts ātrai un netīrai skriptu izveidei, un pat šajā ziņā tas var aizņemt aizmugurējo vietu atsevišķam kodu redaktoram ar Python sintakses spraudni. Tas nozīmē, ka IDLE vienmēr ir blakus, kad jums tas ir nepieciešams.

IDLE

IDLE, attīstības vidi, kas iekļauta lielākajā daļā katras Python instalēšanas, varētu uzskatīt par noklusējuma Python IDE. Tomēr IDLE nekādā gadījumā nevar aizstāt pilnvērtīgu IDE; tas ir vairāk kā izdomāts failu redaktors. Still, IDLE joprojām ir viena no noklusējuma opcijām Python izstrādātājiem, lai iegūtu valodu, un tas ir pakāpeniski uzlabojies ar katru Python izlaidumu, īpaši ar Python 3.5. (Šajā lapā skatiet interesantu diskusiju par nesenajiem centieniem uzlabot IDLE.)

IDLE ir pilnībā izveidots ar komponentiem, kas tiek piegādāti ar noklusējuma Python instalāciju. Izņemot pašu CPython tulku, tas ietver Tkinter interfeisa rīkkopu. Viens labums, veidojot IDLE šādā veidā: Tas darbojas pāri platformai ar konsekventu uzvedības kopumu. Kā mīnuss, interfeiss var būt šausmīgi lēns. Piemēram, liela apjoma teksta drukāšana no skripta konsolē ir par daudz lieluma pakāpēm lēnāka nekā tad, ja skripts tiek palaists tieši no komandrindas.

IDLE ir dažas tūlītējas ērtības. Tas nodrošina Python iebūvēto read-eval-print loop (REPL) vai interaktīvo konsoli. Faktiski šī interaktīvā čaula ir pirmais vienums, kas tiek parādīts lietotājam, kad tiek palaists IDLE, nevis tukšs redaktors. IDLE ietver arī dažus rīkus, kas atrodami citos IDE, piemēram, sniedzot ieteikumus atslēgvārdiem vai mainīgajiem, nospiežot taustiņu Ctrl-Space, un integrētu atkļūdotāju. Bet lielākajai daļai šo funkciju ieviešana ir primitīva, salīdzinot ar citiem IDE, un Tkinter ierobežotā UI komponentu izvēle ir slēpta. IDLE pieejamo trešo pušu papildinājumu kolekcija (viens šāds projekts ir IdleX) ne tuvu nav tik bagāts, kā jūs atradīsit ar citiem IDE.

Kopumā IDLE ir labākais diviem scenārijiem. Pirmais ir tas, kad vēlaties uzlauzt ātru Python skriptu, un, lai to izdarītu, nepieciešama iepriekš konfigurēta vide. Otrais ir paredzēts iesācējiem, kuri tikai iegūst savas kājas. Pat iesācējiem būs ātri jāpāriet uz stingrāku iespēju.

Spyder

Spyder ir saīsinājums no “Scientific PYthon Development EnviRonment”. Tas ir paredzēts izmantošanai kā darbagalds zinātniskai skaitļošanai ar Python, un tas ir atspoguļots funkciju komplektā, iepakojumā un IDE vispārējā uzvedībā. Spyder ir noderīgas funkcijas vispārējai Python attīstībai, taču, ja vien jūs galvenokārt nestrādājat ar IPython un zinātniskās skaitļošanas pakotnēm, iespējams, labāk izmantojat citu IDE.

Lielākais iemesls neizmantot Spyder kā universālu Python izstrādes vidi ir nevis funkciju kopa, bet gan iestatīšanas process. Spyder netiek piegādāts kā atsevišķs izpildāms tāda produkta veidā kā Visual Studio vai PyCharm. Tā vietā tā tiek instalēta kā Python pakete. Jūsu vienkāršākais ceļš uz Spyder ir instalēt Python izplatīšanu, kas tam ir iepriekš ielādēts, piemēram, Continuum Analytics Anaconda.

1. Pieejams kā paplašinājums, bet atbalsta tikai sintakses pārbaudi. 2. Pieejams kā Eclipse papildinājums. 3. Pieejams komerciālā versijā. 4. Skatiet integrācijas instrukcijas. 5. Izmanto resursdatorā instalētās versiju kontroles sistēmas.
 IDLEKomodoLiClipsePyCharmPTVSSpyder
Cython atbalstsJā (1)Jā (3)
Versijas kontroleJā (5)
Grafiskais atkļūdotājs
IPython atbalstsJā (4)
MakroJā (2)Jā (2)
Vairāki tulki
Refaktorēšana
Datu bāzes integrācijaJā (2)Jā (3)
HTML / CSS / JavaScriptJā (3)

Spyder ietver IPython, kas ir parastās Python konsoles aizstājējs. Ierakstot komandas IPython, rezultātus var interaktīvi izpētīt. Katru komandu var uzskatīt par “šūnu” vai koda segmentu, kura izvadi var uzglabāt un salīdzināt.

Spyder to papildina, integrējot šūnu uzvedību tā kodu redaktorā. Ja jebkurā Python skriptā ievietojat īpaši formatētus komentārus, varat tos sadalīt šūnās un izpildīt šīs šūnas IPython saskarnē jebkurā secībā. Tādā veidā ir viegli izmantot Spyder, lai vēlāk prototipētu šūnas ievietošanai IPython piezīmjdatorā.

Atkļūdošanai Spyder izmanto Python iebūvēto Pdb atkļūdotāju. Pdb komandrindas interfeiss ir tālu no sarežģītākiem grafiskajiem atkļūdotājiem, kas atrodami PyCharm vai LiClipse, lai gan Winpdb grafisko atkļūdotāju var instalēt kā izvēles papildinājumu. Diemžēl Winpdb nevar izmantot ar Python 3, jo tam ir atkarība no pakotnēm, kas joprojām ir pieejamas tikai Python 2 (konkrēti, wxPython). Šajā nolūkā lielākajai daļai cilvēku būs iestrēdzis Pdb.

Spyder ir ierobežots arī salīdzinājumā ar citiem IDE, integrējot to ar tādu versiju kontroles sistēmām kā Git un Mercurial. Ja strādājat inicializētā projekta repozitorijā, šī projekta failos tiks parādīts ar peles labo pogu noklikšķiniet uz krātuves konteksta izvēlnes vienumiem. Tas nozīmē, ka Spyder nav iebūvēti versiju kontroles mehānismi; jums jau ir jābūt instalētai atbilstošai versijas vadības lietojumprogrammai, kas jau ir instalēta sistēmas līmenī, un tās izpildāmie faili ir pieejami no sistēmas ceļa. Arī Spyder savā lietotāja saskarnē neietver rīkus krātuvju pārvaldīšanai. Šie trūkumi nav tik slikti, ja jums jau ir ieradums pašiem pārvaldīt krātuves, taču tie ir papildu šķēršļi, ja neesat.

Spyder patiešām ir noderīgas funkcijas vispārējai Python attīstībai. Tas, kas man uzreiz pievērsa uzmanību, ir mainīgā pētnieka rūts Spyder saskarnē. Rakstot komandas IPython, visi izveidotie mainīgie tiek reģistrēti tur, un tos var izpētīt interaktīvi. Vēl viens noderīgs rīks ir User Module Deleter. Iespējojiet to, un, izpildot Python skriptu, Python tulks no jauna ielādēs visus moduļus. Tādā veidā visas moduļa kodā veiktās izmaiņas var attiecināt uz darbojošos programmu bez restartēšanas visas lietojumprogrammas.

ActiveState Komodo IDE

ActiveState IDE produktu klāsts ietver versijas gandrīz visām galvenajām valodām. Uzņēmuma pieeja tam ir nedaudz līdzīga LiClipse darbībai: Paņemiet pamatproduktu (šajā gadījumā Komodo IDE) un aprīkojiet to ar Python izstrādes papildinājumiem.

Komodo ir vispiemērotākais tiem, kas jau pazīst Komodo iemiesojumus citās valodās. Cilvēkiem ar šādu pieredzi zem jostas nebūs problēmu ienirt Python produktā. Ja jūs atnākat aukstumā, ir vērts atzīmēt dažus lietotāja interfeisa dīvainības. Piemēram, lietotņu izvēlnes josla pēc noklusējuma nav redzama; jums ir jānoklikšķina uz hamburgera izvēlnes augšējā labajā stūrī vai jāpieskaras taustiņam Alt, lai to parādītu. Tas ir paredzēts, lai saglabātu lietas tīras un vienkāršas, taču dažām gaumēm tas var būt pārāk minimālistisks.

No otras puses, dažas interfeisa izvēles iespējas ir uzreiz pievilcīgas. Man īpaši patika redaktorā esošais koda priekšskatījums “minimap”, kas ir tālināts, kas ļauj īsumā pāriet uz jebkuru rediģējamā faila daļu. LiClipse ir līdzīga funkcija, taču ar Komodo ieviešanu ir vieglāk strādāt.

Lielākā daļa Python IDE ir aprīkoti ar tādiem parametriem kā Python specifiskas sintakses pārbaude vai koda uzlikšana. Komodo IDE tas viss ir, taču tas ir arī paredzēts, lai vienlaikus atbalstītu valodas 2. un 3. versiju. Piemēram, ja vēlaties palaist Python čaulu un jūsu sistēmas ceļā ir pieejami abu Python versiju tulki, varat skaidri izvēlēties jebkuru versiju. Man bieži ir bijis nepieciešams veikt ātru testa pārbaudi par konkrētā paziņojuma uzvedību Python 2 un Python 3, un tas ir ērts veids, kā to izdarīt.

Komodo nodrošina iespēju lietojumprogrammai piemērot vairākas palaišanas vai atkļūdošanas konfigurācijas, taču tas ir nedaudz mazāk elastīgs nekā līdzīga funkcija LiClipse. Palaižot lietotni, tiek piedāvāts izvēlēties profilus, ko lietot programmā. Jūs varat atspējot profila izvēli un pāriet tieši uz profila palaišanu, taču atspējošanu var veikt tikai visā lietojumprogrammā, nevis konkrētam projektam. Es dodu priekšroku LiClipse rīkjoslas nolaižamajai izvēlnei, no kuras ar klikšķi varat izvēlēties noteiktu profilu vai palaist pēdējo izmantoto profilu.

Viena patiesi brīnišķīga iekļaušana ir regulārās izteiksmes rīkkopa. Vienā šī rīka rūtī ierakstiet regulāru izteiksmi, otrajā rūtī sniedziet dažus datu paraugus, lai to pielietotu, un rezultāti parādās trešajā. Šis rīks atbalsta arī vairākas regex garšas, ieskaitot Python, un pat parāda atbilstības, sadalīšanas un aizstāšanas darbību rezultātus. Es visu laiku cīnos ar darba regulāru izstrādi, tāpēc šis rīks ir labs nodoms.

Vēl viena noderīga ārpakalpojuma funkcija ir parasto Python koda fragmentu katalogs. Noklikšķiniet, piemēram, uz "staigāt", un redaktors ievieto katla plāksnes kodu, lai izmantotu Python os. staigāt funkcija šķērsot direktorijus, viena no funkcijām, kuras sintaksi un lietojumu es nekad neatceros no rokas. Iekļautas arī citas valodas. Piemēram, ja jums ir nepieciešams iespiest standarta izlaiduma HTML failu Django veidnē, kuru gatavojat, Komodo ir iekļāvis jūs.

Noklusējuma Python izplatīšana tiek nodrošināta ar atbalstu SQLite no kastes. Komodo IDE to papildina, nodrošinot iebūvētu pārlūku SQLite datu bāzēm. Tā ir tāda pati kā MySQL vai Microsoft SQL Server nodrošināto darbvirsmas lietotņu noņemtā versija. Saskarne ir neveikla un nepievilcīga, taču tā ir lieliski piemērota ātrai un netīrai datu bāzes pārbaudei vai rediģēšanai uz vietas. Tas nav paredzēts kā pilnvērtīga IDE datu bāze.

Komodo atradīsit daudzas citas noderīgas funkcijas, pat ja tās nav īpaši mērķētas uz Python. Makro reģistrators ļauj ierakstīt un atskaņot kopīgas darbības, lai gan šķiet, ka tas nereģistrē dažus darbību veidus, piemēram, izvēloties lietotnes profilu, palaižot lietotni. Vēl viena funkcija ļauj reāllaikā sadarboties starp Komodo lietotājiem, lai gan, lai piekļūtu pakalpojumam, viņiem būs jāpiesakās kontos, izmantojot ActiveState.

LiClipse

Eclipse IDE bieži tiek kritizēts kā lēns un pārslogots, taču tā plašais valodas atbalsts un izstrādes papildinājumu galerija padara to par spēcīgu un vērtīgu instrumentu. Python tiek atbalstīts Eclipse, izmantojot PyDev papildinājumu. Ja izmantojat Eclipse tikai Python izstrādei, vislabāk ir paķert LiClipse. (Visā šajā pārskatā es izmantošu LiClipse kā stenogrāfiju funkciju kopumam, ko LiClipse un PyDev nodrošina kopā.)

LiClipse ir Eclipse atkārtota iesaiņošana ar PyDev, kā arī virkne citu Eclipse komponentu, kas paredzēti lietotāja pieredzes uzlabošanai. Kad LiClipse tiek palaists, tas izskatās un darbojas līdzīgi parastajam Eclipse izdevumam, aizliedzot LiClipse zīmolu un ikonas, tāpēc pieredzējušiem Eclipse lietotājiem nevajadzētu būt lielām grūtībām konfigurēt darbvietu pēc savas gaumes. Ja esat pieredzējis ar Eclipse, jums būs nepieciešams zināms laiks, lai uzzinātu, kā darbojas Eclipse darbvieta (šis Eclipse aspekts tiek regulāri kritizēts). Šajā ziņā LiClipse ir labākais cilvēkiem, kuriem Eclipse jau ir ērti, iespējams, strādājot tajā, izmantojot citu valodu.

Rezultātu karteSpēja (30%) Izrāde (10%) Lietošanas ērtums (20%) Dokumentācija (20%) Papildinājumi (20%) Kopējais rādītājs (100%)
IDLE 3.5.167875 6.5
Komodo IDE 10.1.188788 7.8
LiClipse 3.197789 8.2
PyCharm 2016.2.398988 8.5
Spyder 3.0.077776 6.8
Python rīki 2.2 Visual Studio 201598799 8.5
$config[zx-auto] not found$config[zx-overlay] not found