Programmering

Gjennomgang: Visual Studio 2017 er det beste noensinne

For to år siden, da jeg gjennomgikk Visual Studio 2015, kom jeg bort og trodde at Microsofts IDE hadde blitt det mest kompliserte produktet noensinne, og Microsoft måtte forenkle det i fremtiden. Jeg tok feil i en henseende: Selv om Microsoft kastet ut noen få funksjoner for Visual Studio 2017, la det til mye mer. Men helt sikkert klarte Microsoft å levere en enklere og smidigere IDE i Visual Studio 2017, til tross for å øke kapasiteten.

I motsetning til noen tidligere versjoner av Visual Studio som fokuserte på å introdusere kompliserte nye Microsoft-spesifikke teknologier som Windows Communication Foundation og Windows Workflow Foundation, installeres og fungerer Visual Studio 2017 bedre og raskere, støtter flere programmeringsspråk og plattformer, forbedrer utviklerens produktivitet og gjelder til arbeidsplasser på tvers av plattformer på naturlige måter.

For de fleste brukere av Visual Studio 2015 vil oppgradering til Visual Studio 2017 være en no-brainer. La oss utforske hvorfor.

Større og mindre

I noen henseender ser Visual Studio 2017 enda mer ut som en stor gripepose med tenuøst relaterte produkter enn tidligere versjoner av Visual Studio. Den voksende samlingen av utviklingsmål inkluderer nå Windows, Android, iOS, Linux, MacOS, .Net Core, Anaconda, Azure webapper og tilkoblede tjenester, Docker, Office og webutvikling med ASP.Net, HTML5 / CSS3, JavaScript, Node .js, Python eller (stor pust) TypeScript. Hva en liste - og den er ikke en gang komplett, siden det finnes tilleggsstøttede teknologier, for eksempel SQL Server, Visual Studio Extensions og R.

Hvordan begynner man til og med å knytte webutvikling med ASP.Net til Android- og iOS-utvikling? Vel, det er en måte å gjøre alt ovenfor på i C #, med Xamarin og Mono som teknologier for den mobile siden. Det er imidlertid ikke det eneste alternativet for mobil i Visual Studio 2017.

Kanskje du ikke liker C #, men fortsatt vil utvikle deg for Android og iOS. Hva med å bruke C ++ eller JavaScript? Begge språkene har støttet arbeidsmengder for mobilutvikling. Når du graver dypere, begynner Visual Studio-strategien å ha noe for alle som alle er bundet sammen med vanlige grensesnitt (både brukergrensesnitt og API) å gi mening. Tross alt er de fleste programvareutviklere nødvendigvis flerspråklige når det gjelder programmeringsspråk og relaterte teknologier. Dagene med å kunne skrive alt i Fortran er for lengst borte. Og de fleste selskaper har sterke meninger om deres "standard" utviklingsspråk og miljøer.

Men hva med installasjon? Den enorme størrelsen på Visual Studio-installasjonen har vært et problem siden det første Visual Studio-produktet for 20 år siden. Visual Studio 2017 har et mye mer modulært installasjonsprogram enn tidligere versjoner (se figuren nedenfor), en velkommen forbedring. Minimumsinstallasjonen er overraskende relativt få hundre megabyte. Imidlertid tar en full installasjon av Enterprise Edition 30 GB til 40 GB, avhengig av forutsetningene som allerede finnes på systemet. Microsoft forteller meg at gjennomsnittlig installasjon er omtrent halvparten av det.

Størrelsen på full installasjon er ikke alt Microsofts feil. For eksempel bruker Google Android-emulatoren mer enn 17 GB. Det antyder at Visual Studio selv er mye mindre enn det pleide å være, selv om det dekker alle de ekstra målsystemene.

Hva er nytt?

Hva er nytt og spennende i Visual Studio 2017 som kan friste deg til å oppgradere fra Visual Studio 2015 med gjeldende oppdateringspakke? Microsoft hevder IDE er raskere "fra oppstart til nedleggelse" og gir nå en måte å vise, redigere og feilsøke kode uten prosjekter og løsninger. Microsoft hevder også at forbedringer av kodnavigering, IntelliSense, refactoring, kodefiks og feilsøking sparer deg tid og krefter på daglige oppgaver, uavhengig av språk eller plattform. Gjerne alle disse er fine å ha, men er den forbedrede produktiviteten nok til at du kan oppgradere? Jeg vil prøve å beskrive hvordan de har det i praksis når jeg diskuterer IDE.

