Doğrulamayı tip sistemine taşıyan Java kütüphanesi (123 ön tanımlı tip)
(github.com/JunggiKim)Java Refined, String, int yerine NonBlankString, PositiveInt gibi ön tanımlı refinement tiplerini koyarak doğrulamayı imzaya taşıyan bir kütüphanedir.
// 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) { }
- Hemen import edilip kullanılabilen 123 ön tanımlı tip (VAVR/Arrow yalnızca deseni sunuyor)
NonEmptyList<T>,List<T>arayüzünü doğrudan uygular — unpack etmeye gerek yok- Sıfır runtime bağımlılığı · Java 8+ · MIT · Maven Central · ayrı Kotlin genişletme modülü
- %100 satır kapsamı + %95 PIT mutasyon skoru
- Dürüstçe: tek kişilik proje, JMH benchmark yok, Jackson/
@Validköprüsü yok
Henüz yorum yok.