Menu / szukaj

Pakiet Moq.EntityFramework.Helpers

Na blogu pojawiły się ostatnio dwa wpisy pokazujące w jaki sposób mnożna zamockować DbSet<TEntity> wykorzystując Moq:

Opisane rozwiązania połączyłem w jednej bibliotece i opublikowałem jako pakiet NuGet – Moq.EntityFramework.Helpers. Czytaj dalej

Lightning talk – Autofixture

Zachęcam do pobrania i przejrzenia prezentacji z mojego lightning talka dotyczącego biblioteki AutoFixture. Zadaniem tej biblioteki jest ograniczenie części Arrange, a tym samym kosztów utrzymania kodu w testach jednostkowych poprzez ułatwienie nam tworzenia obiektów. Prezentację można ściągnąć z GitHuba – AutoFixture – Lightning talk. Prezentacja przedstawia przykłady użycia wspominanej biblioteki oraz zawiera porównanie AutoFixture do innych bibliotek dostarczających podobną funkcjonalność. Oczywiście na GitHubie znajduje się również kod z przykładami.

dynamic – Code review

Microsoft z każdą wersją wprowadza pewne nowe elementy do języka, które teoretycznie powinny poprawić możliwości języka, jak komfort pracy programisty. Od wersji .net 4.0 wprowadzono nowy typ – dynamic. Jego użycie pozwala na wykonanie czynności, które będą dopiero znane w momencie wykonania aplikacji. W dużym skrócie oznacza to, że kompilator pozwoli na wywołanie dowolnej akcji na obiekcie bez zgłoszenia błędu. Kod zostanie bez problemu skompilowany, nawet, jeśli nie istnieje metoda do której się odwołujemy. Błąd wystąpi dopiero w momencie wykonania kodu, jeśli nie będzie tej metody. Czytaj dalej

Przydatne konwertery

Konwertery – krótkie klasy i jednocześnie bardzo przydatne elementy, bez których bindowanie niektórych wartości w XAMLu byłoby bardzo kłopotliwe. Mają one zastosowanie w projektach typu Winodws Phone, Silverlight oraz WPF. Praktycznie w większości tego typu projektów mnożna od razu przekleić te najważniejsze. Dla mnie są to:

  • string / Uri -> BitmapImage
  • bool -> Visibility
  • Color -> SolidColorBrush
  • String + StringFormat

W dalszej części wiadomości znajdziecie ich implementację… Czytaj dalej

Ach ta rekurencja…

Jakiś czas temu straciłem dwa dni na znalezienie prostego błędu. Został on popełniony całkowicie nieświadomie. Zresztą jak większość błędów. Zachowanie aplikacji było całkiem nietypowe – po otworzeniu program się po prostu zamykał. Pewnie zadajecie sobie pytanie, co w tym nietypowego. Otóż po podpięciu debuggera pod aplikację nie otrzymywaliśmy ani jednej wskazówki, co może być nie tak. Aplikacja po prostu zamykała się, a debugger zostawał odpinany od programu. Czytaj dalej

Windows Phone Fast Application Switching

Wraz z pojawieniem się nowej wersji Windows Phone – Mango zmienił się model zarządzania programami. Do tej pory istniały tylko cztery stany w których mogła znajdować się aplikacja. W momencie ponownego uruchamiania aplikacji programiści musieli za każdym razem zadbać, aby wszystkie dane zostały ponownie wczytane. Miało to na celu zapewnienie dużej wydajności telefonu oraz jego długiego czasu działania. Idea była i nadal jest bardzo słuszna, ale została lekko zmodyfikowana. Czytaj dalej

Hybrydowa aplikacja WPF z parametrami

Hmmmmm…… Co to jest hybrydowa aplikacja WPF? Próbowałem znaleźć jakieś inne określenie na ten problem, ale niestety to wydaje się najtrafniejsze. Pojęciem aplikacja hybrydowa WPF będę nazywał aplikację, które działa i prezentuje wyniki działania w konsoli, jak również we własnym oknie. Dodatkowo aplikacja powinna wspierać przekazywanie parametrów w trakcie startu. Czytaj dalej

Debugowanie Visual Studio

Dziś postaram się przybliżyć rzadko stosowaną technikę wyszukiwania błędów w kodzie. Polega ona na użycia drugiej instancji Visual Studio do znalezienia błędów w pierwszej. Patrząc na ostatnie zdanie można zacząć się zastanawiać jak szukanie błędów w Visual Studio może pomóc w znalezieniu błędów w naszym programie. Należy zdać sobie sprawę, że tak naprawdę Visual Studio zawiera w sobie nasz kod. I naszym celem jest prześledzenie działania tego kodu. Czytaj dalej