Hvis du ikke gjør det Hvis du vil gjøre en fullinstallasjon, enten fordi du mangler diskplass eller ikke er interessert i alle aspekter av produktet, er modulærinstallatøren mye mer praktisk enn Visual Studio 2015-installasjonsprogrammet. På den annen side, hvor ofte installerer du Visual Studio? Et par ganger i året, med oppdateringer noen få uker? Jeg setter pris på forbedringen, men den skal ikke ha stor innvirkning med mindre du er begrenset til diskplass - for eksempel hvis du utvikler på en bærbar datamaskin som fulgte med en 128 GB solid state-disk.

En raskere IDE har derimot en enorm innvirkning. Visual Studio oppstart og løsningsbelastning har blitt merkbart raskere de siste iterasjonene, og går fra "Jeg må helst koke vann og brygge te mens prosjektet mitt åpnes" i Visual Studio 2008 til dagens "La meg bare stå opp og strekke meg etter noen få sekunder mens prosjektet mitt åpnes. ” Når det gjelder å jobbe med kode minus prosjekter og løsninger, vel, jeg har bare ønsket det i 20 år siden Visual Studio 97.

Microsoft viser en innebygd pakke med Azure-verktøy som lar deg konfigurere, bygge, feilsøke, pakke og distribuere applikasjoner og tjenester på Microsoft Azure direkte fra IDE. Hvis du bruker Azure, er det en gevinst: Å hoppe mellom Azure-konsollen, Azure-kommandolinjen og Visual Studio kan være distraherende og forstyrre flyten. Hvis AWS er ​​din primære sky, kan du imidlertid ikke bry deg om dette i det hele tatt.

Til slutt lover Microsoft at det med Visual Studio 2017 og Xamarin er raskere og enklere enn noensinne å bygge, teste og feilsøke mobilapper for Android, iOS og Windows. Hvis Xamarin endelig har blitt rystet for å jobbe på Android og iOS uten feil (som jeg har ikke testet grundig), og hvis XAML-designeren har blitt rask nok til å bruke uten å få meg til å kaste datamaskinen ut på gaten, vil det være et stort pluss.

På sistnevnte utgave hevder Microsoft at omtrent 90 prosent av overhead for å åpne XAML-designeren er borte. I samsvar med det påstanden observerer jeg nå en pause på fem sekunder med en "loading the designer ..." -melding, som absolutt er bedre enn det øyeblikket designeren pleide å ta for å laste inn. Jeg ser også raskere svar på både å dra widgets til designoverflaten og skrive inn XAML-kodevinduet. Forsinkelsen mens du synkroniserer de to vinduene er fremdeles merkbar, men får meg ikke lenger til å tro at Visual Studio kan ha krasjet.

Du kan også utvikle mobilapper på tvers av plattformer i Visual Studio 2017 med Apache Cordova eller Visual C ++. Bruksområdet for mobilutvikling med JavaScript og Cordova er tydelig, og mange stoler allerede på det for mobilapps på tvers av plattformer. Men hvorfor trenger vi Visual C ++ utvikling av plattformsbibliotek mellom iOS og Android? Det viser seg at det er mange mobile C ++ - utviklere som vil sette pris på det. For mobilspill og forbrukerapper viser den vanlige koden, vanligvis i C eller C ++, seg å være en betydelig prosentandel av prosjektet, med et brukergrensesnitt skrevet i Objective C ++ eller Java på toppen.

Selv om Visual Studio 2017 ikke støtter noen iOS- og MacOS-utvikling fra Windows, trenger du fortsatt en Mac. Hvorfor? Å feilsøke konsollapplikasjoner og ASP.Net for MacOS, å bygge GUIer for MacOS og å bygge og feilsøke apper for iOS.

C ++ er selve modellen til et moderne bærbart språk, og det brukes ofte til å utvikle applikasjoner som kjører på flere operativsystemer. Det er delvis grunnen til at Microsoft også la til C ++ -støtte for Linux-utvikling i denne versjonen og forbedret C ++ -standardoverensstemmelsen.

Hva er borte?

Visual Studio 2017 har gitt bort sjelden brukte funksjoner. Du kan imidlertid for tiden stole på noen av funksjonene som var ute etter fjordene; de er fremdeles tilgjengelige, men bare hvis du kjører en gammel versjon side om side med den nye. Det kan fortsatt hindre adopsjonen din, fordi installasjon av flere forekomster av Visual Studio (spesielt de eldre versjonene) på en enkelt disk praktisk talt ber om et diskplassproblem.

Silverlight, en upassende delmengde av Windows Presentation Foundation for levering av media og rike interaktive applikasjoner fra et nettlesertillegg, var raseri tidlig på 2010-tallet og er nå avskaffet. Jeg hopper over den interne Microsoft-maktkampen mellom Silverlight-leiren og HTML5-leiren; nok til å si at Silverlight tapte. Det er derfor ingen overraskelse at Visual Studio 2017 utelater støtte for utvikling av Silverlight. Hvis du trenger å vedlikeholde gamle Silverlight-applikasjoner, må du fortsette å bruke Visual Studio 2015.

