Menu / szukaj

Migracja z ASP.NET Core 1.0.x do 1.1

Od 17 listopada dostępna jest nowa wersja .NET Core 1.1. Wraz z nią pojawiły się nowe wersje ASP.NET oraz EntityFrameworka. Przyszedł, więc czas na aktualizację aplikacji do najnowszego środowiska. Proces ten powinien przebiegać bezboleśnie, ale nie do końca. W moim przypadku miałem problemy z dwoma elementami, co spowodowało, że aplikacja nie wystartowała od razu po aktualizacji.

Przed przystąpieniem do aktualizacji należy ściągnąć najnowszą wersją pakietów – zarówno SDK, jak i Runtime. Pakiety do ściągnięcia dostępne są na stronie .NET Core Downloads. Czytaj dalej

.net DD 2016 – materiały

Od jakiegoś czasu dostępne są już na kanale YouTube materiały z konferencji .NET DeveloperDays 2016. Jeśli chodzi o mnie to w tym roku najlepszym prelegentem był Ted Neward. Szczególnie polecam sesję zamykającą. Nie jest to prezentacja ściśle techniczna, a raczej filozoficzna. W jej trakcie Ted pokazuje jak istotne znaczenie na ocenę sytuacji ma kontekst. Oraz jak trudno jest znaleźć najlepsze jednoznaczne rozwiązanie. Zresztą zobaczcie sami.

FluentValidation.Validators.UnitTestExtension

Chciałem Was zachęcić do używania biblioteki, którą ostatnio opublikowałem – FluentValidation.Validators.UnitTestExtension. Głównym jej celem jest rozszerzenie oraz uproszczenie możliwości testowania kodu, który wykorzystuje pakiet FluentValidation do walidacji obiektów.

Bibliotekę można zainstalować wykorzystując nugeta:

Install-Package FluentValidation.Validators.UnitTestExtension

lub ściągnąć kod z GithHuba.

Na wiki dotyczącej biblioteki FluentValidation można znaleźć propozycję pisania testów przygotowaną przez autorów biblioteki. W celu ułatwienia nam tego procesu autorzy przygotowali dwie metody ShouldHaveValidationErrorFor oraz ShouldNotHaveValidationErrorFor. 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.

Testy jednostkowe SQL – raport pokrycia kodu

Pisanie testów jednostkowych do kodu jest dziś powszechną praktyką, aczkolwiek nie dla wszystkich języków. Pisząc strony WWW, aplikacje desktopowe czy też mobilne przywykliśmy do tego, że tworzymy testy jednostkowe sprawdzające kod aplikacji. Natomiast nie robimy tego dla kodu napisanego w bazie danych. Po części dlatego, że używamy narzędzi ORM, które generują ten kod za nas. I wtedy nie ma rzeczywiście takiej potrzeby.

Inaczej wygląda sytuacja w momencie, gdy sami piszemy kod SQLa. Wtedy kod ten powinien zostać przetestowany na takich samych zasadach jak normalny kod produkcyjny. Jeśli nasza baza stoi na Microsoft SQL możemy do tego wykorzystać bibliotekę tSQLt. Bibliotekę tę używa się bardzo prosto. Pozwala ona fakeować widoki, tabele, funkcje, jak również procedury składowane. Osoby bardziej zainteresowane tematem odsyłam na stronę biblioteki. Czytaj dalej

PDF Combiner 1.7

W najnowszej wersji aplikacji wprowadziłem następujące zmiany:

– zmieniłem sposób łączenia plików
– poprawiłem działania przycisków Move up i Move down,
– naprawiłem wygląd aplikacji przy niestandardowych ustawieniach DPI w Windowsie,
– dodałem zabezpieczenia przed przypadkowym nadpisaniem pliku łączonego.

Najnowsza wersja może być pobrana ze strony aplikacji.

PDF Combiner 1.6

W najnowszej wersji aplikacji wprowadziłem następujące zmiany:

– dodałem wsparcie dla dokumentów przygotowanych zgodnie z najnowszym standardem dokumentu typu PDF,
– wprowadziłem możliwość łączenia dokumentów, które zabezpieczone są hasłem przed otwarciem,
– dodałem możliwość skopiowania dokładniejszej informacji o błędzie do systemowego schowka.

Najnowsza wersja może być pobrana ze strony aplikacji.

Windows Phone 8.1 – kompatybilność wsteczna

Zgodnie z zapewnieniami Microsoftu, aplikacje, które działały poprawnie na systemie operacyjnym Windows Phone 8.0 powinny również działać bez problemu na systemie Windows Phone 8.1. W większości przypadków tak jest. Ja jednak zachęcam do sprawdzenia Waszych wszystkich aplikacji, czy działają poprawnie z nowszą wersją systemu. Czasami mała zmiana w OS może spowodować, że aplikacja przestanie funkcjonować tak jak byśmy tego chcieli.

W moim przypadku padło na aplikacje SpeedDial / SpeedDial Pro. Samo SDK nie uległo zmianie w tym zakresie i wywoływane funkcje uruchamiały się poprawnie. Zmienił się natomiast sposób ich działania. W przypadku tych aplikacji problematycznym okazał się PhoneCallTask. Czytaj dalej

Windows Phone 8.1 – Wyświetl mój ekran

Wraz z pojawieniem się aktualizacji 8.1 dla platformy Windows Phone w ustawieniach pojawiło się nowe menu – Wyświetl mój ekran.

Wyświetl Mój Ekran

W końcu opcja ta jest dostępna standardowo. Microsoft używał tego rozwiązania już od samego początku w trakcie swoich prezentacji. Niestety zarówno w przypadku WP 7.x oraz WP 8.0 rozwiązanie to nie było dostępne dla zwykłych użytkowników. Oczywiście można było zmienić oprogramowanie w telefonie, a następnie dodać odpowiednie sterowniki… Finalnie otrzymywaliśmy to samo, ale telefon niestety nie miał oficjalnego oprogramowania w nim. Czytaj dalej

Weryfikacja commit message w TortoiseSVN

Obecnie standardem stało się już używanie jakiegoś systemu kontroli wersji oraz środowiska CI w projektach informatycznych. Choć narzędzia te są coraz lepsze, to cały czas jeszcze jest sporo miejsca na poprawę. W obecnym projekcie używam następującej kombinacji narzędzi: JIRA + SVN + Jenkins.

W ramach projektu mamy podział na następujące kategorie zadań:

  • story zdefiniowane przez product ownera / zespół,
  • zgłoszony błąd,
  • inne.
Czytaj dalej