Recent Blog

  • Stub. Spy. Mock.

    Stub. Spy. Mock.

    W testowaniu oprogramowania, zwłaszcza w testach jednostkowych, kluczowym elementem jest izolowanie jednostki kodu od jej zależności. Aby to osiągnąć, programiści często korzystają z narzędzi takich jak spy, stub i mock. Te narzędzia mają różne zastosowania i pomagają w zapewnieniu, że testy są dokładne i szybkie, umożliwiają rejestrację wywołań oraz monitorowanie interakcji. Poniżej przyjrzymy się, czym

    Continue Reading

  • 3 reguły TDD

    3 reguły TDD

    Reguły zostały opracowane przez Wujka Boba – Roberta C. Martina: Nie możesz napisać żadnego produkcyjnego kodu, dopóki nie będziesz miał nieprzechodzącego testu. Każdy cykl w podejściu TDD rozpoczynam od pisania testu. Jest to reguła definiująca dyscyplinę w TDD. Nie możesz napisać więcej testu, jeżeli ten test nie przechodzi. Błąd kompilacji jest nieprzechodzącym testem. W trakcie

    Continue Reading

  • TDD w praktyce

    TDD w praktyce

    Przykład tworzenia kodu z wykorzystaniem podejścia TDD: Cykl pierwszy RED–GREEN–REFACTOR: Powtarzam cykl – cykl drugi: Cykl trzeci: Cykl czwarty: Cykl piąty: Dzięki takiemu podejściu tworzymy dokładnie tyle kodu ile jest wymagane do zamierzonego działania aplikacji. Mamy kontrole nad tym ile kodu powstaje w zależności od wymagań niezbędnych do spełnienia. Przedstawiony przykład prezentował tworzenie nowych funkcjonalności

    Continue Reading

  • Test Driven Development – TDD

    Test Driven Development – TDD

    TDD to podejście do tworzenia oprogramowania, w którym testy są pisane przed kodem, który ma te testy spełnić. Artykuł opisuje kluczowe elementy i kroki metodologii TDD. Kroki w procesie TDD: Zalety TDD:Metodologia TDD promuje podejście, w którym testy kierują rozwojem oprogramowania, co prowadzi do bardziej niezawodnych i łatwiejszych w utrzymaniu aplikacji. Wyzwania TDD:

    Continue Reading

  • Wzorzec projektowy Komenda, ang. Command

    Wzorzec projektowy Komenda, ang. Command

    Komenda jako polecenie do sterowania obiektem. Poszczególne zachowania dodawane są do listy komend invokera, z którego korzysta klient aby wywołać pożądane zachowania obiektu. Wzorzec ten służy do enkapsulacji poleceń. Komenda to wzorzec behawioralny, który umożliwia separację obiektu wykonującego operacje od obiektu, który je inicjuje. W tym artykule opisuję, jak można zaimplementować wzorzec Command w języku

    Continue Reading

  • Wzorzec projektowy Fasada, ang. Facade

    Wzorzec projektowy Fasada, ang. Facade

    Stworzenie Fasady, ujednoliconego interfejsu przeznaczonego do obsługi przez klienta, ukrywa przed nim implementacje obsługiwanego obiektu oraz systemu do zarządzania jego logiką. Fasada skupia w sobie wykonywanie poleceń współpracujących ze sobą obiektów i ich logik systemowych upraszając i ograniczając zasób poleceń przeznaczonych do bezpośredniej obsługi przez klienta. Jednym ze wzorców pomagających programistom w rozwiązywaniu powszechnych problemów

    Continue Reading

  • Wzorzec projektowy Fabryka, ang. Factory

    Wzorzec projektowy Fabryka, ang. Factory

    W toku nauki programowania oraz poznawania języka Java, miałem możliwość poznania wzorców projektowych. Sprawne rozwiązania na popularne problemy poprawiają czytelność kodu oraz go strukturyzują, pozwalając programiście nie wymyślać koła na nowo. Wykorzystując wzorzec projektowy Fabryka, proces tworzenia obiektów i jego organizacji jest usprawniony i usystematyzowany sprawiając, że kod jest bardziej czytelny, a zależności pomiędzy klasami

    Continue Reading