Projektowanie REST API

Wpis jest kontynuacją wstępu do REST API , który cieszy się sporą popularnością. Jeśli nie wiesz czym jest REST API, to serdecznie zachęcam cię do zapoznania się z moim poprzednim wpisem. Następnie wróć do lektury tego artykułu. Tym razem nie skupię się na teoretycznych podstawach lecz przedstawię Ci szereg dobrych praktyk i zasad projektowania REST API. Przedstawione w artykule rady pozwolą Ci budować API, które będą intuicyjne i proste w obsłudze. … Czytaj dalej Projektowanie REST API

Wzorzec projektowy Fasada

Ten wpis jest jednym z serii wpisów o wzorcach projektowych. Zachęcam do zapoznania się z pozostałymi wpisami dotyczących wzorców projektowych: Wzorzec projektowy Adapter Wzorzec projektowy Proxy Wzorzec projektowy Factory (Fabryka) Wzorzec projektowy Singleton Wzorzec projektowy Command (Polecenie) Tym razem wezmę na tapet wzorzec projektowy Fasada. Charakterystyka wzorca Fasada Wzorzec ten jest jednym z wzorców opisanych w książce Design Patterns: Elements of Reusable … Czytaj dalej Wzorzec projektowy Fasada

Data publikacji Kategorie Czysty kod

Złożoność obliczeniowa algorytmów

Złożoność obliczeniowa algorytmów to kluczowe zagadnienie do zrozumienia, w procesie tworzenia algorytmów. Bez jego znajomości, moim zdaniem, tworzenie efektywnych i szybkich algorytmów może być bardzo trudna, czy wręcz niemożliwa. W tym wpisie dowiesz się czym jest złożoność obliczeniowa algorytmów, notacja dużego O, oraz poznasz najczęściej spotykane złożoności obliczeniowe. Definicja algorytmu Mówiąc o złożoności obliczeniowej algorytmów warto na samym początku zdefiniować pojęcie algorytmu. Często spotykanym opisem … Czytaj dalej Złożoność obliczeniowa algorytmów

Data publikacji Kategorie Czysty kod

Wzorzec projektowy Adapter

Wzorzec projektowy Adapter jest bardzo prostym w implementacji i użyciu wzorcem projektowym, a jednocześnie powszechnie stosowanym. W tym wpisie pokażę Ci do czego można wykorzystać adapter oraz korzystając z TypeScripta przedstawię przykładową implementację. Ten wpis jest kolejnym wpisem z serii o wzorcach projektowych. Serdecznie zachęcam do zapoznania się z innymi wpisami z tego cyklu: Wzorzec projektowy Proxy Wzorzec projektowy Factory (Fabryka) Wzorzec projektowy Singleton Wzorzec projektowy Command (Polecenie) … Czytaj dalej Wzorzec projektowy Adapter

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) Wzorzec projektowy Adapter 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 … Czytaj dalej Wzorzec projektowy Proxy

Data publikacji Kategorie Czysty kod

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 również i ten wpis wywoła … 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, że brak … Czytaj dalej Inversion of Control z użyciem Dependency Injection

Data publikacji Kategorie Czysty kod

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 wpis … Czytaj dalej Wzorzec projektowy Factory (Fabryka)

Data publikacji Kategorie Czysty kod

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 – Zasada … 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 9 … Czytaj dalej Transakcje ACID