Codes:Kotlin 与 Java 的统一结果模型
Codes – typed application outcomes for Kotlin and Java
在微服务架构中,如何让不同协议下的应用结果保持一致?Codes 是一个轻量级 JVM 库,专为 Kotlin 和 Java 设计,提供稳定的应用结果标识和明确的协议映射。它让业务逻辑中的结果定义(如 PAYMENT_DECLINED)在 HTTP、gRPC 等边界上保持同一身份,无需耦合具体框架。支持 Java 17+,零运行时依赖,通过 OutcomeDefinition 自定义结果,利用 HttpOutcomeMapper 和 GrpcOutcomeMapper 实现协议转换。无论是标准错误码还是自定义业务状态,Codes 都能确保结果语义跨边界一致,简化错误处理与日志追踪。
应用可以保留自己的领域结果或错误模型,并在系统多个部分需要就结果含义达成一致时,使用 Codes 而不必将这种含义耦合到 HTTP、gRPC、序列化或某个框架上。