Winbot – nieobsłużone wyjątki w WPF

Ostatni tydzień nie przyniósł żadnych rewolucyjnych zmian do aplikacji Winbot, którą rozwijam już jakieś 10 tygodni 🙂 Pracuję nad nową funkcją, która pozwoli na tworzenie nowych scenariuszy ręcznie (bez nagrywania aktywności myszki lub klawiatury). Postanowiłem to wprowadzić aby była możliwość tworzenia zagregowanych scenariuszy lub też bardziej generycznych (np. scenariusz, który wykonuje inny scenariusz przez godzinę). Ale…

Standardowi delegaci w C#

W dzisiejszym poście postanowiłem krótko przedstawić definicje wybranych delegatów, które standardowo udostępnia nam .NET. Dla przypomnienia – delegat to typ danych, który utożsamia się z konkretną sygnaturą funkcji. Możemy je stosować np. do przekazywania funkcji jako parametr wywołania innej funkcji. Można się bardzo łatwo obejść bez wiedzy zawartej w tym poście. Definicja nowego delegatu to zazwyczaj…

Winbot – aktualizowanie aplikacji desktopowej

W końcu przyszedł ten moment, w którym stwierdziłem, że pora wypuścić pierwszą wersję Winbota. Zbudowałem instalator i wystawiłem release na githubie. Dostępny do pobrania tutaj. Zanim jednak to uczyniłem, zastanawiałem się co będzie, jeżeli zacznę wypuszczać kolejne wersje. W jaki sposób informować użytkownika z zainstalowaną aplikacją, że pojawiła się nowsza wersja? W tym poście opiszę…

Enum na sterydach

Każdy kto miał okazję programować w Javie i C#, zapewne zwrócił uwagę na subtelną różnicę między tym, co oferują nam typy wyliczeniowe w obu językach. Jeżeli chodzi o C#, nie ma tu wielkiej filozofii. Mamy możliwość zdefiniowania zbioru elementów i ewentualnie przypisania im odpowiedniej wartości liczbowej. W Javie mamy znacznie większe pole manewru. Dozwolone jest tutaj…

Winbot – pliki skojarzone z aplikacją

Kolejny tydzień prac dobiegł końca. Aplikacja małymi krokami rozwija się. Cały czas staram się dodawać interesujące funkcje lub rozwijać w miarę ciekawe problemy, aby nie zanudzać czytelników bloga moimi cotygodniowymi raportami z postępu prac. Według mnie, najciekawszy problem z jakim się zetknąłem w ostatnim tygodniu było skojarzenie plików z moim programem. Chciałem aby po zainstalowaniu…

EntityFramework – uważajcie, jesteście śledzeni

Moją przygodę z Entity Framework zacząłem od przeczytania jednej z książek poświęconej właśnie temu frameworkowi. Później miałem jeszcze okazję spotkać się z nim w kilu projektach. Zawsze starałem się pisać kod zgodnie z moją najlepszą wiedzą, tak aby jakość produktu końcowego była jak najwyższa. Możecie sobie wyobrazić, jakie było moje rozczarowanie, kiedy dopiero po kilku latach…

Dummy, Fake, Stub i Mock w testach jednostkowych

Kiedy zaczynałem swoją przygodę z testami jednostkowymi nie widziałem żadnej różnicy między obiektami typu Dummy, Fake, Stub i Mock. Używałem każdego z nich bez świadomości istnienia jakichkolwiek różnic między nimi. Wszystkie cztery typy były dla mnie dokładnie tym samym – sztucznym obiektem stworzonym na potrzeby testów. Moja ignorancja i brak wiedzy prowadziły do kilku problemów:…

Winbot – dialog do edycji obiektów

Kolejną rzeczą, nad którą pracowałem w ramach mojego projektu Winbot, była edycja różnych obiektów za pomocą interfejsu użytkownika. W aplikacji występuje kilka typów obiektów. Mógłbym przygotować oddzielne kontrolki do edycji każdego typu z osobna, ale takie rozwiązanie mnie nie zadowalało. Za każdym razem kiedy chciałbym wprowadzić nowy typ, musiałbym dodatkowo przygotować nową kontrolkę do edycji.…