1480 文字
7 分
【コメント】アノテーションコメント【一覧】

目次

1
アノテーションコメントとは
2
キーワード一覧
作業進行・状態管理
ドキュメンテーション・仕様
テスト・デバッグ関連
設定・環境関連
セキュリティ・パフォーマンス関連
仕様・挙動に関する注意
開発・改善関連

アノテーションコメントとは#

アノテーションコメントとは、ソースコード中に特定のキーワードやラベルを用いて、開発中のタスク・状態・注意点・設計意図などを明示的に記述するコメントのことです。 主に TODOFIXME などのキーワードを使い、後から見返したときに作業の必要性や重要なポイントがすぐにわかるようにする目的で使用されます。 これらはコードの実行には影響しませんが、チーム開発やレビュー、保守作業を円滑に進めるための重要な情報源になります。 エディタやIDE(統合開発環境)によっては、これらのアノテーションコメントを自動で検出・一覧表示する機能もあり、作業の進捗管理や技術的負債の可視化にも役立ちます。

キーワード一覧#

作業進行・状態管理#

TODO: やるべきこと。未実装、修正、追加、優先度や担当者指定など  
FIXME: 誤っている・バグがある箇所の修正が必要  
CHANGED: 変更内容の記録。旧コードとの差異や理由  
UNDONE: 作業途中のコード(未完成状態)  
REVIEW: コードレビュー対象。複雑なロジックや重要な変更箇所  
ASAP: できるだけ早く対応が必要な箇所(優先度高)  
TBD: 内容未定(To Be Determined)  
TBR: レビュー予定(To Be Reviewed)  
CLEANUP: 整理・削除すべきコードや不要な記述
CLEAN: クリーンアップが必要なコード(`CLEANUP`とほぼ同義)   
REFACTOR: リファクタリング(設計改善)の対象  
REMOVE: 将来削除予定のコード。`DEPRECATED`と併用可能  
FUTURE: 将来的な改善や対応が必要な事項  
HOTFIX: 緊急修正に関するコメント  
MIGRATE: 移行が必要なコードや機能  
WORKAROUND: 一時的な回避策(`HACK`より中立的)  
XXX: 動くが理由が不明。危険性・注意喚起  
TEMP: 一時的なコード  
PLACEHOLDER: 仮データ・仮コードで、本実装に差し替え予定  
MOCK: モックデータやテスト用コード  
NOOP: 無効なコード(将来実装または削除予定)  
BLOCKER: 他の作業を止める原因になっている重大な問題  
REWRITE: 書き直しが必要なコードや設計(大幅な変更を示唆)  
DUPLICATE: 重複コード・重複処理への言及  
MOVE: コードの移動やモジュール整理が必要な部分  
UNSTABLE: 安定していない・挙動が不安定なコードや依存関係  
WIP: Work In Progress(作業途中でコミットされたコード)  
PENDING: 保留中、他タスク待ち状態のコードや処理  
ONHOLD: 一時停止している作業や対応  

ドキュメンテーション・仕様#

DOCS: ドキュメント修正・追記が必要な箇所  
SPEC: 仕様の明示や仕様書との関係を示すコメント  
REFERENCE: 参考資料・仕様リンク・外部リソース(例:RFC、APIドキュメント)  
CONTEXT: このコードの背景事情(歴史的経緯・外部要因など)  
RATIONALE: なぜこの実装にしたかの理由を記述(`NOTE`より明確に意図を説明)  
TICKET: チケットIDや課題管理ツール(JIRAなど)との連携コメント(例:`TICKET-1234`)  
OWNER: このコードの主担当・責任者を明示(例:`OWNER: @tanaka`)  

テスト・デバッグ関連#

TEST: テストが必要、または未作成のテストコードへの言及  
DEBUG: デバッグに関連するコード
TRACE: 詳細なトレース出力に関するコメント(`DEBUG`よりも低レベル)  
FLAKY: テストの成功/失敗が不安定(再現性がない)  
REPRODUCE: 再現手順や再現性のあるバグ報告に使う  
AUDIT: 監査ログや操作履歴の記録に関するコードや注意点  
STUB: スタブ(簡易的な代替実装)として用意されたコード  

設定・環境関連#

CONFIG: 設定ファイル・環境変数・構成関連の注意点やTODO  
INTL / I18N: 国際化対応  
L10N: ローカライズ対応  
CROSSBROWSER: 複数ブラウザ対応  
LICENSE: ライセンス条項への注意  
EXTERNAL: 外部システム・外部ライブラリに依存している箇所  
RESOURCE: リソース管理に関する注意点  
VERSION: バージョン依存・将来のバージョンアップに備えた注意点  
DEPLOY: デプロイ関連での考慮点(手順・環境依存など)  
ROLLBACK: ロールバック対応が必要な処理(`BREAKING`変更との併用も)  

セキュリティ・パフォーマンス関連#

SECURITY: セキュリティ上の注意点や懸念  
OPTIMIZE: パフォーマンス改善  
PERF: パフォーマンス懸念点(`OPTIMIZE`と併用可)  
COST: 計算量やリソースコストに関する注意  
SEMAPHORE: 排他制御・同期に関する注意  

仕様・挙動に関する注意#

BUG: バグの存在  
HACK: 一時的な回避策や非理想的な実装(技術的負債)  
WORKAROUND: 一時的な回避策(`HACK`より中立的)  
NOTE: 補足情報や設計意図、仕様上の理由など  
WARNING: 潜在的なリスク、使用・修正時の注意点  
NB: 注意(Nota Bene)  
OBSERVE: 実行結果・挙動の観察が必要なコード  
INTENTIONAL: 意図的な実装・挙動(誤解防止のため明示)  
SIDE_EFFECTS: 副作用がある処理に関するコメント  
EDGECASE: 稀な条件・例外的なパターンへの対処  
FAILSAFE: フェイルセーフ・回避策の記述  
COMPAT: 後方互換性の考慮  
BREAKING: 後方互換性を壊す変更  

開発・改善関連#

FEATURE: 新機能の実装に関連するコードやタスク  
IDEA: 改善・追加のアイデア  
EXPERIMENT: 実験的な実装(採用可否未定)  
RESEARCH: 技術的に検証・情報収集をしてから対応すべき箇所  
QUESTION: 疑問点・確認したい事項 
INVESTIGATE: 原因不明・調査が必要な問題(`QUESTION`の発展)  
ANALYZE: 性能・挙動などの調査を要する箇所  
ACCESSIBILITY: アクセシビリティ改善検討  
STYLE: コーディングスタイル・命名規則・フォーマットの修正  
LINT: 静的解析ツール(linter)に関する警告  
LOG: ログ出力に関するコメント  
METRICS: ログ・監視・モニタリング関連   
INFO: 関数の説明や補足情報  
MEMO: 一時的なメモ情報  
BLOCKED: 外部要因などで作業が一時停止中の状態  
INTERRUPT: 一時中断している作業や再開が必要なタスク  
【コメント】アノテーションコメント【一覧】
https://oooo-o0.github.io/posts/annotationcomment/
作者
Sui
公開日
2025-04-17
ライセンス
CC BY-NC-SA 4.0