Why use AutoValue?

AutoValue is the only solution to the value class problem in Java having all of the following characteristics:

  • API-invisible (callers cannot become dependent on your choice to use it)
  • No runtime dependencies
  • Negligible cost to performance
  • Very few limitations on what your class can do
  • Extralinguistic “magic” kept to an absolute minimum (uses only standard Java platform technologies, in the manner they were intended)

This slide presentation compares AutoValue to numerous alternatives and explains why we think it is better.