feign deklaratywny klient http

Feign deklaratywny klient http

Współczesne aplikacje coraz częściej komunikują się ze sobą, coraz częściej korzystają także z różnego rodzaju api udostępnianego publicznie przez różnych dostawców. Najprostszą i chyba najczęściej wykorzystywaną metodą łączenia się z różnymi serwisami poprzez takie api, jest użyciu klienta http. Implementacji różnych klientów jest wiele. Ja dzisiaj opiszę Feigna, klienta deklaratywnego, który pozwala nam zmniejszyć ilość pisanego kodu oraz znacznie ułatwić pracę.
Czytaj więcej

Spring Webflux Reaktywny Spring

Spring Webflux – Reaktywny Spring

Spring Webflux to moduł frameworka Spring, który pozwala korzystać z reaktywnego programowania w Springu. Koncept programowania reaktywnego został spopularyzowany przez ReactiveX.io (Reactive Extension), które wprowadza reaktywne programowanie do wielu języków poprzez biblioteki. Np. poprzez RxJs w Javascripcie, RxJava w języku Java, Rx.NET w C# i wiele innych. Jest to przetwarzanie oparte na zdarzeniach (events). I przeciwnie niż mogłoby się wydawać nie jest to nowa koncepcja.
Czytaj więcej

Klasa abstrakcyjna vs interfejs

Pytania rekrutacyjne – czym różni się klasa abstrakcyjna od interfejsu?

Na to z pozoru proste pytanie możesz odpowiedzieć na kilka sposobów. Możesz skupić się tylko na różnicach technicznych pomiędzy klasą abstrakcyjną i interfejsem. To jest ta prosta część. Możesz też zagłębić się bardziej w temat i opowiedzieć o tym, kiedy stosować klasę abstrakcyjną, a kiedy interfejs. Ale to nie wszystko, bo możesz także powiedzieć o różnych regułach, które można naruszyć korzystając z jednej lub z drugiej konstrukcji. O tym wszystkim przeczytasz w poniższym artykule.

Czytaj więcej