Wzorzec projektowy Proxy

Ten wpis jest kolejnym wpisem z serii wpisów o wzorcach projektowych. Po przeczytaniu tego wpisu, zachęcam Cię do zapoznania się z innymi wpisami z tej serii: Wzorzec projektowy Factory (Fabryka) Wzorzec projektowy Singleton Wzorzec projektowy Command (Polecenie) Tym razem omówię strukturalny wzorzec projektowy Proxy (Pełnomocnik). Proxy jako serwer pośredniczący Często pierwszym skojarzeniem ze słowem proxy jest serwer proxy. Jest to skojarzenie jak najbardziej słuszne.  … Czytaj dalej Wzorzec projektowy Proxy

Komentarze w kodzie

Tematowi komentarzy w kodzie poświęciłem kiedyś wpis, w czasach gdy blog nie istniał w obecnej formie i pod obecną nazwą. Niestety, nie posiadam treści zawartej w tamtym wpisie, ale pamiętam, że wywołał on dyskusję, co pozwoliło na wymianę poglądów i punktów widzenia. Temat wydaje mi się na tyle ciekawy, że warto do niego wrócić. Ponowne podejście do tego samego tematu wydaje mi się być ciekawym eksperymentem z punktu widzenia twórcy treści. Być może … Czytaj dalej Komentarze w kodzie

Inversion of Control z użyciem Dependency Injection

Inversion of Control jest bardzo wartościowym wzorcem postępowania podczas pisania programów pisanych w oparciu o programowanie zorientowane obiektowo. W tym artykule dowiesz się, na czym polega Inversion of Control (lub też swojskie – odwrócenie sterowania), a także poznasz jedną z najczęściej spotykanych form zastosowania odwrócenia sterowania czyli Dependency Injection (wstrzyknięcie zależności). W artykule wykorzystuję przykłady napisane w TypeScripcie, natomiast myślę że są na tyle proste, … Czytaj dalej Inversion of Control z użyciem Dependency Injection

Wzorzec projektowy Factory (Fabryka)

Fabryka jest bardzo powszechnie używanym i łatwym w zastosowaniu wzorcem projektowym. Mówiąc o wzorcu projektowym Fabryka można wyróżnić cztery rodzaje fabryk – Factory (fabryka), Factory Method (metoda wytwórcza), Static Factory (fabryka statyczna) oraz AbstractFactory (fabryka abstrakcyjna). Głównym założeniem fabryki, tak jak w rzeczywistym świecie, jest wytwarzanie obiektów. Dzięki wykorzystaniu fabryki, można ukryć szczegóły implementacyjne tworzenia obiektów i odseparować je od logiki biznesowej. Ten … Czytaj dalej Wzorzec projektowy Factory (Fabryka)

SOLID, KISS i DRY

SOLID, KISS i DRY to jedne z najpopularniejszych pojęć/skrótów wśród programistów. Są to na tyle kluczowe zagadnienia oraz przydatne w zadaniach programisty, że nie mogło ich zabraknąć na moim blogu. Wszystkie przykłady w tym artykule zostały napisane w TypeScripcie. Jeśli jednak TypeScript jest Ci obcy, to przykłady w dalszym ciągu powinny być dla Ciebie zrozumiałe. Czym jest SOLID? SOLID to akronim, który można rozwinąć w pięć zasad programowania obiektowego: Single Responsibility Principle … Czytaj dalej SOLID, KISS i DRY

Transakcje ACID

Tym razem będzie nieco o bazach danych, a dokładniej mówiąc o zasadach transakcyjności, czyli ACID. Czym jest transakcja? W kontekście relacyjnych baz danych transakcja to mechanizm, który oczekuje zestawu operacji do wykonania. Do zaistnienia transakcji konieczne jest pomyślne wykonanie wszystkich operacji. W przeciwnym wypadku wszystkie operacje są odrzucane. Załóżmy, że mamy transakcję składającą się z 10 zapytań. Jeżeli ostatnie zapytanie będzie skutkowało błędem, to zmiany dokonane przez poprzednie … Czytaj dalej Transakcje ACID

Testy jednostkowe FIRST

Tematowi testów jednostkowych poświęciłem kilka artykułów na swoim blogu: Podstawy testów automatycznych oprogramowania O Test Driven Development Jeśli jeszcze się z nimi nie zapoznałeś/aś to serdecznie zachęcam. Tym razem poruszę temat zasad, którymi warto się kierować w trakcie pisania testów jednostkowych. Zasady te zostały zebrane pod akronimem FIRST. Owy skrótowiec możemy rozszyfrować jako: Fast Isolated Repeatable Self-validating Timely/Thorough Fast Testy jednostkowe powinny … Czytaj dalej Testy jednostkowe FIRST

Wzorzec projektowy Singleton

Ten wpis jest jednym z serii wpisów o wzorcach projektowych. Zachęcam też do sprawdzenia innych wzorców: Wzorzec projektowy Command (Polecenie), Wzorzec projektowy Factory (Fabryka) Wzorzec projektowy Proxy Struktura Na sam początek przedstawiam strukturę wzorca projektowego Singleton w postaci diagramu klas. Już sam diagram powinien powiedzieć Ci wiele o charakterystyce oraz potencjalnych zastosowaniach tego wzorca. Klasa Singleton posiada prywatną właściwość typu Singleton, w której przechowywana … Czytaj dalej Wzorzec projektowy Singleton

O Test Driven Development

W jednym z ostatnich wpisów na blogu poruszałem zagadnienia związane z testowaniem oprogramowania. Jednym z zagadnień, które pominąłem w tamtym artykule było podejście Test Driven Development, w skrócie TDD. W tym poście powiem nieco więcej o tym podejściu. Jednakże do pełnego zrozumienia wpisu warto wcześniej zapoznać się z moim poprzednim artykułem dotyczącym testowania oprogramowania – Podstawy testów automatycznych oprogramowania. Geneza Test Driven Development Myślę, że dobrym punktem … Czytaj dalej O Test Driven Development

Wzorzec projektowy Command (Polecenie)

Wzorzec projektowy Command (Polecenie) uważam za jeden z najprostszych do zrozumienia. Pisząc ten artykuł wzorowałem się na interpretacji przedstawionej przez Roberta C. Martina w książce pt. “Agile Programowanie zwinne zasady wzorce i praktyki zwinnego wytwarzania oprogramowania w C#”. Szukając dodatkowych informacji na temat tego wzorca napotkałem na wersje znacznie bardziej rozbudowane. Niemniej jednak do zrozumienia zasady działania i celu tego wzorca, interpretacja z wcześniej wymienionej książki powinna być wystarczająca. … Czytaj dalej Wzorzec projektowy Command (Polecenie)