wing ide review features
slå samman sorteringskod i c ++ med rekursion
En omfattande genomgång av funktionerna, fördelarna och funktionerna med The Wing Python IDE:
Wing är en Python IDE (Integrated Development Environment) som hjälper utvecklingsaktiviteter med funktioner som intelligent redigering, felsökning och kodnavigering.
Det är en programvaruinstallation som kombinerar de mekanismer som krävs för att koda och testa programvaruapplikationer.
Vad du kommer att lära dig:
Wing IDE: En fullständig översikt
Vad är en IDE? Varför krävs det?
En integrerad utvecklingsmiljö (IDE) för samman många av utvecklingsverktygen som redaktörer, bibliotek, kompilatorer och plattformar som ett enda ramverk. Utvecklare använder ofta flera verktyg när de skapar, bygger och testar programvarukod.
Utan IDE måste utvecklaren identifiera, konfigurera, integrera och administrera alla dessa verktyg individuellt. IDE är utformat för att utrota behovet av flera verktyg och också hjälpa till att identifiera och minska misstag som gjorts under kodskapande och implementering.
Varför Wing IDE?
Wing är en Python-specifik IDE som erbjuder flera utestående fördelar enligt nedan.
- Intelligent Editor
- Enkel kodnavigering
- Kraftfull felsökare
- Integrerad enhetstestning
- Fjärrutveckling
- Anpassningsbar och utdragbar
Vi kommer att utforska dessa fördelar i nästa avsnitt.
Fördelar med Wing IDE
En detaljerad förklaring av varje fördel med Wing IDE har ges nedan.
# 1) Intelligent Editor
Wings redaktör förbättrar utvecklingen av Python genom att göra den mer interaktiv med sammanhangsanpassad automatisk komplettering och dokumentation, automatisk redigering, anropshjälp, kodvikning, refactoring, flerval, anpassningsbara inline-kodavsnitt och bokmärken. Wing kan emulera andra redaktörer som vim, Eclipse, Emacs, Visual Studio och XCode.
Dess viktigaste egenskaper inkluderar:
(i) Grunderna för solid editor
Editor stöder funktioner som konfigurerbara flikar och delade fönster, indragningshjälp, kodvikning, felindikatorer, besökshistorik, flexibla urvalslägen, redigeringsemulering och autospara.
Över 70 udda språk stöds. Öppna filer kan väljas antingen med en popup-meny eller med flikar högst upp i redigeraren. Redigeraren kan delas upp i valfritt antal delar, horisontellt eller vertikalt. När du skriver, indikerar Wing automatiskt baserat på sammanhanget i källkoden.
Redaktören matchar hakparenteser genom att markera dem medan du skriver. Wing IDE: s redaktör stöder uppvikning av kod baserat på dess struktur som ett sätt att visa innehållet på toppnivån i en fil eller klass och sedan gå ner till intressepunkten.
Du kan lägga upp enskilda funktioner med hjälp av vikningsmarginalen, kollapsa en definition helt och sedan expandera den stegvis eller fälla upp alla metoder eller klasser för att se en moduls toppnivå.
(ii) Intelligent automatisk slutförande
Wings automatiska kompletterare använder både statisk analys och runtime-analys för att tillhandahålla kontextpassande kompletteringar i redigeraren och integrerat Python-skal.
Källassistenten uppdateras när du flyttar runt redigeraren, autokompletteraren och andra delar av IDE för att visa dokumentation, information om objektets arv, samtalsignatur och länkar till Python-dokumentation för inbyggt och standardbibliotek.
För block som ”försök” lägger wing automatiskt till accept och låter dig lägga till undantagstypen eller konvertera den till ett försök-slut-block.
(iii) Autoredigering
En uppsättning autoredigeringsåtgärder förenklar kodningen ytterligare, Till exempel, Wing auto anger argument när du skriver och med anrop kan du bläddra igenom argumentlistan. Wing tar bort automatiskt alla oförändrade standardvärden när du lämnar anropet.
Du kan också enkelt ändra kodblock genom att välja ordning av rader och trycka på kolon-tangenten för att skapa ett nytt block med dessa rader. Alternativt kan du trycka på kolon-tangenten upprepade gånger för att flytta nästa rad eller angränsande radområde under ett nytt block.
Andra alternativ för automatisk redigering inkluderar automatisk indragning, automatisk avstånd valfritt i pep8-stil och automatisk korrigering av ordningstyp. När en fil med blandad fördjupning öppnas eller om en fil innehåller indragningsfel kan Wing eventuellt varna för filen och erbjuda att reparera och konvertera dess indrag.
När indragningsfel finns i filen visar indragningsverktyget knappar som kan användas för att hitta och reparera felen. Det finns till och med ett valfritt turbo-kompletteringsläge för Python där varje icke-symbolknapp blir en kompletteringsnyckel beroende på var du skriver och vilken tangent du trycker på.
(iv) Refactoring
Refactoring hjälper till att ordna om koden utan att påverka dess funktionalitet. Att flytta definitionspunkten och byta namn på symboler, skapa en funktion eller metod från en befintlig kod, lägga till en variabel för uttryck och uppdatera stilen för symbolnamn stöds av Wing.
Wings refactoring-verktyg omorganiserar kod utan att införa fel.
Du kan byta namn på alla användare av en symbol utan att bli förvirrad av andra symboler som råkar ha samma namn. Du kan extrahera kod genom att välja ett kodintervall och göra det till en ny funktion eller metod. Du kan införa variabler för uttryck och du kan flytta symboler genom att automatiskt uppdatera alla användningsställen.
Att välja kod för refactoring och andra ändringar är enkelt med hjälp av uppåtpilen och nedåtpilen för att välja kod i logiska enheter.
(v) Flerval
Wing stöder att göra flera val av samma uttryck i ett block, fil eller omfång genom att klicka på redigeraren och tillämpar ändringar enhetligt på valen.
(vi) Kodavsnitt
Wing stöder snabb inmatning av universella kodmallar och mest använda strukturer från redaktörens auto-kompletterare, som erbjuds i form av kodavsnitt som matas in genom att bläddra igenom koden. Utdrag kan ta olika former baserat på anropande sammanhang.
Wing använder runtime och statisk analys för att förstå och navigera genom komplex eller okänd kod. Du kan enkelt komma runt koden genom att skriva ett fragment av en fil eller ett symbolnamn med hjälp av kodindexmenyerna eller från källwebbläsaren.
(i) Gå till definition och hitta symbol
Wing flyttar till en symbols definitionspunkt från varje användning av symbolen i redigeraren. Wing IDE gör det enkelt att hoppa till definitionen av en symbol i Python-källkoden genom att klicka på den, trycka på F4 eller högerklicka och välja 'Gå till definition' .
Redigeraren innehåller symbolindexmenyer för navigering i en fil. Hitta symbolen och hitta symbolen i projektrutorna hjälper till att söka efter en symbols definition genom att skriva fragment av en symbol. Knapparna för besökshistorik bakåt och framåt längst upp till vänster i redigeraren kan användas för att återvända från eller återvända till definitionspunkten.
(ii) Hitta användningsställen
Wing navigerar och inspekterar användningen av en symbol i koden för ett projekt eller i en given sökväg. Wing kan söka efter och visa användningsställen för källsymboler i redigeraren. Endast sanna användningar av symbolen visas och inte andra symboler som råkar ha samma namn.
Klicka på 'Användningar' verktyget tar upp användningen i redigeraren. Högerklicka kan hitta alla användningsområden för en symbol i valfri modul i ditt projekt eller någon kod som du importerar.
(iii) Källläsare
Source Browser hjälper dig att navigera hela koden efter modul eller klasshierarki i den aktuella filen eller hela projektet. Det visar ett källindex som gör det enkelt att navigera genom koden i den aktuella filen eller projektet.
Filens struktur visas tillsammans med typerna av symboler, oavsett om de importeras eller ärvs och om de är privata för deras räckvidd.
Displayen kan filtreras för att utelämna vissa typer av symboler eller de som ärvs eller importeras. Källwebbläsaren kan också visa symboler för alla paket och moduler i projektet och den ger en vy som visar alla klasser som finns i projektet eller på Python-sökvägen.
(iv) Kraftfull sökning
Du kan söka och ersätta kod i en fil, katalog eller alla projektfiler med funktioner som textmatchning, reguljära uttryck eller jokertecken. Wing ger praktiska sökgränssnitt för olika sökuppgifter. Verktygsfältets sökning är ett snabbt och enkelt sätt att söka efter en enkel textmatchning i den aktuella filen.
Tangentbordsstyrd minisökning i menyn Redigera är ett mer sofistikerat sätt att söka på text och reguljära uttryck i en enda fil. Sökverktyget implementerar ett välkänt grafiskt användargränssnitt för sökning och ersättning av enstaka filtexter, jokertecken och reguljära uttryck.
Sökningen i filverktygets kraftfulla flerfilssökningar och ersättningsfunktioner gör att sökningar kan användas på alla filer i projektet, alla öppna filer eller i en vald katalog.
Uppsättningen av filsökningar kan begränsas med filfilter och det finns en mängd andra alternativ för sökstil och ändra resultatdisplaylistan. Sökningen i filverktyget innehåller ersättning för flera filer med ett reguljärt uttryck, gruppmatchning och kan också användas för att söka igenom Wing IDEs integrerade dokumentation.
# 3) Kraftfull felsökare
Wings Python Debugger modellerades för att fixa och isolera buggar och interaktiv kodutveckling. Wing kan felsöka vilken Python-kod som helst oavsett hur den startas eller om den körs lokalt eller på en annan maskin.
Felsökaren är kompatibel med koden som startas från IDE, som drivs av ett webbramverk eller en server, åberopas som ett skript i en inbäddad kopia av Python eller körs på en fjärrvärd. Du kan också felsöka Django-mallar och enhetstester som körs från Wings integrerade testverktyg.
(i) Grundläggande grundläggande felsökning
Med Wing kan du ställa in brytpunkter för att stoppa din kod i redigeraren eller Python Shell. När du väl har nått en brytpunkt eller ett undantag i felsökaren kan du inspektera programtillståndet från stackdataverktyget eller så kan du interagera i felsökningssonden som är ett Python-skal som fungerar i den aktuella felsökningsramen.
Wing visar felsökningsvärden när musen svävar över symboler i redigeraren och det finns ett klockverktyg för att titta på uttryck eller värden över tiden, antingen med symboliskt namn eller genom objektreferens. Wing IDE kan felsöka inte bara Python-kod utan också Django-mallfiler.
Du kan starta Django i felsökaren och använda en webbläsare för att ladda en sida som åberopar mallen.
Du kan använda Wings Debugger-faciliteter både i vilken Python som helst som åberopar mallen eller åberopas av mallen eller själva mallen. Wing ersätter Python-stackramarna i Django-mallmotorn med stackramar baserat på mallkontextdata och mallstack.
Felsökningssonden är användbar för att interagera med mallens data i den pausade felsökningen. Medan felsökaren är aktiv indikerar COG-ikonen i redaktörens auto-kompletterare att slutförandet också drivs av live-körningstillståndet i mallmotorn.
(ii) Flytta programräknare
Flytta Program Counter backtracks den aktuella raden med kodkörning så att du kan gå tillbaka och gå över en felaktig kod utan att starta om felsökningsläget. Felsökaren kan flytta upp och ner i stacken eller gå in i eller över funktions- och metodsamtal. Om du går förbi intressepunkten kan du klicka på valfri rad i den nedre stapelramen och flytta programräknaren.
(iii) Villkorliga brytpunkter
Villkorliga brytpunkter används när en kod anropas flera gånger för att identifiera och fixa buggar som påverkar en viss del. Villkorliga brytpunkter gör det enkelt att isolera ett visst fall som inte går att anropa koden upprepade gånger.
(iv) Felsöka kommandoraden
Wings Debug Probe är ett automatiskt kompletterande Python-skal som körs i sammanhanget med den aktuella felsökningsramen. Det inspekterar och interagerar med data vid körning för att förstå ett fel och slutföra en korrigering.
Du kan omedelbart testa ny kod i felsökningssonden eller genom att utvärdera kodintervall från redigeraren i det integrerade Python-skalet. Detta är ett användbart sätt att testa eller leka med koden eller att arbeta igenom utformningen av en fix för ett fel.
(v) Interaktiv utveckling
Editor och Debugger arbetar tillsammans för att få kodintelligensfunktionerna att dra nytta av live runtime-tillståndet. Att springa till en brytpunkt är ett utmärkt sätt att skriva en ny kod med direkt åtkomst till live runtime-tillståndet. Felsökaren är integrerad med enhetstestfunktioner för att göra den interaktiva utvecklingen testdriven.
(vi) Rekursiv felsökning
Rekursiv felsökning låter dig felsöka koden när du befinner dig vid en brytpunkt eller undantag under en felsökningssession.
(vii) Felsökning av fjärrutveckling
Remote Development-stöd kan starta fjärrkod från IDE. Wing kan konfigureras för att felsöka kod som startas på en fjärrvärd.
# 4) Integrerad enhetstestning
Wing tillhandahåller en testdriven utvecklingsstrategi som enhetstest, doc-test, py-test och Django-testramar. Integrerad med felsökaren är processen snabb och effektiv.
(i) Hantera enhetstester
Wing IDE: s testverktyg kan användas för att samla in och utföra enhetstester i ditt projekt. Enhetstester kan skapas som enskilda filer eller väljas med hjälp av reguljära uttryck eller jokertecken som tillämpas på projektets innehåll. Tester kan köras helt, en i taget eller genom filtrering.
När tester körs visas resultaten i testverktyget och genom att klicka på ett resultat visas testet i Editor. Misslyckade tester kan prioriteras. Resultaten inkluderar datum, körtid samt eventuella undantag eller fel som tagits upp av testet. En sammanfattning av testresultaten kan kopieras och klistras in för delning med teammedlemmarna.
(ii) Felsökningstest
Wings testverktyg stöder körning av tester i Debugger som ett sätt att snabbt diagnostisera och åtgärda problem som avslöjas av enhetstester. Genom att definiera och köra tester till en brytpunkt kan ny kod skrivas och testas i samband med live runtime-tillståndet, vilket sparar redigering och testning av omarbetningstid.
(iii) Flexibel testanrop
Startkonfigurationer används för att köra och felsöka tester i anpassade miljöer. För att öka körningshastigheten kan flera testprocesser köras samtidigt i en modul eller ett paket. Enhetstester kan också köras utanför Wing och resultaten kan importeras senare.
# 5) Fjärrutveckling
Wing stöder fjärrutveckling där Python-koden kan köras på en fjärrvärd, container eller virtuell maskin med säker åtkomst till alla Wings funktioner.
(i) Enkel åtkomst till fjärrvärdar
Remote Host är snabb att konfigurera och kan nås av SSH. Wings Python Shell och OS Commands-verktyg hjälper till att köra Python och andra kommandon på fjärrvärden.
(ii) Flexibel projektledning
Projektfiler som lagras på flera system och fjärrvärdar kan nås med Wing.
(iii) Fjärrfelsökning
Wing utökar alla felsökningsfunktioner för fjärrfelsökning som stopp vid brytpunkter och undantag, inspektera data och gå igenom koden. X11 vidarebefordran stöder felsökningskod som visar fönster genom att flytta fönstren dit Wing är värd.
# 6) Anpassningsbar och utdragbar
Wings display, såväl som funktioner, kan konfigureras.
(i) Justera gränssnittslayout och färg
Användargränssnittet kan konfigureras med alternativ för att justera positionen för Editor-delningar och verktygslådor, meny- och verktygsfältets innehåll, färg, teckensnitt och syntaxer. Wing kan ordna redigeraren och verktygen som tillhandahålls av IDE inom ett enda fönster eller i två lägen med flera fönster. Verktygsfältets färger och många andra konfigurationsalternativ finns också.
Verktyg kan flyttas från panel till panel och flera instanser av samma verktyg kan skapas. Redaktörsområdet kan delas upp godtyckligt eller sammanfogas i en redigeringsvy. Verktygspaneler kan också delas in i flera delar. Både redigeraren och verktyget kan också flyttas från panel till panel eller ut i ett separat fönster.
Verktygsområdena kan enkelt döljas och visas med tangenterna F1 och F2 och shift F2 maximerar Editor-området.
(ii) Anpassa funktionalitet
Wing kan emulera Visual Studio, vi, Eclipse, XCode och emacs. Funktioner kan aktiveras / inaktiveras och konfigureras för att fungera som önskat.
(iii) Förläng Wing With Python
Wing tillhandahåller ett skript-API som gör det möjligt att förlänga IDE genom att skriva Python-skript. Python-skript tillhandahåller funktionaliteten för både menyrader och verktyg i redigerings- och projektsmenyer.
Du kan felsöka och utveckla Wing med Wing. De platser där wing letar efter tilläggsskript kan konfigureras i inställningar. Skript fungerar ungefär som inbyggda IDE-kommandon och kan tilldelas tangentbindningar.
Mest användbara funktionen: Felsökning
När Wing når en brytpunkt eller undantag kan du gå igenom din kod rad för rad, eventuellt gå in i eller gå ut ur ett funktions- eller metodanrop. Att sväva över symboler i redigeraren visar det aktuella värdet för den symbolen om den är aktiv på stacken.
Stapeldataverktyget visar lokalbefolkningen och globalerna för den aktuella stapelramen och kan utöka sammansatta värden för att se deras delar. Ett liknande verktyg visar modulerna som har laddats genom felsökningsprocessen och gör det möjligt att inspektera data som har lagrats i dem.
Wing kan också titta på symbolernas värde när du går igenom din kod. Detta kan göras med namnet på symbolen eller så kan du titta på en viss instans genom dess objektreferens.
Stegen gör det möjligt att titta på ett värde även om symbolen var tvungen att gå utanför räckvidden. Wing gör det också möjligt att ändra värden under felsökning vilket kan vara användbart i vissa fall för att testa hur deras live-kod kommer att fungera med olika data.
Slutsats
Wing IDE erbjuder olika användbara funktioner som inbyggd felsökning, felsökning i trådar, kontroller för fel i källkoden, exceptionellt responsivt stöd, superflexibla makrofunktioner, anpassningsbara plugin-program och är helt värt priset.
Är du redo att prova Wing IDE?
Rekommenderad läsning
- 12 bästa Python IDE: er och kodredigerare 2021
- Hur man arbetar med Python Dictionary - Handledning med kodexempel
- Input-Output och filer i Python (Python Öppna, läs och skriv till fil)
- Pythons huvudfunktionshandledning med praktiska exempel
- Python OOP-begrepp (Python-klasser, objekt och arv)
- Python-handledning för nybörjare (praktisk Python-träning)
- Topp 10 mest populära kodgranskningsverktyg för utvecklare och testare
- Selen IDE Download Installation och Core Features Introduktion