Blog

Alle Beiträge mit dem Tag Validation

Transformers – verwandelbare Objekte

In meinem vorangehenden Beitrag habe ich die Möglichkeiten der Predicates aus commons-collection vorgestellt. Predicates erlauben, auf einfache Art und Weise Aussagen über Objekte zu überprüfen und dadurch ein wiederverwendbares  Regelwerk zu implementieren. Sie haben jedoch eine Einschränkung: Ein konkretes Predicate bezieht sich auf einen konkreten Type (z.B. Predicate). Die Wiederverwendung wird dadurch erschwert.

Hier kommen Transformer ins Spiel, ebenfalls aus dem commons-collection Frameworks, das wieder in seiner generischen Erweiterung zum Einsatz kommt.

weiterlesen

Subject, Predicate, Object – RuleEngine light mit commons-collection

Unsere Geschäftslogik ist voll von Ja/Nein bzw. Wenn/Dann Entscheidungen. Wir benutzen diese Fragen für die Validierung („handelt es sich um eine gültige Telefonnummer?“), für Ablauflogik („Wenn die Bestellung freigegeben wurde, mache weiter mit A, sonst mit B“), für Filter („gib mir aus diesem Array alle Bestellungen deren Betrag größer sind als 5k€“) und vieles andere mehr.

Das Problem: wir behandeln diese Geschäftsregeln nicht als vom Vorfall unabhängig zu beantwortende Fragen, sondern als direkt zum jeweiligen Code gehörende Bedingung. Die fachliche Anforderung „Ermittele die Volljährigkeit eines Kunden, bevor eine Bestellung platziert wird“, erfolgt dann gerne direkt im Code:
weiterlesen