Recenzija: Visual Studio 2017 najbolji je ikad

Prije dvije godine, kad sam pregledao Visual Studio 2015, otisao sam misleci da je Microsoftov IDE postao najslozeniji proizvod ikad i da bi ga Microsoft trebao pojednostaviti u buducnosti. Pogriješio sam u jednom pogledu: iako je Microsoft izbacio nekoliko značajki za Visual Studio 2017, dodao je mnogo više. No zasigurno je Microsoft uspio isporučiti jednostavniji - i spretniji - IDE u Visual Studio 2017, unatoč povećanju svojih mogućnosti.

Za razliku od nekih prošlih verzija Visual Studija koje su se fokusirale na uvođenje novih kompliciranih Microsoftovih tehnologija poput Windows Communication Foundation i Windows Workflow Foundation, Visual Studio 2017 se instalira i radi bolje i brže, podržava više programskih jezika i platformi, poboljšava produktivnost programera i primjenjuje se na višestranačka radna opterećenja na prirodne načine.

Za većinu korisnika Visual Studija 2015 nadogradnja na Visual Studio 2017 neće biti nikakva poteškoća. Istražimo zašto.

Veći i manji

U nekim aspektima Visual Studio 2017 izgleda još više poput velike vreće tanko povezanih proizvoda nego prethodne verzije Visual Studija. Njegova sve veća zbirka razvojnih ciljeva sada uključuje Windows, Android, iOS, Linux, MacOS, .Net Core, Anaconda, Azure web aplikacije i povezane usluge, Docker, Office i web razvoj s ASP.Net, HTML5 / CSS3, JavaScript, Node .js, Python ili (veliki dah) TypeScript. Kakav popis - a nije ni potpun, jer postoje dodatne podržane tehnologije, kao što su SQL Server, Visual Studio Extensions i R.

Kako uopće početi vezati web razvoj s ASP.Netom za Android i iOS razvoj? Pa, postoji sve što je moguće učiniti u C #, a Xamarin i Mono su tehnologije za mobilnu stranu. To, međutim, nije jedina opcija za mobilne uređaje u Visual Studio 2017.

Možda vam se ne sviđa C #, ali i dalje želite razvijati za Android i iOS. Pa što kažete na korištenje C ++ ili JavaScript? Oba jezika podržavaju radna opterećenja za mobilni razvoj. Kako dublje kopate, strategija Visual Studija da ima nešto za sve, povezano zajedno sa zajedničkim sučeljima (i korisničkim sučeljem i API-jem), počinje imati smisla. Napokon, većina programera nužno je višejezična što se tiče programskih jezika i srodnih tehnologija. Vremena kad sam mogao sve napisati u Fortranu davno je prošao. I većina tvrtki ima čvrsta mišljenja o svojim "standardnim" razvojnim jezicima i okruženjima.

Ali što je s instalacijom? Ogromna veličina instalacije Visual Studio problem je od prvog proizvoda Visual Studio prije 20 godina. Visual Studio 2017 ima mnogo modularniji instalacijski program od prethodnih verzija (vidi sliku dolje), dobrodošlo poboljšanje. Minimalna instalacija je, iznenađujuće, relativno tankih nekoliko stotina megabajta. Međutim, potpuna instalacija Enterprise Edition traje 30 GB do 40 GB, ovisno o preduvjetima koji su već na sustavu. Microsoft mi kaže da je prosječna instalacija otprilike upola manja.

Veličina pune instalacije nije sva krivica Microsofta. Na primjer, samo Google Android Emulator koristi više od 17 GB. To znači da je sam Visual Studio mnogo manji nego što je bio, premda pokriva sve dodatne ciljne sustave.

Što ima novog?

Što je novo i uzbudljivo u Visual Studio 2017-u što bi vas moglo dovesti u iskušenje da nadogradite Visual Studio 2015 s trenutnim servisnim paketom? Microsoft tvrdi da je IDE brži "od pokretanja do gašenja", a sada nudi način za pregled, uređivanje i otklanjanje pogrešaka u kodu bez projekata i rješenja. Microsoft također tvrdi da vam poboljšanja navigacije kodom, IntelliSense, refaktoriranje, ispravci koda i otklanjanje pogrešaka štede vrijeme i trud na svakodnevnim zadacima bez obzira na jezik ili platformu. Svakako je sve to lijepo imati, no je li poboljšana produktivnost dovoljna da vas natjera na nadogradnju? Pokušat ću opisati kako se osjećaju u praksi kad razgovaram o IDE-u.

