1 Punkte von k42kr 2026-05-19 | Noch keine Kommentare. | Auf WhatsApp teilen

Java Refined ist eine Bibliothek, die Validierung in die Signatur verlagert, indem sie anstelle von String und int vordefinierte Refinement-Typen wie NonBlankString und PositiveInt einsetzt.

// Before  
void createUser(String name, int age, List<String> roles) {  
    if (name == null || name.isBlank()) throw new IAE("name");  
    if (age <= 0) throw new IAE("age");  
    if (roles == null || roles.isEmpty()) throw new IAE("roles");  
}  
  
// After  
void createUser(NonBlankString name, PositiveInt age, NonEmptyList<String> roles) { }  
  • 123 vordefinierte Typen, die sich sofort per Import verwenden lassen (VAVR/Arrow liefern nur das Muster)
  • NonEmptyList<T> implementiert List<T> direkt — kein Unwrapping nötig
  • Keine Runtime-Abhängigkeiten · Java 8+ · MIT · Maven Central · Kotlin-Erweiterungsmodul separat
  • 100 % Line Coverage + 95 % PIT-Mutationsscore
  • Ehrlich gesagt: Ein-Personen-Projekt, keine JMH-Benchmarks, keine Brücke für Jackson/@Valid

GitHub: https://github.com/JunggiKim/java-refined

Noch keine Kommentare.

Noch keine Kommentare.