Recenzja: Visual Studio 2015 otwiera nowe możliwości

Visual Studio zawsze było dużym produktem z wieloma funkcjami, które rosły z każdym wydaniem. Visual Studio 2015 rozszerza ten trend w sposób, którego nigdy nie spodziewałem się zobaczyć od firmy Microsoft.

Tworzenie aplikacji mobilnych na wiele platform? Zaznacz to pole co najmniej dwa razy, raz dla platformy Xamarin i raz dla Cordova, z dodatkowym kredytem na przenośny C ++ i integrację z Unity.

Serwery wieloplatformowe? Zaznacz to pole co najmniej trzykrotnie, dla .Net Core, ASP.Net i Entity Framework oraz Python i Node.js.

Edycja i debugowanie międzyplatformowe? Tak. Visual Studio Code działa w systemach Mac OS X, Linux i Windows.

Zarządzanie cyklem życia aplikacji na wielu platformach? Obsługiwane są Git i GitHub, a firma Microsoft rozszerzyła obsługę Git w Team Foundation Server, aby umożliwić ciągłą integrację z tymi samymi rodzajami inteligentnych reguł ewidencjonowania, jakie ma Team Foundation Server dla swojego systemu kontroli wersji.

Kompilacje międzyplatformowe? Masz to. Oprócz pracy z Visual Studio Build i MSBuild, Team Foundation Build może używać Ant, Gradle, Maven, Android Build, Gulp, Xcode i innych.

Oczywiście, Visual Studio nadal obsługuje programowanie dla, wiesz, Windows i nadal zawiera wszystkie stare technologie dla aplikacji klasycznych Windows, od aplikacji konsolowych wbudowanych w C ++ z wywołaniami Windows API do aplikacji Windows Presentation Foundation w C # i XAML zaprojektowanych w Blend dla Visual Studio 2015. Ale definicja Windows została rozszerzona na Windows 10, z uniwersalnymi aplikacjami platformy Windows. Aplikacje te mają działać bez zmian na sprzęcie, takim jak telefony, tablety, laptopy, komputery stacjonarne, konsole do gier Xbox, zestawy słuchawkowe rzeczywistości rozszerzonej, urządzenia Surface Hub, serwery i chmury. Nadal nie wiadomo, jak dobrze ta wizja się rozwinie.

Lekka opcja dla wielu platform: Visual Studio Code

Visual Studio Code jest częścią ekosystemu programu Visual Studio, ale nie jest odpowiedni dla programu Visual Studio. Zamiast tego jest to darmowy, wieloplatformowy edytor, który łączy powłokę Atom Electron o otwartym kodzie źródłowym z wieloma technologiami firmy Microsoft. Używałem go na Mac OS X i Windows i bardzo mi się podoba; działa również w systemie Ubuntu Linux.

Dlaczego po prostu nie użyć Atom? W przypadku języka TypeScript, JavaScript, C # i Visual Basic program Visual Studio Code ma doskonałą obsługę języków. W przypadku innych 30-nieparzystych obsługiwanych języków program Visual Studio Code ma parzystość z Atom.

Dlaczego nie skorzystać z pełnego programu Visual Studio? Możesz, jeśli masz maszynę z systemem Windows lub maszynę wirtualną o wystarczającej mocy, ale Visual Studio Code jest znacznie lżejszym programem, który uruchamia się szybciej i wymaga znacznie mniej zasobów komputera.

Nowość w programie Visual Studio 2015

Jak wspomniałem na początku, Visual Studio 2015 zawiera rozbudowane wsparcie dla wieloplatformowego tworzenia aplikacji mobilnych: instalacja i integracja Apache Cordova, instalacja i integracja Xamarin, przenośny C ++, ulepszony emulator Androida i integracja z Unity.

Możesz tworzyć wieloplatformowe aplikacje serwerowe i wdrażać je na serwerach Windows i Linux, a także uruchamiać je na komputerach stacjonarnych i laptopach z systemem Mac OS X. Obsługa serwerów obejmuje ASP.Net 5, Python, Node.js i nowe oprogramowanie open source .Net Core 5 dla systemów Windows, Linux i Mac OS X.

W programowaniu dla systemu Windows dostępna jest nowa generacja uniwersalnych aplikacji, nowe narzędzia diagnostyczne i nowe funkcje projektowe. W obszarze produktywności jest lepsze debugowanie, w tym debugowanie lambd i jednoczesne monitorowanie wydajności i debugowanie historyczne. W edytorze procesory językowe Roslyn zasilają żarówkę, która pojawia się, kiedy i gdzie występuje typowy problem w kodzie, i oferują automatyczne poprawki kodu i ulepszoną refaktoryzację. W międzyczasie Visual Studio 2015 zawiera wiele aktualizacji języków programowania, w tym C #, Visual Basic, C ++ i TypeScript, a także rozszerzenia dla Python i Node.js.