Ako ne želite izvršiti potpunu instalaciju, jer vam nedostaje prostora na disku ili vas ne zanima svaki aspekt proizvoda, modularni instalacijski program mnogo je prikladniji od instalacijskog programa Visual Studio 2015. S druge strane, koliko često instalirate Visual Studio? Nekoliko puta godišnje, s ažuriranjima svakih nekoliko tjedana? Zahvaljujem na poboljšanju, ali to ne bi trebalo imati velikog utjecaja ako niste ograničeni na diskovnom prostoru - na primjer, ako se razvijate na prijenosnom računalu s 128-postotnim diskom.

S druge strane, brži IDE ima ogroman utjecaj. Pokretanje i učitavanje rješenja Visual Studija postali su osjetno brži u posljednjih nekoliko ponavljanja, prelazeći od "Bolje da prokuham vodu i skuham čaj dok se moj projekt otvara" u Visual Studiju 2008 do trenutne nekoliko sekundi dok se moj projekt otvori. " Što se tiče rada s kodom minus projektima i rješenjima, to želim samo 20 godina, od Visual Studija 97.

Microsoft promovira ugrađeni paket Azure alata koji vam omogućuju konfiguriranje, izgradnju, uklanjanje pogrešaka, pakiranje i postavljanje aplikacija i usluga na Microsoft Azure izravno iz IDE-a. Ako koristite Azure, to je dobitak: preskakanje između Azure konzole, Azure naredbenog retka i Visual Studija može vam omesti i prekinuti tijek. Ako je AWS vaš primarni oblak, možda vas ovo uopće neće zanimati.

Konačno, Microsoft obećava da je s Visual Studiom 2017 i Xamarin brže i jednostavnije nego ikad izrada, testiranje i otklanjanje pogrešaka u mobilnim aplikacijama za Android, iOS i Windows. Ako Xamarin napokon je potresen do rada na Androidu i iOS-u, bez greške (koje sam ne testiranih intenzivno), a ako je XAML dizajner je postao dovoljno brzo korištenje bez mene žele izbaciti računalo na ulicu, tu volju biti veliki plus.

Što se tiče posljednjeg problema, Microsoft tvrdi da je nestalo oko 90 posto općih troškova otvaranja dizajnera XAML. U skladu s tom tvrdnjom, sada promatram stanku od pet sekundi s porukom "učitavanje dizajnera ...", što je zasigurno bolje od minute ili više vremena kojima je dizajner trebao učitati. Također vidim brži odgovor na povlačenje widgeta na površinu dizajna i upisivanje u prozor XAML koda. Kašnjenje sinkronizacije dva prozora i dalje je primjetno, ali više me ne tjera na pomisao da se Visual Studio možda srušio.

Također možete razviti mobilne platforme za više platformi u Visual Studio 2017 s Apache Cordova ili Visual C ++. Slučaj upotrebe mobilnog razvoja s JavaScriptom i Cordovom je jasan i mnogi se ljudi već oslanjaju na njega za mobilne platforme s više platformi. Ali zašto nam je potreban razvoj biblioteke na više platformi Visual C ++ između iOS-a i Android-a? Ispostavilo se da postoji mnogo programera za C ++ koji će to cijeniti. Za mobilne igre i potrošačke aplikacije ispada da je uobičajeni kôd, obično na C ili C ++, značajan postotak projekta, s korisničkim sučeljem napisanim u Objective C ++ ili Java na vrhu.

Iako Visual Studio 2017 podržava neki iOS i MacOS razvoj iz Windowsa, Mac vam je svejedno potreban. Zašto? Otklanjanje pogrešaka u programima konzola i ASP.Net za MacOS, izrada GUI-ja za MacOS i izrada i otklanjanje pogrešaka u aplikacijama za iOS.

C ++ je vrlo model modernog prijenosnog jezika i često se koristi za razvoj aplikacija koje rade na više operativnih sustava. To je dijelom i razlog zašto je Microsoft u ovo izdanje dodao i podršku za C ++ za razvoj Linuxa i poboljšao svoju usklađenost sa standardima C ++.

Što je nestalo?

Visual Studio 2017 oslobodio se nekoliko rijetko korištenih značajki. Međutim, trenutno se možete pouzdati u neke od značajki koje su bile fjordove; i dalje su dostupni, ali samo ako staru verziju pokrenete usporedo s novom. To još uvijek može ometati vaše usvajanje, jer instaliranje više instanci Visual Studija (posebno starijih verzija) na jedan disk praktički moli za problem s prostorom na disku.

Silverlight, nepropisna podskupina Windows Presentation Foundation za isporuku medija i bogatih interaktivnih aplikacija iz programskog dodatka za preglednik, bio je u bijesu početkom 2010-ih i sada je zastario. Preskočit ću unutarnju Microsoftovu borbu za moć između tabora Silverlight i HTML5; dovoljno je reći da je Silverlight izgubio. Stoga ne čudi da Visual Studio 2017 izostavlja podršku za razvoj Silverlight. Ako trebate održavati stare programe Silverlight, morat ćete i dalje koristiti Visual Studio 2015.

