Artykuły

Stub, Spy, Mock

W tym krótkim artykule chciałbym omówić kilka istotnych terminów realizowanych w testach jednostkowych. STUB Stub jest to obiekt, który w testach służy do imitowania właściwej implementacji. Jego zadaniem jest wyłącznie zwrócenie zadanej wartości. Powszechnie stosowany w przypadku, gdy nie odwoływać się to rzeczywistego obiektu, który np. dostarcza nam dane z zewnątrz. W takich przypadkach stub […]

TDD: Test Driven Development

Test  jednostkowy Test jednostkowy jest w programowaniu metodą testowania tworzonego oprogramowania poprzez wykonywanie testów weryfikujących poprawność działania pojedynczych fragmentów kodu (jednostek) programu – np. metod lub obiektów w programowaniu obiektowym lub procedur w programowaniu proceduralnym. Testowany fragment programu poddawany jest testowi, który wykonuje go i porównuje wynik (np. zwrócone wartości, stan obiektu, wyrzucone wyjątki) z […]

Wzorzec projektowy: obserwator

Wzorzec Obserwator definiuje pomiędzy obiektami relację jeden-do-wielu w taki sposób, że kiedy wybrany obiekt zmienia swój stan, to wszystkie jego obiekty zależne zostają o tym powiadomione i automatycznie zaktualizowane. Wzorzec projektowy Obserwator bardzo dobrze sprawdza się w aplikacjach wielowątkowych oraz systemach rozproszonych. Przykładem takiej aplikacji może być Czytelnik, który zawsze jest powiadomiony o nowym wpisie […]

Wzorzec projektowy: budowniczy

Budowniczy (builder) jest wzorcem, w którym proces tworzenia obiektu, dzieli się na kilka mniejszych etapów, gdzie każdy może być implementowany na wiele różnych sposobów. Możliwość ta daje nam możliwość na tworzenie różnych reprezentacji tego samego obiektu. Wzorzec budowniczy składa się z dwóch elementów. Jeden z nich to Builder, którego celem jest dostarczenie interfejsu do tworzenia […]

Wzorzec projektowy: strategia

Strategia (strategy) jest wzorcem, który definiuje rodzinę algorytmów, hermetyzuje je jako osobne klasy oraz powoduje, że można je dowolnie wymieniać. Cecha ta pozwala na zmianę implementacji algorytmów w pełni niezależnie od strony klienta, który z nich korzysta. We wzorcu tym definiuje się interfejs, który będzie wspólny dla wszystkich strategii. W klasach implementujących interfejs znajdują się […]

S.O.L.I.D.

S – Single Responsibility Principle Zasada ta mówi o tym, że klasa powinna mieć jeden i tylko jeden powód do zmiany. Oznacza to że klasa powinna mieć jedną odpowiedzialność, jedną funkcjonalność i powinna robić to dobrze. Załóżmy jesteśmy członkami klubu tenisowego. Oczywiście w czasie rejestrowania musimy podać takie informacje jak: imię, nazwisko itd. W klubie […]

Przewiń do góry