1 điểm bởi k42kr 2026-05-19 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Java Refined là thư viện đưa các kiểu tinh chỉnh (refinement) được định nghĩa sẵn như NonBlankString, PositiveInt vào thay cho String, int, qua đó chuyển việc kiểm tra vào ngay chữ ký hàm.

// 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 kiểu định nghĩa sẵn có thể import và dùng ngay (VAVR/Arrow chỉ cung cấp mẫu)
  • NonEmptyList<T> trực tiếp implement List<T> — không cần unwrapping
  • Không có dependency runtime · Java 8+ · MIT · Maven Central · có module mở rộng riêng cho Kotlin
  • Bao phủ dòng lệnh 100% + điểm mutation PIT 95%
  • Nói thẳng: dự án một người, chưa có benchmark JMH, không có cầu nối cho Jackson/@Valid

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

Chưa có bình luận nào.

Chưa có bình luận nào.