TEST RUN<>
072017<><>

Microsoft Visual Studio 2017

Programersko superoružje

Navršilo se dvadeset godina od pojavljivanja programskog paketa Visual Studio 97, koji je predstavljao prvu verziju te moćne programerske alatke. Koliki je bio njegov obim, jasno govori činjenica da je dolazio na četiri CD-a sa dodatnim CD-om sa MSDN bibliotekom. To je bio prvi pokušaj da se pod jedan krov stave sve programske alatke koje je izdavao Microsoft i da se integracijom omogući unifikacija različitih tehnologija i tako poveća produktivnost. Istina, sve do pojave verzija Visual Studio paketa sa dodatkom .NET, to su bila veoma različita radna okruženja, bez mnogo zajedničkih dodirnih tačaka.

Varijante i instaliranje

Predstavljanje Visual Studia 2017 (dalje u tekstu VS2017) ćemo započeti od opisa dostupnih verzija. Postoje tri varijante paketa: Community, Professional i Enterprise. Situacija je tu prilično jasna. Korisnici koji nemaju nameru da plaćaju za korišćenje programa preuzeće verziju Community, profesionalni programeri verziju Professional, a verziju Enterprise članovi razvojnih timova u kompanijama sa preko 250 računara ili preko milion dolara godišnjeg prihoda. Ukoliko izaberemo instalaciju neke od dve komercijalne verzije, moći ćemo da ih koristimo u probnom režimu mesec dana.

Dok su neke ranije verzije Visual Studia nudile prilično osakaćene besplatne varijante programa, situacija je sada mnogo povoljnija. Praktično sve najvažnije stvari se mogu obaviti i iz Community varijante, dok komercijalne verzije donose neka poboljšanja koja su značajna za korisnike kojima je programiranje u ovom paketu profesija. Glavna razlika između besplatne i profesionalne verzije je što ova druga ima podržan modul CodeLens (postoji još od verzije VS 2013), koji je vrlo udoban u procesu programiranja, ali posao se može obaviti i bez njega. Naravno, Enterprise verzija je najbogatija opcijama i nudi određeni deo alatki koje bi mogle da budu zanimljive programerima za mobilne uređaje, pošto podržava stvari kao što su udaljeni simulator za iOS uređaje ili dodatni instrumenti za platformu Xamarin. Osim toga, ova verzija tradicionalno ima najbogatiji skup funkcija za testiranje aplikacija.

Da bi nam pojednostavili izbor komponenti prilikom instalacije, programeri iz Microsofta su najčešće korišćene profile podelili po kategorijama koje se ovde nazivaju workloads. Glavne kategorije su Windows, Web & Cloud, Mobile & Gaming i Other Toolsets. Kategorija Windows sadrži tri stavke koje se odnose na razvoj UWP (Universal Windows Platform), C++ i .NET aplikacija. Kada izaberemo neku od njih, panel sa desne strane će prikazati šta je od ponuđenih alatki izabrano automatski, a šta je ostavljeno korisniku da izabere po želji. Slične se stvari ponavljaju i kada je u pitanju kategorija razvoja veb i cloud aplikacija, gde su nam na raspolaganju alatke za razvoj ASP.NET koda, odlična podrška za popularni programski jezik Python, podrška za rad sa cloud sistemom Microsoft Azure i razvoj aplikacija uz pomoć frameworka Node.js. Tu su još tri kategorije za koje nije jednostavno zaključiti zašto se nalaze zajedno sa alatkama za veb razvoj: Data storage and processing, Data science and analytical applications i Office/SharePoint development. Razvojne alatke za mobilne uređaje i video-igre obuhvataju mnoštvo .NET baziranih tehnologija za kreiranje aplikacija za iOS, Android i Windows, podršku za razvoj Java i JavaScript aplikacija, kreiranje igara putem programskog jezika C++, podršku za Unity framework i razvoj mobilnih aplikacija uz pomoć jezika C++. Poslednja workloads kategorija sadrži alatke za razvoj Visual Studio ekstenzija, Linux aplikacija na jeziku C++, kao i za razvoj multiplatformskih aplikacija na bazi .NET Core tehnologije. Alternativno je moguće vršiti izbor potrebnih komponenti putem menija Individual Components, gde su taksativno navedene najvažnije podržane funkcije.

Brže, bolje, bogatije

Svi oni koji su bar jednom koristili VS IDE znaju da je reč o robusnoj zverki koja je nesumnjivo moćno programersko sredstvo, ali je isto tako i dosta sporo radno okruženje kome su u slučaju kompleksnijih projekata potrebne desetine sekundi da bi učitao sve fajlove ili da bi izveo njihovo kompajliranje. Da stvar bude još gora, sa svakom novom verzijom situacija se samo dodatno pogoršavala. Zbog toga je tim Microsoftovih programera pred sebe stavio zadatak da to popravi. Iako je po reakcijama korisnika na internetu jasno da IDE nove verzije radi znatno brže (po testovima, podizanje programa je čak tri puta brže u odnosu na VS2015), iskustvo autora ovog teksta i nije bilo baš tako ružičasto. Nakon zaista sporog pokretanja posle instalacije, bilo je potrebno potražiti uzroke takvog ponašanja. Ispostavilo se da je jedan od „kočničara” antivirus program, pa je bilo neophodno izuzeti folder izvršnog fajla Devenv.exe iz procesa proveravanja virusa. Sledeća faza ubrzanja se sastojala u pozivanju menija Manage Visual Studio Performance, gde je bilo potrebno isključiti više dodataka koji su usporavali podizanje programa. Tek nakon toga je bilo moguće učitati radno okruženje u roku od petnaestak sekundi. Inače, još od ranije je poznato da na brzinu u radu sa VS veliki uticaj ima korišćenje solid state diskova i za ozbiljan rad sa programom, ovi mediji su praktično nezamenjivi.

Osim vremena potrebnog za podizanje programa, ubrzanja su postignuta i kod učitavanja projekata, bržeg pokretanja debagovanja aplikacija i bržeg pristupa Git resursima. Pohvalna karakteristika nove verzije je da više ne traži dosadnu konverziju projekata koji su rađeni u nekoj od ranijih verzija VS, već ih izvršava direktno. Brzini rada doprinosi i novi način učitavanja projekata koji podrazumeva učitavanje samo najvažnijih delova, dok se ostatak učitava po potrebi. Ova opcija nije standardno uključena, već se mora aktivirati putem menija Lightweight solution load for all solutions. Poboljšan je i rad sa memorijom, tako da se mogu učitati i veoma obimni projekti bez rušenja radnog okruženja.

Mnogo toga je u novoj verziji učinjeno po pitanju podrške razvoju softvera za različite platforme. Jedna od velikih novosti jeste dodavanje podrške za pisanje aplikacija za Linux korišćenjem programskog jezika C++. Među najznačajnije novosti spada i podrška za .NET Core (ASP.NET Core i Entity Framework Core 1.0 i 1.1), koja omogućava razvoj aplikacija za više platformi. Zbog optimizovanosti koda i podrške jednog izabranog dela funkcija, performanse koje nudi .NET Core su znatno bolje od onih koje ostvaruje klasična .NET platforma. U paket su integrisane i brojne alatke potrebne za razvoj projekata na platformi Microsoft Azure, kao i veliki broj šablona za tu platformu.

Nakon mnogo godina razvoja (još od 2000. godine), platforma Mono, koja nudi podršku za .NET tehnologiju na sistemima čiji proizvođač nije Microsoft, stasava u moćnu alatku kojom se koriste stotine hiljada programera, a koja je poznata pod nazivom Xamarin. On pruža mogućnost efektivnog i jednostavnog programiranja za tri najpopularnije mobilne platforme: Android, iOS i Windows. Pri tome su sve izvorne API funkcije tih operativnih sistema dostupne pozivanju preko Xamarina, pa je brzina izvršavanja koda obično na visokom nivou. Ne treba govoriti kolike su prednosti jednog takvog okruženja za proizvođače softvera koji istovremeno ciljaju na više različitih platformi. Da stvar bude još zanimljivija, Microsoft je upravo izdao varijantu paketa VS 2017 za Mac OS X, koji u suštini nije ništa drugo do prerađeni Xamarin (baziran je na paketu Xamarin Studio 6.2). Ukoliko nameravate da koristite ovu platformu, obavezno je da upgradeujete Windows 10, bar do verzije 15063 (Creators Update), pošto u suprotnom nećete moći da koristite dizajner korisničkog interfejsa.

Novotarija pod nazivom Structure visualizer nam daje mogućnost da postavljanjem miša na zagradu koja zatvara programski blok vidimo kako izgleda početak koda tog bloka, a uz to isprekidanim linijama vizuelno prikazuje strukturu koda. Sličnu logiku sledi i funkcija Run to click, koja nakon postavljanja miša na neku liniju koda u režimu tačke prekida, prikazuje mali ekranski taster koji predlaže pokretanje koda od te nove linije. Kada smo već kod debagovanja, pomenućemo i novi poboljšani prozor dijaloga, koji se prikazuje prilikom javljanja programskog izuzetka u debugging režimu. Podsistem kompletiranja koda poznat pod imenom IntelliSense sada prepoznaje skraćeni tekst pisan velikim slovima, što ubrzava kucanje dugačkih naredbi. Dodatno je poboljšano prepoznavanje otkucanih karaktera i davanje preporuka na osnovu sličnosti sa njima.

Jedna od veoma važnih funkcija svakog editora je automatsko pronalaženje određenog teksta i njegova zamena, ukoliko za to postoji potreba. Od ove verzije na raspolaganju imamo funkciju Go to All, koja pretražuje čitav projekat i vraća rezultate koji mogu biti kako variijable, tako i funkcije, nazivi resursa, nazivi fajlova i svega što se može prikazati. Poboljšana je i veoma korisna funkcija pod nazivom Find all References, koja sada grupiše reference po nekoliko različitih pravila i nudi poboljšan prikaz sadržaja. Dodatno, postavljanjem kursora miša na željenu poziciju dobijamo prikaz dela koda koji se nalazi na mestu poziva.

