Dzisiaj kilka rzeczy z Visual Studio, które przydają się a nie zawsze wszyscy mają świadomość, że są one dostępne. Zauważyłem, że często ustawiam breakpoint w jakimś miejscu a potem odpalam debugger, aby zacząć proces debugowania właśnie w tym miejscu. W VS istnieje coś takiego jak tymczasowy breakpoint. Wystarczy nacisnąć kombinację klawiszy CTRL+F10, a aplikacja uruchomi się i debugger przejdzie do danej linii (w zależności, w której był kursor podczas wykonywania tej operacji). Jedną kombinacją klaw...
Today I would like to introduce you to Process Governor – a new tool I added to my .NET diagnostics toolkit. This application allows you to set a limit on a memory committed by a process. I wrote this tool to test my .NET applications (including web applications) for memory leaks. With it I can check if under heavy load they won’t throw OutOfMemoryException.
Czasem w trakcie pracy zdarza się, że musimy przygotować dane testowe. Przyczyny mogą być różne, możemy potrzebować danych w celu przetestowania fragmentu aplikacji lub ...
Sporadycznie, podczas instalacji VS 2013 może nastąpić mały problem, o którym dowiemy się dopiero w trakcie tworzenia nowego projektu – nie każdego rodzaju, ale takiego, który polega na paczkach NuGet. Mianowicie, jak będziemy chcieli stworzyć nowe solution z projektem, otrzymamy taki o to błąd:The system cannot find the file specified. (Exception from HRESULT: 0x80070002) Jak zaś będziemy chcieli dodać projekt do istniejącego solution – lub pustego, założonego przy pierwszym błędzie, otrzymamy taki o ...
W pracy, głównie ze względu na administratorów i zarządzanie uprawnieniami, muszę korzystać z TFSa. Nie jestem entuzjastą tego narzędzia i zdecydowanie wolę pracę z Gitem, m. in. z powodów, które ...
Czasem zwykłe metody debugowania nie wystarczają, czasem watch-e i sprawdzanie krok po kroku jest nie wystarczające. Czasem chciało by się sprawdzić wartość obiektu, do którego nie mamy referencji. No właśnie, wszystkie normalne narzędzia debuggowania jakie udostęnia Visual Studio pozwalają na oglądanie wszystkiego co mamy w zasięgu referencji albo gdzieś po callstack-u możemy się do “tego” dorwać. Co jednak jeśli i to za mało? Na pomoc Make Object ID. Zatrzymując program w momencie gdy ma...
Opis kilku programów, które nie są do końca związane z programowaniem, ale umilają pracę.
Opis metody szybkiego edytowania HTML. Dodatek do Visual Studio, który to umożliwia to Web Essentials (instalacja poprzez Tools->Extensions and Updates). Działa podobnie do snippetów w VS. Wpisujemy coś i klikamy TAB, który rozwija się do większej ilości kodu.
Bardzo mi miło, że mogłem brać udział w konferencji MTS w Warszawie parę dni temu i przedstawić to co Microsoft zrobił dla programistów w najnowszej wersji przeglądarki internetowej. Internet Explorer przeszedł dość dużą rewolucję od czasu wersji 6 i dzisiaj jest bardzo dobrą przeglądarką, która może stanąć obok tak popularnych jak Chrome czy Firefox bez żadnych kompleksów. Jestem osobiście dumny z tego, że mogę na co dzień brać udział w tworzeniu / rozwijaniu tej przeglądarki jako MVP w Microsoft w k...
There are times when you find dependencies of some legacy code in a method that is never used. I personally always have a feeling that one day I need to find a way to search for all these unused methods and just get rid of them. Here I want to show you how to do it with Resharper.
NSubstitute to (dla tych co nie znają jeszcze) taki Moq na sterydach. Sytuacja wygląda tak, mamy klasę, która potrzebuje jakiś zależności, mniej więcej tak: public class SomeClass { public SomeClass(INeedSomeStuff stuff) { // ....... } } public interface INeedSomeStuff { string DoSomeStuff(string param); void DoSomeOtherStuff(); } Możemy użyć moq i napisać: var moq = new Mock
Co jakiś czas odkrywam w Gicie perełkę, która czyni moją codzienną pracę jeszcze przyjemniejszą. Niedawno takim ficzerem okazał się tryb “fixup” komendy “commit“. Do czegóż to służy? Jest to po prostu szybszy sposób na poprawienie commita z przeszłości. Załóżmy, że do klasy User dodałem właśnie property age, tyle że przez pomyłkę nazwałem je z małej litery i… nie zauważyłem. Pracuję, pracuję i dopiero po dwóch kolejnych ...
Opublikowano Używanie najnowszych wersji, często jeszcze nie oficjalnie wydanych ma oprócz niekwestionowanej radości z nowych ficzerów rownież i ciemną stronę. To się czasem coś wywali, coś nie działa etc. Projekt nad którym pracuje rozwijany jest już w VS2013 ale instalka jest buildowana w VS2012 – autor WiX-a jakoś nie spieszy się do wspierania VS2013 więc trzeba się w starej wersji babrać. Teoretycznie projekty są zgodne, ale jeśli w solution założymy nowy projekt w VS2013 to VS2012 jakoś tego nie ...
Tytuł tego posta określa wg mnie ten kawałek viżuala: Naszukałem się swego czasu baaardzo sporo, aby odnaleźć sposób na otwarcie tego z klawiatury, głównie dla komendy “open containing folder”. I się nie udało. Znalazłem nawet dedykowane temu problemowi pytanie na SO pozostające bez poprawnej odpowiedzi, więc uznałem, że się nie da. Ale ostatnio całkowicie niechcący… udało się.
Opublikowano Wczoraj wyszła nowa wersja NDepend-a, jeszcze ciepła, cieplutka. 5-tka ma dwie rewolucyjne rzeczy, pierwsza to nowe UI, ładniejsze i bardziej “nowoczesne”, druga – i to jest dla mnie killer to dashboard. Zatem po kolej. Mamy nowe logo, które wygląda całkiem całkiem jak na moje średnio wprawne oko. Mamy wygląd czyli nowe menu, graficzki i inne takie. Wprawdzie nie jest to to co daje Visual Studio, to jednak Patric (autor tego cudownego narzędzia) mówił, że będą dalej nad tym pracować, więc ...
12.13.12 by MJ In September I wrote a short article about writing a clean code. I told you that it is a good habit to implement programs with a one and good style. Today I am going to wrtie something about a special tools which are very useful during programming. First of all, you need to have a JetBrains ReSharper installed at your local machine. Then you have to download a StyleCop, which is a plugin designed for ReSharper (http://stylecop.codeplex.com/releases/view/79972). ReSharper allows...
Niedawno napotkałem w Gicie dziwny problem… tak naprawdę jeden z dwóch poważnych, które utrzymywały się przez długi czas (drugi to line-endings które do dziś potrafią mnie w zad uszczypnąć). Mianowicie mój kochany, uwielbiany Git pokazywał mi podczas merge konflikty w każdym jednym pliku, niezależnie od tego czy coś było w nim faktycznie zmieniane czy też nie. Po otwarciu mergetool okazywało się, że nawet jeśli jakieś zmiany nastąp...
Posted by kamilhawdziejuk on If you ever wondered how programming can change your home environment this post will show you how this can be done in .NET world. There are a few open source projects developed in Microsoft Research that will change the world in near future about which developers should know: 1. HomeOS (http://research.microsoft.com/en-us/projects/homeos/ with http://homeos.codeplex.com/) Lab of things (http://www.lab-of-things.com/ with http://labofthings.codeplex.com/) .NET G...
Zauważyłem, że czasami programiści używają Debug.WriteLine, aby wyświetlić jakieś informacje w oknie output: Debug.WriteLine("Jakies informacje."); Nie ma w tym nic złego, ale czasami dodawana jest powyższa linia tylko tymczasowo, aby ułatwić sobie debugowanie (szczególnie aplikacji wielowątkowej). Visual Studio pozwala osiągnąć ten sam efekt, za pomocą zwykłego breakpoint’a. Wystarczy najpierw ustawić breakpoint (naciskamy F9), a potem kliknąć na nim i wybrać When Hit: Zostanie otworzone nowe ok...
Kilka dni temu opisywałem jak w VS 2008 debugować kod .NET Framework i obiecywałem sprostowanie do wersji 2012. Z tego co udało mi się dowiedzieć, temat nie jest zbyt jasny ale wygląda na to, że: 1. W niektórych wersjach VS2010 działało to ale potem znów zostało popsute. 2. W VS2012 funkcja nie działa. Jeśli komuś udało się to uruchomić pod VS 2012, proszę o komentarz pod wpisem. Link do Microsoft Connect, opisujący bug: http://connect.microsoft.com/VisualStudio/feedback/details/697947/net-framewo...