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...
W ostatnim wpisie pokazałem jak debugować kod .NET Framework w VS2008. Wciąż próbuje wyjaśnić w jakich wersjach to działa a w jakich nie. W następnym wpisie mam nadzieję, że wspomnę jak sprawa wygląda z VS 2010 i VS2012. Wątki w aplikacjach są dziś już nieodłącznym elementem. Wprowadzenie async\await jeszcze bardziej upowszechniło i ułatwiło pisanie kodu wykonywanego równolegle. W przypadku, gdy aplikacja wielowątkowa zachowuje się podejrzanie, znalezienie błędu może być bardzo trudnym wyzwaniem. Visual...
Czasami nasz kod nie działa i chcielibyśmy sprawdzić jak działa dokładnie funkcja dostarczona przez .NET Framework. Oczywiście domyślnie nie możemy tego zrobić – po kliknięciu Step Into, przejdziemy po prostu do kolejnej metody. Poniższy opis dotyczy Visual Studio 2008, na którym testowałem i faktycznie działa to. Niestety wciąż mamy problemy z VS 2012 – w następnym wpisie postaram się dać jakiś update odnośnie 2012. W VS mamy coś takiego jak source server oraz możemy również ściągnąć symbols files dla...
Jak macie R# 8 zainstalowanego to odpalajcie jego extension manager (alt+r+x) i instalujcie Resharper Mnemonics Live Templates (możliwe że restart vs będzie wymagany albo po prostu się powiesi przy pierwszym wykorzystaniu). Rozszerzenie to dodaje szablony do tworzenia klas (c), metod (m), własności (p), opcji macie wiele, najważniejsza zasada to taka, że jeżeli pierwsza litera jest mała to jest to metoda/klasa/własność publiczna, jak jest duża to jest to statyczna publiczna. Wasza praca stała się właśn...
Rozpoczynając korzystanie z edytora Visual Studio bardzo dotkliwie odczuwałem brak wspomagania dość prostej czynności jaką jest otaczanie nawiasami klamrowymi – analogicznie do edytora Delphi, który wspomaganie pisania konstrukcji begin … end realizował wzorcowo. Powodowany niedosytem dostępnych możliwości środowiska, odkryłem wkrótce darmowe narzędzie produkcji Microsoft o nazwie Productivity Power Tools rozszerzające VS o tę umiejętność, jak również o wiele innych. Postaram się przedstawić teraz więks...
Firmy to dziwne instytucje, czasem ich wymagania są tak dziwaczne, że trudno nadążyć i/lub sprostać. Już dawno przestało mnie dziwić, że w roku 2013 widzę w ofercie wykonania projektu potrzebę zgodności z Internet Explorer 6 (sic!), ale ostatnio w tych samych dokumentach pojawia się też druga wartość.. wersja 11, dobrze, że nie piszą nic o zgodności z wersją 2, 3 i 4, ale to może tylko kwestia szczęścia w otrzymywanych propozycjach. Co zrobić? Jak żyć? Gdzie zdobyć te dziwaczne wersje przeglądarek fir...
Opublikowano W poniedziałek pisałem, że nie testowałem scriptcs-sublime. To się już zmieniło. Zainstalowałem i działa. Co więcej zainstalowałem drugi plugin build-with-input a to wszystko po to aby móc do skryptu przesłać coś za pomocą klawiatury bezpośrednio z poziomu samego sublime text-a.Instalacja: w konsoli gita teleportuję się do C:\Users[uzytkownik]\AppData\Roaming\Sublime Text 2\Packages i wpisujemy magiczne znaki runiczne: git clone https://github.com/scriptcs/scriptcs-sublime.git oraz gi...