Slično tome, Microsoft više ne proizvodi pametne telefone sa sustavom Windows Phone i odbacuje starije verzije sustava Windows Phone i Windows Store u korist sustava Windows 10. Ovisno o verziji sustava Windows Phone koju trebate održavati, pridržavajte se Visual Studio 2015 ili Visual Studio 2012.

Microsoft je odustao od UML modeliranja iz Visual Studija 2017 i ne planira dalje ulagati u UML. Umjesto toga, ima modeliranje slojeva, dijagrame ovisnosti i provjeru sloja arhitekture za kôd. Također možete stvoriti i implementirati proširenja za modeliranje slojeva.

Ako vam zaista treba UML u Visual Studio 2017, možete koristiti jedan od stotina danas dostupnih UML alata, od kojih su mnogi besplatni i otvoreni, a neki od njih trenutno uključuju proširenja Visual Studio.

Instaliranje Visual Studija 2017

Visual Studio 2017 instalirao sam na dva stroja sa sustavom Windows 10: prijenosno računalo s vrlo malim SSD-om i toranj s tvrdim diskom pristojne veličine. Imajte na umu da sam koristio kandidata za izdanje od veljače, a ne konačnu verziju izdanja zbog drugog tjedna ožujka. Prijenosno računalo već je imalo instaliran Visual Studio 2015; na tornju je instaliran pregled Visual Studio 15, koji je bio prethodnik Visual Studija 2017. Koristio sam web instalacijski program iz MSDN-a. Zapravo nikada nisam vidio ponuđenu ISO instalacijsku sliku, iako to ne znači da ona ne postoji.

Nadao sam se da će instalacijski program Visual Studio 2017 biti dovoljno pametan da ponudi uklanjanje Visual Studija 2015 kad je vidio da na SSD-u prijenosnog računala nema dovoljno mjesta za obje verzije. Nema takve sreće. Budući da postoje slučajevi upotrebe Visual Studio 2017 i Visual Studio 2015 na istom stroju, instalacija Visual Studio 2017 u osnovi mi je pomogla. Morao sam pribjeći ručnom deinstaliranju bilo čega sličnog Visual Studiju 2015 i starijim verzijama srodnih tehnologija kao što je SQL Server, posao koji mi je trebao oko sat vremena i zahtijevao stalne intervencije. Tada sam mogao instalirati korisno velik dio Visual Studija 2017. Instalacijski program zadržao je pokrenutu karticu zahtjeva prostora na disku za radna opterećenja i module koje sam odabrao i neće nastaviti dok ne bude siguran da će sve odabrano odgovarati.

Iskreno sam mislio da je ručna deinstalacija nepotrebna poteškoća. S druge strane, jedino čega bih se mogao sjetiti, što bi mi olakšalo posao, bio bi čarobnjak za deinstalaciju starih verzija Visual Studija.

Na tornju sam uspio odabrati sva radna opterećenja Visual Studija 2017 i pritisnuti Instaliraj. Proces je možda trajao sat vremena. Ne znam sa sigurnošću, jer sam mogao otići i vratiti se da ga dovršim. Mislim da sam to prvi put uspio reći o instalaciji Visual Studija.

Nova modularna instalacija čini se velikom dobitkom. Izbori koje nudi logički su podijeljeni u "radna opterećenja", a unutar bilo kojeg radnog opterećenja možete lako uključiti ili izuzeti određene komponente, poput Google Android emulatora koji sam u početku morao izuzeti na prijenosnom računalu da bih instalirao ostatak radnog opterećenja Xamarin Mobile. Navodno možete instalirati tek nekoliko stotina megabajta, a pritom imate radno okruženje, što je lijepo za članove tima s usredotočenim odgovornostima i malim diskovima.

Brže, pametnije, bolje

Otkad koristim (i razvijam) IDE-je, što je više od 25 godina, naziv igre je produktivnost programera. Čak iu loša stara vremena miniračunala i radnih stanica, najveći trošak stvaranja softvera bile su plaće programera. Sada kada se troškovi hardvera i softvera mjere u tisućama dolara, umjesto u desecima tisuća, a godišnje plaće programera prelaze 100.000 USD umjesto ispod 50.000 USD, produktivnost programera još je važnija. Pogledajmo značajke Visual Studija 2017 koje su usmjerene na poboljšanje produktivnosti i "oduševljavanje" programera, citirajući Microsoft.

Kartica rezultata Sposobnost (30%) Izvedba (30%) Jednostavnost upotrebe (20%) Dokumentacija (10%) Vrijednost (10%) Ukupna ocjena (100%)
Visual Studio 2017 10 10 9 8 9 9.5