Inne · Programowanie · Wydarzenia

Dev Advent Calendar 2017 i 2018

Wprawdzie adwent był już jakiś czas temu, ale zapomniałam pochwalić się pewnym przedsięwzięciem. Mianowicie wpadłam na pomysł stworzenia kalendarza adwentowego dla programistów, online. Było to dosyć spontaniczne przedsięwzięcie, którym podziliłam się z moimi dev-znajomymi pod koniec listopada. Myślałam, że nic nie uda się zrobić przez kilka dni, które zostały do grudnia, ale myliłam się. Kolega… Czytaj dalej Dev Advent Calendar 2017 i 2018

C# · Programowanie

Enum.ToString() z parametrami

Ostatnio natknęłam się na pewien problem. Miałam jakiś enum, przykładowo: Potrzebowałam zwrócić wartość liczbową enuma jako string (czyli liczbę 0 zapisaną w stringu „0”). Co mogłam zrobić? Ano mogłam napisać najprościej, jak się da: Jednak tutaj powinna mi się zapalić czerwona lampka. Przecież metoda .ToString() dla danej wartości enuma zwraca jego wartość tekstową, a nie liczbową.… Czytaj dalej Enum.ToString() z parametrami

C# · Programowanie · Wzorce projektowe

Wzorzec adapter – cz. 2 adapter obiektu

We wcześniejszym wpisie opisałam działanie wzorca adapter klasy. Dla przypomnienia: jest on wykorzystywany na przykład wtedy, gdy klient zdefiniuje swoje wymagania na podstawie jakiegoś interfejsu. Wystarczy, że dostarczy klasę, która implementuje ten interfejs i dziedziczy po istniejącej klasie. I tyle. Co jednak, gdy klient nie przygotuje takiego interfejsu? Tylko dostarczy jakąś klasę spełniającą wymagania? Wtedy należy… Czytaj dalej Wzorzec adapter – cz. 2 adapter obiektu

C# · Programowanie · Wzorce projektowe

Wzorzec adapter – cz. 1 adapter klasy

Cel W książkach można przeczytać, że głównym celem tego wzorca jest zaadaptowanie (przystosowanie) istniejącej klasy do formy, którą oczekuje klient. Klientem w tym przypadku jest dowolny obiekt, który wywołuje nasz kod i wymaga odpowiedniego interfejsu. Teoria może być łatwa, ale trzeba jeszcze umieć zastosować ją w praktyce. Stwórzmy więc przykładową klasę BoardGameService. Jak widać, wykorzystujemy… Czytaj dalej Wzorzec adapter – cz. 1 adapter klasy

BoardGamesNook · Programowanie

Architektura projektu – 4 typy

Kończąc czytać książkę „Czysta Architektura” Wujka Boba, natknęłam się na rozdział poświęcony organizacji elementów aplikacji. Przedstawił on 4 przykłady różnych architektur tego samego systemu. Zacznijmy od pierwszego typu architektury na przykładzie mojej aplikacji BoardGamesNook. Pakowanie w warstwy – 3 warstwy Tak pokrótce wygląda schemat architektury w mojej aplikacji. Mamy kontroler BoardGameController, który używa interfejsu IBoardGameService.… Czytaj dalej Architektura projektu – 4 typy

BoardGamesNook · Git · Programowanie

Zmiana historii: rebase w GitBashu

W ostatnim wpisie opisywałam, jak używać komendy merge do łączenia zmian. Dzisiaj czas na kolejną komendę – rebase. Początek historii będzie taki sam, jak poprzednio. Dwóch autorów (autor1, autor2) pracuje na dwóch osobnych branchach (branch1, branch2). Każdy z nich wprowadza zmiany w tym samym pliku UserController. Autor1: zmiany na branch1 Zmiany na tym branchu polegały… Czytaj dalej Zmiana historii: rebase w GitBashu

BoardGamesNook · Git · Programowanie

Merge w GitBashu

Załóżmy, że mamy jakiś branch master_xmpl, który jest głównym branchem naszego projektu. Wyobraźmy sobie, że 2 osoby w tym samym czasie pracują nad różnymi funkcjonalnościami. Każda z nich utworzyła swój branch za pomocą komendy checkout z parametrem b. git checkout -b branch1 Dla przykładu będą to branch1 dla osoby autor1 i branch2 dla osoby autor2. Autor1: zmiany… Czytaj dalej Merge w GitBashu