Dzielimy się tym co ważne

blog Speednet

Zrozumieć JBoss Drools

  Drools (BRMS) – system zarządzania regułami biznesowymi Zbiór bibliotek napisanych w języku Java zebranych w jeden pakiet JBoss Drools to kompleksowe rozwiązanie szeroko stosowane w biznesie, a dokładniej rzecz ujmując w procesie tworzenia rozwiązań informatycznych dla biznesu. Powstało z potrzeby ułatwienia i przyspieszenia tworzenia biznesowych działań i pozwoliło na zwiększenie elasyczności poprzez wyniesienie logiki biznesowej do konfiguracji danego oprogramowania. Dzięki takiemu podejściu reguły może modyfikować analityk systemowy lub biznesowy, a zmiany wprowadzać bezpośrednio w arkuszach MS Excel lub z użyciem pseudonaturalnego języka DSL (Domain Specific Language). Jednak zamim to zrobi to od nas – ekspertów Drools – zależy jakie wyrażenia DSL będzie miał do dyspozycji lub w jaki sposób będzie zmieniał reguły biznesowe. Wiedza jest wszystkim Najnowsza wersja pakietu to Drools 6.3.0.Final. Nie jest moim celem opisywać tu wszystkiego, a jedynie zwrócić uwagę na najważniejsze rzeczy, które pozwolą zrozumieć jak działają reguły. Z tego względu dociekliwych odsyłam do dokumentacji.

Czytaj dalej

Java RESTfull Web Services

Wraz z rozwojem Internetu, nastaniem ery WEB 2.0, otaczających nas z każdej strony aplikacji mobilnych, kroczącego wielkimi susami HTML 5 i wszędobylskiego JavaScript , oraz niespełnionych oczekiwań w stosunku do stosu SOAP, coraz więcej słyszy się o usługach opartych na REST. Co to jest REST REST to skrót od Representational State Transfer, technika ta bazuje na protokole http i założeniu że unikalny URL reprezentuje jakiś obiekt. Można wchodzić w interakcję z tym obiektem za pomocą metod HTTP:

Czytaj dalej

pro tip #2 – lambdas & method references

TLDR;Lambda and method reference is not the same thing so lambda cannot be replaced with method reference without any thought on it. IntelliJ to świete IDE, jednak im również zdarzają się błędy. Jakiś czas temu Android Studio informowało mnie, że lambdę można zastąpić referencją do metody. Spójrzmy na kod ze zgłoszenia błędu.

W linii #11 IDE sugeruje nam, aby zastąpić lambdę referencją co jest błędne. Jak sugerują komentarze wynik uruchomienia kodu z zamienioną lambdą na referencje jest różny, czyli sugerowany refactoring kodu powoduje zmianę w semantyce, co z pewnością nie jest tym czego oczekujemy. Tworząc lambdę () -> runner.run() mówimy, żeby za każdym uruchomieniem jej poszukać zmiennej runner oraz wykonać na niej run(). Natomiast przy method references jest podawana wprost metoda, którą mamy uruchomić. Czyli równie dobrze moglibyśmy napisać w linii #17 lambda = () -> System.out.println(„runner at time of lambda creation”). W taki sposób kompilator widzi ten kod.

Czytaj dalej

We like cookies... and we use them.

In order to improve our service, we use cookies. You can block them by changing your browser settings.