In principle and practice, I oppose all use of annotations. It&#x27;s metaprogramming (aka magic).<p>Being the new COBOL, Java is best when it just works. Anyone who can use annotations responsibly will be happier choosing a grown up language like Clojure.<p>In truth, I don&#x27;t have an answer for why method?method?property syntax is better than using annotations. Because I tend to use NullObjects and avoid method chaining, to me it&#x27;s a false choice.<p>Edit: Concision.