C++11/C++14 w Visual Studio 2013

Od jakiegoś czasu na msdn-ie i blogach głośno na temat nowej wersji Microsoftowego IDE, jednego z najlepszych platform do budowy aplikacji pod systemy tegoż producenta, i nie tylko, czyli Visual Studio. Od czasu jego premiery ponad miesiąc temu, gwara i dyskusje na jego temat nie ucichły, ciągle dochodzą nowe słuchy i doniesienia o kolejnych ciekawych eventach związanych z uruchomienie tej wersji, a także, co jest nowością - wersji online w chmurze na Azuresie.

O tym co nowego można znaleźć w VS można przeczytać na stronach producenta.

Ciekawe zmiany i funkcjonalności poprawiające ergonomie i wydajność pracy programisty są jak najbardziej potrzebne, niemniej, mnie, jak i innych programistów języka C++ interesują przede wszystkim zmiany w samym VC++ i zawartym w nim kompilatorze, jego wsparciu dla aktualnej i przyszłych wydań standardu tego języka.

W tej kwestii VC++ 2k13 można uznać za major update VC++ 12. Sam nowy kompilator nie wprowadził wielu znaczących nowych elementów C++11. To co "dostaliśmy" w CTP Nov 2012 zostało ustabilizowane i pojawiło się jako główny się trzon kompilatora, który obecnie wspiera większość features C++11, a także kilka C++14.

O nowościach w nowym VC++ i niekompatybilnościach, można przeczytać w artykułach na msdn: What's New for Visual C++ in Visual Studio 2013 i Breaking Changes in Visual C++. Pełną listę wsparcia C++11, z porównaniem do wcześniejszych wersji znajdziemy w artykule Support For C++11 Features (Modern C++). Zestawienie to bazuje na popularnych tabelach przedstawiających implementację i wsparcie dla poszczególnych elementów nowego standardu, publikowanych co jakiś czas na blogach dotyczących VC, głównie na Visual C++ Team Blog, tabele, o których mowa: VS 2k8 i 2k10, VS2k12.

Podobnie, jak wieść o nowym wydaniu VS rozeszła się z wielkim echem po sieci, także wieść po tym, że tak samo, jak w zeszłym roku, na początku listopada pojawił się nowy customer technology preview kompilatora VC++ - Nov 2013 CTP, który wzbogaca ten zwarty w 2013 kompilator o nowe ciekawe kąski z C++11 i C++14, a także, UWAGA, jedną propozycję z C++17!

Nie mogłem nigdzie doszukać się tabeli z porównaniem do poprzedniej wersji kompilatora. Tradycyjna tabela przedstawiające zmiany/nowości związane z C++11/14 wprowadzone w tym CTP została udostępniona na blogu zespołu VC: C++11/14 Core Language Features in VS 2013 and the Nov 2013 CTP.

Mam nadzieję, że stanie się to już tradycją i co roku będziemy otrzymywać nowe wersje. Gdzieś czytałem, możliwe ze przy debiucie VS2013, że Microsoft chce częściej wydawać nowe wersje tego IDE oraz narzędzi i kompilatorów zawartych w tym produkcie. Wraz z wydaniem wersji 2013, pojawiło się również kolejne, 4-te uaktualnienie do VC 2012, usprawniające migrację i korelacje projektów pomiędzy tymi dwiema wersjami, oraz nową wersję kompilatora i CRT.

Ja już prywatnie się już przełączyłem na nowego Visuala. Mimo iż ciężko mi się przyzwyczaić do nowego GUI (tego wprowadzonego już w 2012, czy nawet 2010) i kolorów - pamiętam wydźwięk, jaki pojawił się w sieci w czasie premiery VS 2012 i defaultowego dark theme. Dla mnie idealnie, jakby interfejs pozostał taki jaki mieliśmy w wersji z 2008 roku, on był prosty, czysty, idealny. No, ale trzeba podążać za światem i trendami...

Wracając do aktualnej wersji IDE, a tym samym abstrahując od samego kompilatora i języka C++, to co mi się rzuciło w oczy po pierwszym uruchomieniu, to trochę zmieniony schemat kolorowania kodu i zmiany w kolorach i autoformatowanie kodu. No i podoba mi się nagminnie jeden z nowych ficzerów - Peek Definition, naprawdę ptrzydatne narzędzie.

Nie chce mi się tutaj wypisywać i zachwycać nad każdą nowością, o której można dowiedzieć się na stronach produktu oraz wpisach na blogu teamu VC i VS (np. C++ IDE Improvements in Visual Studio 2013, Updates to Editor Enhancements in Visual Studio 2013, Visual Studio 2013 New Editor Features), a najlepiej na własnej skórze, do czego bardzo zachęcam. W porównaniu z poprzednimi wersjami, IDE zmierza w dobry kierunku, jeśli chodzi o poprawę ergonomii pracy programisty, wiele nowych możliwości naprawdę ułatwia pisanie kodu i rozwijanie projektów.

A jak ktoś kiedyś powiedział, poznanie własnego narzędzia, i wszystkich jego możliwości poprawia wydajność wielokrotnie, wiec czas poznać dogłębnie wprowadzone nowości i opanować skróty klawiszowe, aby w pełni cieszyć się możliwościami edytora i samego IDE. A szczególnie bez odrywania rąk od klawiatury, robić takie cuda, do których potrzebowałeś myszki i odrywałeś uwagę oraz skupienie od tego najważniejszego.
Normlanie, aż chce się pracować :)

Update at 03-12-2013 @ 22:12

Na blogu twórców VC++ pojawiła się tabelka porównująca zmiany w CTP2013 w stosunku do standardowej wersji z VC2013, więc aktualizuję fragment związany z tym tematem :)

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *