私は最近、Java アノテーションについて話している記事を読みましたが、この後者には@Generatedアノテーションがあります。コードの自動生成に使われているそうです。
誰かが少し例を挙げてさらに説明してもらえますか?
私がネット上で見つけたものはすべて、プロの質問か、私が探していたものを超えたものでした.
@Generated
ソースコードを生成するAuto/Valueなどのメタプログラムで使用されるため、手動で記述する必要はありません。手動でファイルを作成している場合.java
(通常はこれが行われます)、. を使用しないでください@Generated
。
Fox の例は、生成されたコードと記述されたコードの間の境界に関する良いポリシーと悪いポリシーです。考え方は、コンパイルされた(静的)言語、解釈された/動的な言語では異なります(私は信じています)。
最悪の場合、生成されたコードを変更することです (次の世代で失われるか、次の世代が禁止されます) 通常、生成されたコードから (手動) クラスを派生させるか、コアの "手動" クラスを拡張するクラスを生成することが受け入れられます。誰かがこの分野で良い政策を知っているなら、コメントしてください.