airhacks.fm podcast with adam bien· Folge 348

Injection Without Reflection

Samstag, 7. Juni 2025 · 57 min

MP3

Shownotes

An airhacks.fm conversation with David Kral (@VerdentDK (twitter.com/VerdentDK)) about:
Helidon Declarative (helidon.io/docs/latest/#/se/declarative/introd…) as a new feature set for Helidon SE (helidon.io/docs/latest/#/se/introduction),
build-time dependency injection with zero reflection capability,
code generation approach that creates actual Java (java.com/en) source files instead of bytecode manipulation,
Service Registry (helidon.io/docs/v4/apidocs/io.helidon.service.…) as an enhanced Java service loader with ordering capabilities,
compatibility with GraalVM (graalvm.org) for native image (graalvm.org/docs/reference-manual/native-image) compilation,
JPMS (en.wikipedia.org/wiki/Java_Platform_Module_Sys…) (Java Platform Module System) compatibility,
the Maven (maven.apache.org) plugin that eliminates reflection completely,
HTTP module for declarative REST endpoints,
REST client generation,
metrics and fault tolerance support,
interceptors for modifying service creation behavior,
annotation mapping to support standard JSR-330 (jcp.org/en/jsr/detail?id=330) annotations like @Inject,
comparison of performance between Helidon SE and MP flavors,
use cases for serverless (en.wikipedia.org/wiki/Serverless_computing) and CLI applications,
the incubating status of Helidon Declarative with full release planned for Helidon 5,
the ability to see and modify generated code for better debugging and transparency,
the possibility to copy generated code to take ownership and remove dependencies,
the value of using standard annotations for better portability between frameworks

David Kral on twitter: @VerdentDK (twitter.com/VerdentDK)

0:00 / 0:00