På samme måte lager Microsoft ikke lenger Windows Phone-smarttelefoner og avskaffer eldre Windows Phone- og Windows Store-versjoner til fordel for Windows 10. Avhengig av hvilken versjon av Windows Phone du trenger å vedlikeholde, hold deg til enten Visual Studio 2015 eller Visual Studio 2012.

Microsoft har droppet UML-modellering fra Visual Studio 2017 og har ingen planer om å investere videre i UML. I stedet har det lagmodellering, avhengighetsdiagrammer og arkitektursjekk for kode. Du kan også opprette og distribuere lagmodelleringsutvidelser.

Hvis du virkelig trenger UML i Visual Studio 2017, kan du bruke et av hundrevis av UML-verktøy som er tilgjengelige i dag, hvorav mange er gratis og åpen kildekode, og noen av dem inkluderer for tiden Visual Studio-utvidelser.

Installere Visual Studio 2017

Jeg installerte Visual Studio 2017 på to Windows 10-maskiner: en bærbar PC med en veldig liten SSD og et tårn med en anstendig størrelse harddisk. Merk at jeg brukte en utgivelse kandidat fra februar, ikke den endelige versjonen på grunn av den andre uken i mars. Den bærbare datamaskinen hadde allerede Visual Studio 2015 installert; tårnet hadde forhåndsvisning av Visual Studio 15 installert, som var forgjengeren til Visual Studio 2017. Jeg brukte nettinstallasjonsprogrammet fra MSDN. Faktisk så jeg aldri et ISO-installasjonsbilde som tilbys, selv om det ikke betyr at det ikke eksisterer.

Jeg håpet at Visual Studio 2017-installasjonsprogrammet ville være smart nok til å tilby å fjerne Visual Studio 2015 da det så at det ikke var nok plass på den bærbare datamaskinens SSD for begge versjoner. Ikke noe hell. Fordi det er brukstilfeller for å ha både Visual Studio 2017 og Visual Studio 2015 på samme maskin, ble Visual Studio 2017-installasjonen i utgangspunktet bailed ut på meg. Jeg måtte ty til manuelt å avinstallere alt som ligner Visual Studio 2015 og eldre versjoner av relaterte teknologier som SQL Server, en jobb som tok meg omtrent en time og krevde konstante inngrep. Jeg kunne da installere en nyttig stor del av Visual Studio 2017. Installatøren holdt en løpende fane for diskplasskravene til arbeidsbelastningene og modulene jeg hadde valgt, og det ville ikke fortsette før det var sikkert alt valgt valgte ville passe.

Jeg trodde ærlig talt at å måtte utføre den manuelle avinstallasjonen var unødvendig. På den annen side hadde det eneste jeg kunne tenke meg som ville gjort jobben min lettere, vært en avinstallasjonsveiviser for gamle Visual Studio-versjoner.

På tårnet klarte jeg å velge alle arbeidsmengdene til Visual Studio 2017 og trykke Installer. Prosessen kan ha tatt en time. Jeg vet ikke helt sikkert fordi jeg klarte å gå bort og komme tilbake for å finne den fullført. Jeg tror det er første gang jeg noen gang har kunnet si det om en Visual Studio-installasjon.

Den nye modulinstallasjonen virker som en stor gevinst. Valgene det tilbyr er delt logisk i "arbeidsmengder", og innenfor enhver arbeidsmengde kan du enkelt inkludere eller ekskludere bestemte komponenter, for eksempel Google Android-emulatoren som jeg opprinnelig måtte ekskludere på den bærbare datamaskinen for å installere resten av Xamarin Mobile-arbeidsmengden. Du kan angivelig installere så lite som noen få hundre megabyte og fortsatt ha et arbeidsmiljø, noe som er fint for teammedlemmer med fokusert ansvar og små disker.

Raskere, smartere, bedre

Så lenge jeg har brukt (og utviklet) IDE-er, som er mer enn 25 år, har navnet på spillet vært programmererens produktivitet. Selv i min gamle datamaskiner og arbeidsstasjoner var den største kostnaden for å lage programvare utviklerlønn. Nå som maskinvare- og programvarekostnadene måles i tusenvis av dollar i stedet for titusenvis, og årlige programmererlønn løper over $ 100.000 i stedet for under $ 50.000, er programmererens produktivitet enda viktigere for bunnlinjen. La oss se på funksjonene i Visual Studio 2017 som tar sikte på å forbedre produktiviteten - og "glede" utvikleren, for å sitere Microsoft.

PoengkortEvne (30%) Opptreden (30%) Brukervennlighet (20%) Dokumentasjon (10%) Verdi (10%) Total poengsum (100%)
Visual Studio 20171010989 9.5