DevCezz

Programistyczny blog dla Ciebie

Tech

Czy też napotkałeś ten problem z @Embeddable?

Ostatnio w pracy, w ramach zadania, musiałem naprawić występowanie jednego z błędów. Bug był spowodowany wykorzystywaniem eksperymentalnej flagi ’hibernate.create_empty_composites.enabled’. Gdy przywróciłem tą właściwość do stanu domyślnego, musiałem poświęcić trochę czasu na przeróbki w kodzie. Dzięki tej rzemieślniczej pracy dowiedziałem się…

Wzorzec Transactional Outbox

Tworzone aplikacje często muszą informować swoich użytkowników o jakimś zdarzeniu poprzez SMS czy email. Powodem może być wystawienie faktury, potwierdzenie złożenia rezerwacji czy też nowa promocja. Co jednak w przypadku, gdy chcemy mieć pewność, że wiadomość nie dotrze do adresata…

Feature envy, czyli zazdrość metody o funkcje

Czym byłoby ludzkie życie bez emocji, a zwłaszcza takiej jaką jest zazdrość? Można uważać, że bez niej żyłoby nam się po prostu lepiej. Ale to nie pora i miejsca na takie filozoficzne rozkminy. Dlaczego jednak wspominam o zazdrości? Ponieważ możemy…

Wielkie możliwości małej biblioteki Togglz

W świecie aplikacji legacy warto zastanowić się nad porządnym refaktoringiem. Jednak często ciężko przekonać biznes do takiego zabiegu. Załóżmy, że nam się ta sztuka udała, więc możemy rozpocząć przepisywanie projektu na boku. Mieliśmy mocne argumenty, które przekonały do tego osoby…

Połączenia z dwoma bazami danych w Spring

Zdarza się, że niezbędne jest połączenie się z dwoma bazami danych w ramach jednej aplikacji Spring Boota. Pytanie tylko jak to osiągnąć. Nie jest to tak trudne jakby mogło się wydawać. Postaram się przybliżyć Ci ten proces w dzisiejszym artykule….

Czym jest HikariCP?

Na pewno nie raz się spotkałeś albo spotkałaś z nazwą HikariCP przy uruchamianiu swojego projektu opartego o Spring Boota. Widnieje ona w logach podczas uruchamiania aplikacji. Ale czy zastanawiałaś bądź zastanawiałeś się czym to narzędzie właściwie jest? Żeby się tego…

Powszechnie znane błędy przy izolacji transakcji

W dzisiejszym wpisie chciałbym poruszyć temat dotyczący transakcji, a dokładnie ich izolacji. Z transakcjami możemy się spotkać praktycznie w każdym systemie dotykającym baz danych. Czym one są? Zbiorem operacji, które stanowią pewną całość. Muszą one zostać wykonane wszystkie razem. Natomiast…

Czy zewnętrzne biblioteki w domenie to zło?

Często na konferencjach słyszymy, że w myśl DDD projektowana domena musi być „czysta”, „nieskazitelna”, „nieskalana” żadnym zewnętrznym rozwiązaniem. Najlepiej jakby opierała się tylko na standardowych bibliotekach należących do danego języka. W ten sposób przecież stajemy się niezależni od nikogo. Możemy…

Przemyślenia na temat stosowania wzorca fasady

Wzorce projektowe są rozwiązaniem problemów, które napotykali programiści przez kilkadziesiąt lat istnienia branży IT. Warto się z nimi zapoznać, aby mieć wspólną podstawę do rozmów z kolegami po fachu. Pierwszym krokiem wtajemniczenia do ich poznania według modelu braci Dreyfus jest…

Co nam dają testy mutacyjne?

Po ostatnim wpisie na temat Property Based Testing chciałbym pozostać w sferze testowania kodu. Z tego powodu dzisiaj zajmiemy się ideą stojącą za testami mutacyjnymi. Zastanawiałem się ostatnio jaką wartość dodaną mogą one wnieść do naszego projektu. Okazuje się, że…