ReSharper 5.0 Nightly Build – In Action

Od jakiegoś czasu – a dokładnie od 19 listopada – udostępniono do testów nową wersję ReSharpera –  5.0. Jest to co prawda dopiero wersja beta, ale nie mogłem odmówić sobie przyjemności przetestowania :)

Pierwsze wersje trochę mi namieszały, ale reinstall Visual Studio pomógł. Ostatnio zainstalowana przeze mnie wersja 5.0.1537 póki co działa stabilnie.

Nowy Resharper oferuje wsparcie dla VS 2008 oraz VS 2010.

resharper_1

Poza wsparciem dla nowego VS, Resharper 5.0 oferuje sporo nowych przydatnych funkcji:

Wsparcie dla ASP.NET

  • nowe okienko “File structure” pokazujące budowę pliku aspx, ascx
  • generowanie placeholedrów i automatyczne powiązanie ich z MasterPagem
  • funkcja Go to file member pozwala szybko “powędrować” do innego powiązanego pliku, np.: MasterPage, kontrolki użytkownika
  • automatyczne generowanie referencji do kontrolek :)
  • nowe templaty do generowania contentu strony oraz szablony plików

resharper_6

Wsparcie dla ASP.NET MVC

  • lepsze (niż VS) wsparcie w intellisense
  • nawigacja pomiędzy powiązanymi obiektami
  • tworzenie nowych typów i metod

Możliwość debugowania źródeł .NET oraz bibliotek, dla których posiadamy pliki pdb.

Bardzo przydatne -np. na ToString() klikamy “Go to definition” i podglądamy, co się kryje w środku.

resharper_2

resharper_3

Bookmarki

Kolejna ciekawa nowość. Dodajemy bookmarka i później możemy bardzo szybko w dane miejsce wrócić. Domyślnie za pomocą skrótów możemy zarządzać 10 bookmarkami – ctrl+shift+numer (np. ctrl+shift+1) dodajemy bookmarka, ctrl+numer “wędrujemy” do bookmarka.

resharper_5

resharper_7

Oczywiście możemy dodawać więcej bookmarków (tzw. anonymous bookmark) i tylko w tej sytuacji, chcąc do niego “powędrować”, musimy go wybrać z listy (najpierw: ctrl+shift+’)

resharper_8

“Historia wartości”

Nowe okienko pokazujące, jak “wędrowała” wartość jakiejś zmiennej pomiędzy metodami.

resharper_4

Na powyższym screenie widać, że nasza zmienna testValue została przekazana jako parametr metody SampleMethod. Wartość zmiennej przekazanej do tej metody została przekazana z GetSampleValue, a w tej metodzie przypisaliśmy jej wartość 10 – czysto i przejrzyście.

To na razie tyle z nowych funkcjonalności, które przetestowałem – kolejna wersja i kolejny raz WIELKIE WOW :). O nowych ciekawych doświadczeniach postaram się informować na bieżąco.

Więcej o nowej wersji ReSharpera na stronie: http://blogs.jetbrains.com/dotnet/2009/10/resharper-50-overview/.

Nowe wydania R# 5.0 można pobrać ze strony: http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+5.0+Nightly+Builds

ReSharper 4.5 Beta

Oj dzieje się, dzieje :)

Od wczoraj jest dostępne ASP.NET MVC w wersji RTM, dodatkowo został udostępniony ASP.NET AJAX 4.0 w wersji Preview 4 (o tym wkrótce); a do tego JetBrains dołożył betę ReShapera 4.5 :) Nic tylko brać tydzień urlopu i testować :)

Niedawno opisywałem swoje doświadczenia z ReSharperem 4.5 w wersji Nightly Build.  Oprócz zmian, które zauważyłem w testowanej wcześniej wersji, w becie dodatkowo mamy analizę niewykorzystanych zmiennych w kodzie. Funkcjonalność ta była już dostępna w poprzednich wersjach ReSharpera, ale w wersji 4.5 funkcję rozszerzono m.in. o analizę pól/metod nieprywatnych.

ReSharper 4.5

Do ciekawych nowości zaliczyć też można funkcję “podpowiadania”, które zmienne mogą być oznaczone jako internal zamiast public (do tej pory ReSharper podpowiadał tylko możliwość zmiany na private) – niestety tego elementu nie zauważyłem podczas pierwszych testów.

Oba elementy wymagają włączenia analiz w całej solucji. U mnie wiązało się to ze zwiększeniem pamięci ReSharper o ok. 10/15%, da się więc z tym żyć – ReSharper 4.5 zużywa zdecydowanie mniej pamięci niż wersja 4.1.

Jednak najbardziej podobają mi się sugestie nazw zmiennych, zarówno podczas tworzenia nowych, jak i refactoringu istniejących. Trudno to opisać, ale zachęcam do przetestowania – naprawdę fajna rzecz :)

Wersję beta ReSharpera można pobrać ze strony http://www.jetbrains.com/resharper/beta.html. Tam również znajduje się bardziej dokładny opis nowości w wersji 4.5.

ReSharper 4.5 Nightly Build

UPDATE: ReSharper 4.5 Beta

Dzisiaj rano postanowiłem potestować nowego ReSharpera 4.5 – aktualnie dostępnego tylko jako Nightly Build. Zainstalowałem więc wersję 4.5.1180.25 z 17 lutego 2009 jako najnowszą na dzisiaj.

Instalacja przebiegła bez problemu i o połowę krócej niż miało to miejsce w przypadku wesji 4.1 :)

ReSharper 4.5

Zgodnie z zapowiedziami nowa wersja ma dostarczyć m. in.:

  • ulepszone analizy kodu (Solution-Wide Analysis)
  • lepsze wsparcie dla VB.NET
  • wsparcie dla MSTest
  • nowe metody refaktoryzacji
  • nowa wersja ma być szybsza :)

A oto moje spostrzeżenia:

  • pierwsze co rzuca się w oczy to pamięć. W jednym z projektów R# w wersji 4.1 pobiera ok. 230-300MB. Nowa wersja w tym samym projekcie potrzebuje ok. 120-170MB, czyli różnica jest spora.
  • działa zdecydowanie szybciej – ogólnie jeśli chodzi o pracę z VS, uruchamianie VS  jaki i funkcje R#, np.  “Find Usages”. Różnica jest naprawdę widoczna.
  • intellisense dla Global Resources. W wersji 4.1 wpis:

[sourcecode language=”xhtml”]

<%$ Resources:MyGlobalResource, MyGlobalKey%>

[/sourcecode]

otrzymywał czerwony szlaczek  i komunikat: MyGlobalResource nie został znaleziony :( Teraz zarówno lista GlobalResources, jak i lista dostępnych kluczy dostępna jest w intellisense :)

resharper_2

  • wsparcie dla MSTest
  • informajce o aktualizacjach dla ReSharpera oraz wtyczek

Niestety póki co nie znalazłem nowych metod refaktoryzacji i nowych analiz kodu – jeszcze nie znalazłem lub dostarczone będą później.

Wersja finalna planowana jest na pierwszy kwartał 2009. Jest więc szansa, że ukaże się już niedługo. Bezpłatnej aktualizacji będzie mógł dokonać każdy, kto posiada licencję na wersję 4.0 lub 4.1.

I na koniec mała uwaga: nie polecam zaznaczania opcji  “Analyze errors in whole solution”. U mnie zakończyło się to padem R# :)