Visual Studio Online i Team Foundation Server 2015 obsługują teraz haki rozszerzalności i integrację z Trello, Campfire i podobnymi. Funkcja planowania zwinnego obejmuje tablice Kanban i tory do pływania. Teraz możesz szybko edytować kod i zatwierdzać bezpośrednio w programie Visual Studio Online i Team Foundation Server. Kiedyś trzeba było wrócić do programu Visual Studio lub innego narzędzia do edycji kodu.

Zrozumienie wersji programu Visual Studio 2015

Mnogość wydań Visual Studio 2015 wystarczy, aby recenzentowi przyprawić o oślepiający ból głowy. Krótkie podsumowanie:

  • Społeczność jest bezpłatna. Ta edycja powinna zadowolić indywidualnych programistów, którzy nie tworzą aplikacji biznesowych.
  • Pro z MSDN kosztuje 1199 USD. Ta edycja jest dobra dla profesjonalnych programistów i zespołów.
  • Enterprise z MSDN kosztuje 6 119 USD (znacznie mniej niż Visual Studio Ultimate 2013). Jest to „rozwiązanie klasy korporacyjnej z zaawansowanymi możliwościami dla zespołów pracujących nad projektami o dowolnej wielkości i złożoności, w tym zaawansowanych testów i DevOps” - innymi słowy, ma wszystkie zalety.

Darmowe wersje Express SKU nadal istnieją, ale Microsoft sugeruje skorzystanie z bezpłatnej edycji Community, która oferuje więcej. Test Professional z MSDN nadal istnieje i możesz kupić kopię programu Visual Studio Team Foundation Server 2015.

Mówiąc o innych narzędziach do edycji kodu, Visual Studio Code to darmowy wieloplatformowy (Windows, Linux i Mac OS X) edytor kodu zbudowany na powłoce Atom Electron typu open source, z głęboką obsługą języków przez Roslyn i kompilator TypeScript, obejmujący więcej ponad 30 języków programowania na poziomie podświetlania składni i dopasowywania nawiasów, a także kilka na poziomie IntelliSense.

.Net Core 5 to zoptymalizowana pod kątem chmury, wieloplatformowa implementacja platformy .Net Platformy typu open source, która obecnie obsługuje systemy Linux, Windows i Mac OS X. Działa również w kontenerach Docker w systemie Linux. .Net Core jest refaktoryzowanym podzbiorem .Net Framework, ma zarówno natywne, jak i środowisko wykonawcze CLR (VM aplikacji) i obsługuje zarówno Windows Store, jak i aplikacje ASP.Net.

Aplikacje Universal Windows Platform nie tylko działają na szerokiej gamie sprzętu, ale korzystają z szybkiego środowiska wykonawczego .Net Native. Możesz wybierać spośród języków C #, Visual Basic, C ++ i JavaScript (w tym Cordova) i tworzyć interfejs użytkownika w XAML, DirectX lub HTML. Możesz wyświetlać podgląd projektów XAML w programie Visual Studio na różnych wymiarach urządzeń, od 5-calowego telefonu po 84-calowy Surface Hub. W aplikacjach Universal można używać rozszerzeń specyficznych dla urządzenia, o ile opakujesz te rozszerzenia w kod, który sprawdza obecność odpowiednich interfejsów API w czasie wykonywania. Chociaż możesz projektować XAML w programie Visual Studio, preferowanym narzędziem do projektowania XAML jest ulepszona wersja Blend for Visual Studio 2015.

Zaktualizowane języki programowania

C # 6 i Visual Basic 14 oferują kilka pożądanych aktualizacji języka, w tym nameofwyrażenia, operatory warunkowe o wartości null, bloki awaitin catchi oraz finallyelementy składowe funkcji z treścią wyrażenia.

Standardy i przenośny kod oznaczają ulepszenia języka C ++, takie jak zgodność ze standardami C ++ 11 i C ++ 14 oraz włączenie niektórych funkcji C ++ 17. Kompilator C ++ ma teraz szybsze kompilacje i ulepszenia generowania kodu i bezpieczeństwa. Nie wiem, czy kompilacje są teraz wystarczająco szybkie, aby wyeliminować wydłużone sesje „kompilacji”, których programiści C ++ często używają do parzenia kawy, odwiedzania obiektów i gry w tenisa stołowego. Przeniesienie dużej bazy kodu do nowej wersji kompilatora C ++ i wykonanie wszystkich niezbędnych testów regresji może zająć dużo czasu.