A vizuelno?

Sa vizuelne strane, sve je na prvi pogled više-manje ostalo isto kao pre, ali postoji dosta sitnih detalja koji su unapređeni u odnosu na prethodne verzije. Na raspolaganju su nam tri „teme” koje definišu gamu boja zaduženih kako za sintaksno bojenje prozora editora, tako i za celi korisnički interfejs. Zapravo, te tri teme ne određuju samo boje, već sadrže i informacije o vrsti korišćenih fontova i nekim drugim podešavanjima iz menija Options. Šteta što je Microsoft ograničio mogućnosti definisanja radnog okruženja na samo tri varijante, pošto smo sigurni da bi veća sloboda podešavanja bila toplo prihvaćena među korisnicima.

Ko je favorizovan?

Microsoft već dugi niz godina favorizuje C#, na štetu nekada vrlo popularnog programskog jezika VB.NET, što se lepo može primetiti prebrojavanjem ponuđenih šablona za kreiranje novih aplikacija, kao i brojem noviteta iz verzije u verziju. Novotarija u najraširenijim .NET jezicima ima veoma malo. Nove definicije C# i VB.NET dozvoljavaju korišćenje vrednosti tipa Tuples. Reč je o tipu podataka koji je uveden u C# još od četvrte revizije, a sada je dobio nove mogućnosti. Zadatak tog tipa je da grupiše različite tipove podataka u jedan skup, za razliku od nizova gde se koriste elementi istog tipa. Od ove verzije je omogućeno korišćenje vizuelnog separatora za razdvajanje brojeva. C# je dobio task-like povratne tipove za asinhrone metode, dok ugneždene lokalne funkcije sada podržavaju deklarisanje funkcija unutar opsega bloka. Sa novom verzijom C# moguće je koristiti modifikator ref za povratne vrednosti metoda i za lokalne promenjive, a dodat mu je i operator is, koji olakšava rad sa šablonima za proveru pripadnosti podacima tipa object.

Iako novosti nisu brojne, .NET programski jezici ni do sada nisu oskudevali kvalitetom i kvantitetom funkcionalnosti, pa će samo profesionalni sitničari imati razloga za negodovanje. Po mišljenju autora, šteta je što VS nije dobio modul za dizajniranje grafičkog korisničkog interfejsa za platformu Python, nalik onom za .NET, što bi mnogo značilo za ovaj popularni programski jezik, ali šta je-tu je.

• • •

To bi u nekim osnovnim crtama bio prikaz ove zaista kvalitetne alatke za programiranje, ali se pravi uvid u njegovu snagu može steći tek višemesečnim aktivnim korišćenjem i ovladavanjem njegovim brojnim funkcijama. Naravno, reč je o zaista kompleksnom i moćnom radnom okruženju, koje brojem ponuđenih opcija može negativno uticati na entuzijazam početnika, ali oni koji uspeju to da prevaziđu, na raspolaganju će imati zaista moćno programersko oružje. Postoji jedan deo programera koji je ranije izbegavao VS zbog njegove tromosti i glomaznosti, pa će povećanje brzine odziva koje nudi nova verzija biti dobar argument da još jednom razmisle o svojoj odluci. Broj podržanih tehnologija, multiplatformski razvoj i odlično RAD okruženje za kreiranje mobilnih aplikacija su veliki aduti paketa Visual Studio 2017.

Igor S. RUŽIĆ

 
Microsoft Visual Studio 2017
Šta mislite o ovom tekstu?
ConceptDraw Office 4
Autodesk EAGLE 8.2.1
Edraw Max 8.7
O&O FileDirect
Saladin
Avant Browser 2017
FreeDriveC 1.0.2
Cacheman 10.10
D3DGear 5.0
VidCutter 3.5.0
System Mechanic 16.5.3
WifiInfoView 2.25
Cdrtfe 1.5.7
WebSite X5 Professional 13
3D Shadow 2.0
Bootable USB Test 1.4.0
Fraqtive 0.4.8
Extensity 1.3.0
Harry’s Filters 4.10
QuickLook 0.2
Shutdown Logger
Start – A Better New Tab 3.8.2

Tip:
programersko okruženje
Potrebno:
Windows, Linux, Mac OS X
Veličina:
40 GB
Cena:
500 dolara
Adresa:
visualstudio .com
Home / Novi brojArhiva • Opšte temeInternetTest driveTest runPD kutakCeDetekaWWW vodič • Svet igara
Svet kompjutera Copyright © 1984-2018. Politika a.d. • RedakcijaKontaktSaradnjaOglasiPretplata • Help • English
SKWeb 3.22
Opšte teme
Internet
Test Drive
Test Run
PD kutak
CeDeteka
WWW vodič
Svet igara



Naslovna stranaPrethodni brojeviOpšte informacijeKontaktOglašavanjePomoćInfo in English

Svet kompjutera