Archiwa tagu: debugging

Jaka wersja jest na produkcji? – Stamp.Fody

Aplikacja gdzieś działa. Zakładam, że jedynym środowiskiem nie jest Produkcja, ale są też Stagging, Test, Development (coś w tym rodzaju) i na każdym może być inny kod. Chcemy się dowiedzieć w jakiej wersji jest aplikacja (być do bólu pewnym — … Czytaj dalej

Opublikowano Programowanie | Otagowano , ,

Decompilatory

Chociaż Resharper ma opcję decompilacji (z której korzystam na co dzień) to warto wiedzieć, że są też inne toole, lepsze w speceficznych warunkach. Nie wymagają one dodawania interesujcej nas biblioteki do projektu. ILSpy To narzędzie lekkie (przynajmniej lżejsze od następnego). … Czytaj dalej

Opublikowano Programowanie | Otagowano , , , , | 3 komentarze

Moje Unit Testy

Dziś będzie opowieść… Co sądzą ludzie, którzy nie testują Ja, dla przykładu, wierzę w Unit Testy. Kontrastowałem (podpytywałem) to ze stanowiskiem wielu osób. Niektóre osoby odpowiadały, że to nie działa. Następnie podały powody dlaczego tak uważają i od tych powodów … Czytaj dalej

Opublikowano Programowanie | Otagowano , , , , , | 5 komentarzy

False sharing

Jestem w trakcie czytania Patterns for Parallel Programming. Jest tam wiele anty-wzorców programowania współbieżnego, a pośród nich False sharing (nawet nie próbuję tego tłumaczyć na polski). Ze względu na wydajność, systemy zarządzania pamięcią wykorzystują cache’owane bloki pamięci najczęściej po 64 … Czytaj dalej

Opublikowano Programowanie | Otagowano , , , ,

#if DEBUG

Poniższy kawałek kodu jest celowo wklejony jako obrazek. Ważne jest tutaj, wyszarzenie instrukcji znajdujących się po warunku #else. Oznacza to, że teraz jesteśmy w trybie DEBUG i preprocesor wytnie to co jest dla RELEASE i kompilator tego nawet nie zobaczy. … Czytaj dalej

Opublikowano Uncategorized | Otagowano , | 4 komentarze

Debugowanie plugina

Z pluginami problem jest taki, że zazwyczaj (dobrze by było) są to osobne projekty w osobnym solution. Wtedy, żeby uruchomił się kod plugina musimy najpierw uruchomić główną aplikację, z której dopiero odpalimy plugina i staniemy na breakpoint’ie. Mam projekt główny, … Czytaj dalej

Opublikowano Uncategorized | Otagowano ,

Atrybut DebuggerDisplay

Jako, że ostatnio zajmuję się legacy kodem, dodaję do prawie każdej klasy atrybut DebuggerDisplay. Za pomocą tego atrybutu, definiujemy co będzie pokazane w debuggerze, np po najechaniu myszką na obiekt lub w oknach Locals i Watch. Na polach składowych można … Czytaj dalej

Opublikowano Programowanie | Otagowano ,