Annotations are a way to add metadata to class declarations. The metadata can then be used by libraries and other development tools, such as inversion of control containers. The annotations API was originally proposed by the Google AtScript team, but annotations are not a standard. However, decorators are a proposed standard for the ECMAScript specification, to annotate and modify classes and properties at design time. Annotations and decorators are pretty much the same:
"Annotations and decorators are nearly the same thing. From a consumer perspective, we have exactly the same syntax. The only thing that differs is that we don't have control over how annotations are added as metadata to our code. A decorator is rather an interface to build something that ends up as annotation. Over a long term, however, we can just focus on decorators,...