Przejdź do treści

DevStyle - Strona Główna
11 brudnych sekretów Visual Studio

11 brudnych sekretów Visual Studio

Maciej Aniserowicz

30 marca 2008

Tools

Podobnych zestawień można znaleźć w sieci całe mnóstwo. Jednakowoż dorzucę swoje 11 kopiejek w postaci 11 punktów, o których dowiadywałem się z czasem i częstokroć niespodziewanie. Dlaczego 11? Bo nie mogłem się zdecydować na wykreślenie któregokolwiek z nich z listy. Poza tym Rammstein na każdym albumie zamieszcza 11 piosenek, które to stwierdzenie poddaje w wątpliwość sens jakichkolwiek związków przyczynowo-skutkowych zamieszczonych na niniejszym blogu.
Ale nieważne. Tak czy siak bez znajomości tej złotej jedenastki i tak bardzo wygodnie korzystało mi się z VS, jednak teraz nie potrafię sobie wyobrazić jak to możliwe. Kolejność losowa:


1) Przerwanie budowania solucji


Przy pisaniu dużego systemu solucja potrafi rozrosnąć się do niewygodnych rozmiarów. Można ją dzielić, można korzystać z własnych skryptów MSBuild czy NAnt… Jednak gdy w VS wciskamy z przyzwyczajenia CTRL+SHIFT+B i już na początku wiemy, że build się nie powiedzie – możemy go zatrzymać. Zawsze to kilka minut do przodu…
Podczas kompilacji w menu Build pojawia się opcja Cancel:


2) Edycja dwóch części jednego dokumentu – jednocześnie


VS (jak zresztą masa innych aplikacji, więc obejdzie się bez zbędnych pokłonów) oferuje możliwość ułożenia okien z kodem w grupach – obok siebie lub jedno pod drugim. Jednak oprócz tego mamy możliwość podobnego rozdziału tego samego dokumentu! A to za sprawą tego małego pypcia:


3) Frywolne dowolne zaznaczanie tekstu


Standardowe zaznaczanie – LMB i jedziemy. Można jednak zaznaczyć tekst niestandardowo, o tak:


Czasami przydatne (na przykład przy usuwaniu kilku modyfikatorów widoczności naraz z pól zadeklarowanych jedno pod drugim). Wystarczy przy zaznaczaniu przytrzymać ALT.


4) Skok do zamykającego/otwierającego nawiasu


Mamy kursor na klamrze otwierającej ciało metody, wciskamy ctrl + } – i kursor skacze na klamrę zamykającą. Powtórzenie czynności – i kursor znowu na klamrze otwierającej. Uwaga: to samo dotyczy wszystkich typów nawiasów jak również #region i #endregion itd.


5) Własne toolbary


Nie jest to nic odkrywczego, jednak chyba programiści zbyt rzadko korzystają z tej funkcjonalności VS. A szkoda, bo można dość znacząco zwiększyć funkcjonalność nawet wersji Express. Przykład:


Jak stworzyć owo cuś? Tools -> Customize -> Toolbars -> New.


6) Nawigacja przez Command Window


Nawet bez “wspomagaczy” takich jak R# czy CodeRush można znacznie usprawnić proces nawigacji między plikami w VS. Wystarczy skorzytać z Command Window. Przykładowa sekwencja klawiszy otwierająca plik Foo.cs: crtl+alt+a open foo.cs, gdzie pierwszy człon to otwarcie okna komend. Nie wygląda to-to super wygodnie, ale jest zdecydowanie szybsze niż szukanie pliku w Solution Explorer. Tym bardziej, że otrzymujemy swego rodzaju Intellisense filtrujące listę dostępnych plików “as-we-type”.
Niestety funkcjonalność ta nie jest dostępna w wersji Express.


7) Nawigacja pomiędzy otwartymi plikami


Pracując z wieloma plikami naraz, jak to się niekiedy zdarza, przełączanie się między nimi możemy uzyskać poprzez klikanie w odpowiednie zakładki myszką (co jest czasochłonne, jak wszystkie operacje gryzoniem) albo przeskakiwanie pomiędzy oknami na modłę alttabową za pomocą ctrl+tab. Ostatnio jednak odkryłem jeszcze jedno rozwiązanie: skrót klawiszowy ctrl+alt+strzałka w dół rozwija listę otwartych plików, po której możemy zgrabnie poruszać się strzałkami! Git:


8) Nawigacja III – Ostatnia Krew – Bookmark Window


W tym punkcie ograniczę się do stwierdzenia: jeżeli nie korzystasz z zakładek w kodzie oferowanych przez VS (lub ich bogatszych odpowiedników z np. CodeRush) – to zacznij. Wspomnę jeszcze, że Bookmark Window to jedyne okno, które sprawdziło się u mnie w trybie “floating“. Polecam wypróbowanie. Howgh!


9) Incremental Search


Po odkryciu tego cudeńka prawie przestałem korzystać ze standardowego wyszukiwania. Lubisz “incremental search”, znane np. z Firefoxa? Oto ono w wersji Visualowej: ctrl+i. Mnie osobiście niesamowicie irytuje przeszukiwanie stron WWW w ten sposób, ale w kodzie sprawdza się znakomicie. Uwaga: nie przeszukuje zwiniętych regionów!


10) Immediate Window


Nie bardzo chce mi się wierzyć, że ktokolwiek z tego nie korzysta, ale na wszelki wypadek… Nie wyobrażam sobie debuggowania programu bez tego magicznego okienka. Popijając frappe zafrasowany dochodzisz do frapującego fragmentu kodu, ściągasz frak i przejmujesz stery za pomocą odpowiednio ustawionego break-point, otwierasz Immediate Window, i… hulaj dusza! Piszesz w nim kod wykonujący obliczenia, zmieniający wartość elementów dostępnych z aktualnego zakresu, wypisujący stan obiektów itd. itp. Jeżeli to znasz – nic nowego nie napiszę. Jeżeli nie znasz – musisz spróbować sam i nawet rzeka mych słów nie jest zdolna opisać eksplozji radości, jaka zaleje twe umęczone ciało po pierwszym zderzeniu z tym narządkiem.


11) Automatyczne dodawanie niezbędnych usings


Visual Studio zdejmuje z naszych barków konieczność pamiętania w jakiej przestrzeni nazw znajduje się dana klasa – teraz wystarczy tylko znać jej nazwę! Po jej napisaniu z prawej strony pojawia się Smart Tag. Rozwinąć go można albo klikając myszą, albo wciskając alt+shift+F10 (w VS 2008 domyslnie także ctrl+. – dzięki sebcyg!). Do wyboru dwie możliwości, jak na załączonym obrazku:



OKej, to tyle z gołego Visual Studio. Chciałbym zobaczyć jakieś komentarze, żeby mieć ogólny ogląd sytuacji czy takie mini-porady się komukolwiek w ogóle przydają? Jeżeli tak – które konkretnie? Aktualnie zaczynam zabawę z różnego rodzaju “wspomagaczami” wydajności i kiedyś-tam-w-przyszłości zamierzam opisać swoje wrażenia, niekiedy na wyraźną prośbę ich autorów. Także – ciąg dalszy nastąpi!

Zobacz również