F # 4.0 został stworzony przez deweloperów społeczności F #, z których około jedna czwarta jest stowarzyszona z firmą Microsoft. Wprowadzono wiele ulepszeń języka i narzędzi, ale najbardziej oczywiste są dla mnie ulepszona funkcja IntelliSense i debugowanie.

TypeScript 1.4 i TypeScript 1.5 (Beta) nadal budują nowe funkcje, aby współpracować z większą liczbą wzorców JavaScript, tworzyć bogatsze pisma i korzystać z nowych funkcji ECMAScript 6.

Instalowanie programu Visual Studio 2015

Instalacja programu Visual Studio stała się bardziej szczegółowa. To, czy to ma znaczenie, zależy od Twoich potrzeb. Jeśli potrzebujesz tylko podzbioru funkcji, możesz mieć, a także przyspieszyć instalację i zmniejszyć jej zajmowaną powierzchnię. Jeśli i tak zamierzasz zainstalować wszystko, równie dobrze możesz to zrobić od razu. Chociaż możesz dodawać elementy do częściowej instalacji na żądanie, odmiana prawa Murphy'ego mówi, że każda funkcja, której nie zainstalowałeś początkowo, będzie niezbędna w sposób krytyczny czasowo, więc instalacja przyrostowa nastąpi w najgorszym możliwym momencie.

Byłem mile zaskoczony, widząc, jak Visual Studio zajmuje się instalacją wszystkich zależności open source, aż do poziomów podstawowych, takich jak instalacja zestawów SDK dla systemu Android i Java wymaganych przez Apache Cordova. Instalowanie ich ręcznie może być frustracją, jeśli zamówisz nieprawidłowo.

Zarówno w przypadku częściowej, jak i pełnej instalacji, zauważyłem, że instalacje Visual Studio 2015 są mniej obarczone ryzykiem i frustracją niż poprzednie wersje - dopóki nie pojawił się zestaw Windows 10 SDK. Kiedy zainstalowałem Windows 10 SDK, odkryłem, że jego XAML Designer (jedna z jego fajniejszych nowych funkcji) popełnił błąd w zupełnie nowym, pustym projekcie. Spędziłem około dnia z zespołem Visual Studio, rozwiązując problem. To powiedziawszy, zestaw SDK działał dobrze w innej instalacji, więc nie jest to powszechny problem. (Aktualizacja: istnieje teraz obejście; zobacz sekcję „Tworzenie uniwersalnych aplikacji systemu Windows” poniżej).

Narzędzia języka Python w programie Visual Studio 2015 obsługują kompilatory CPython, IronPython, PyPy, Anaconda i inne kompilatory języka Python, a także zapewniają funkcję IntelliSense w edytorze i debugowanie interaktywne, w tym tryb mieszany (Python / C ++) i debugowanie między systemami operacyjnymi.

Od czasu mojej recenzji 7 środowisk IDE JavaScript, narzędzia Node.js dla programu Visual Studio, teraz w wersji 1.1 RC, dodały obsługę programu Visual Studio 2015 (natch) i nowy szablon Dockerfile oparty na systemie Linux, aby ułatwić uruchamianie aplikacji i działa w kontenerze Docker. Aby dodać szablon Dockerfile do projektu Node.js, kliknij prawym przyciskiem myszy projekt, wybierz opcję Dodaj nowy element i wybierz szablon Dockerfile.

Ta wersja NTVS ulepsza również Node.js IntelliSense, formatowanie, debugowanie, TypeScript, uruchamianie testów jednostkowych i integrację Npm. Po dodatkowym pobraniu NTVS 1.1 RC obsługuje nowe rozszerzenie IoT, które może wdrażać uniwersalne aplikacje Windows oparte na Node.js na urządzeniach Windows IoT Core, takich jak Raspberry Pi 2.

Edycja kodu w programie Visual Studio 2015

Kilka lat temu miałem prywatną odprawę od ówczesnego dyrektora generalnego zespołu Visual Studio na temat planów dotyczących następnej wersji programu Visual Studio. Po przejrzeniu slajdów zapytała mnie, co jeszcze mógłbym zasugerować, a ja wskazałem, że konwencja falistego podkreślenia sprawdzania pisowni w czasie rzeczywistym w programie Word może być stosowana do sprawdzania składni w programie Visual Studio w czasie rzeczywistym. Doszło do wielu bazgrołów; funkcja pojawiła się w następnej wersji beta.

Potem zapytała mnie, z błyskiem w oku, czy chcę Clippy w Visual Studio. Śmiejąc się, powiedziałem: „Jeszcze nie. Może nigdy, chyba że przedstawione sugestie były naprawdę dobre ”. (Clippy miał okropną reputację wśród użytkowników Worda za robienie głupich sugestii w irytujący sposób.)

Odpowiednikiem Clippy w programie Visual Studio 2015 jest żarówka, która pojawia się, gdy edytor Visual Studio uważa, że ​​widzi problem z kodem i ma sugestię, a także za każdym razem, gdy wpiszesz „^.”. Żarówka nie tylko sugeruje poprawki typowych problemów z kodem, ale także możliwe refaktoryzacje kodu. Menu refaktoryzacji zniknęło, a wszystkie operacje refaktoryzacji zostały przeniesione do żarówki. Podsumowując, powiedziałbym, że żarówka to dobra rzecz.

Zmiana nazw zmiennych została znacznie ulepszona w programie Visual Studio 2015; możesz zobaczyć, co zrobi, zanim to się stanie. Analiza kodu na żywo i automatyczna korekta również zostały znacznie ulepszone. Częścią magii jest to, że analiza opiera się na konkretnych wskazówkach dotyczących kodu dla platform firmy Microsoft i pakietów NuGet, na które jest przeznaczona.

Wydaje się, że jest to niewielka zmiana, ale możesz teraz dostosowywać, zapisywać i przywracać układy okien dla programu Visual Studio. Dlaczego to ma znaczenie? Jeśli okresowo przełączasz się między komputerami o różnych rozmiarach ekranu, zaoszczędzisz mnóstwo czasu, po prostu podnosząc zoptymalizowany układ dla aktualnie używanego ekranu.

Program Visual Studio ma teraz obsługę dotyku: przewijanie (dotykanie i przeciąganie na powierzchni edytora na zwykłych i ulepszonych paskach przewijania), szczypanie, aby powiększyć, wybieranie całej linii przez dotknięcie marginesu edytora, wybieranie słów przez dwukrotne ich dotknięcie i naciśnij i przytrzymaj, aby wywołać menu kontekstowe edytora. Jeśli masz maszynę programistyczną z ekranem dotykowym - powinieneś, jeśli tworzysz na Windows 10 lub urządzenia mobilne - okaże się to przydatne.

I moje ulubione ulepszenie interfejsu użytkownika: koniec z menu WIELKIMI LITERAMI. Dobra zabawa.

Testowanie, debugowanie, diagnostyka i monitorowanie wydajności

Ci z was, którzy zawsze piszą doskonały kod za pierwszym razem, mogą przejść dalej, nie ma tu nic do oglądania. Resztę z nas czeka gratka: debugowanie programu Visual Studio, które już było całkiem dobre, stało się jeszcze lepsze.

Warunkowe punkty przerwania istnieją od dawna. Teraz możemy również określić akcje, które mają zostać podjęte po trafieniu w punkt przerwania. Obejmuje to punkty przerwania we właściwościach zaimplementowanych automatycznie oraz użycie wyrażeń lambda w akcjach punktów przerwania, wyrażeniach obserwacyjnych i oknie bezpośrednim.

Dwa nowe narzędzia - Live Visual Tree i Live Property Explorer - pozwalają zbadać wizualne drzewo uruchomionej Windows Presentation Foundation lub aplikacji Windows Store. Nowe narzędzia diagnostyczne dostępne podczas debugowania to lista zdarzeń, narzędzie Użycie pamięci i wykres użycia procesora. W międzyczasie, gdy uruchamiasz kod w debugerze, program Visual Studio automatycznie oblicza czas i informuje o (szacowanym) czasie, który upłynął, i czasie procesora dla kodu. Po debugowaniu trzeba było pracować nad wydajnością.

Jeśli nie debugujesz, możesz użyć nowego narzędzia Oś czasu aplikacji, aby śledzić zużycie zasobów systemowych w czasie dla Windows Presentation Foundation, Windows Store 8.1 i uniwersalnych aplikacji XAML platformy Windows. Podobnie narzędzie Diagnostyka sieci umożliwia śledzenie operacji sieciowych HTTP dla aplikacji Windows Store i uniwersalnych aplikacji Windows. A jeśli tworzysz aplikacje DirectX (często, ale nie zawsze, gry), możesz teraz oglądać wykresy czasu klatki, liczby klatek na sekundę i wykorzystania GPU, gdy aplikacje działają na żywo. Dzięki tym wskaźnikom dowiesz się, czy procesor graficzny lub procesor może być wąskim gardłem wydajności Twojej aplikacji.

Karta z punktami Zdolność (30%) Wydajność (30%) Łatwość użytkowania (20%) Dokumentacja (10%) Wartość (10%) Łatwość rozwoju (20%) Ogólna ocena
Visual Studio 2015 10 9 8 8 9 0 9.0