別のドキュメントとしてではなく、なぜソースコードの自然言語記述(つまり、コード行が記述された理由)をソースコード内に埋め込むのですか?
現代の開発環境(高解像度モニター、デュアルモニターなど)に提供される広大な不動産を考えると、IDEは、ソースコードが視覚的に分離されているが本質的にリンクされているセミロックステップパネルを提供できます。対応するコメント。たとえば、開発者はハイパーリンクマークアップ言語(追加のソフトウェア要件へのリンク)でソースコードコメントを書くことができます。これにより、ドキュメントがソースコードを乱雑にするのを同時に防止できます。
このようなソフトウェア開発メカニズムを阻害する欠点は何ですか?
質問を明確にするためのモックアップ:
カーソルがソースコードの特定の行(上記の青色の背景で表示)にある場合、カーソルのある行に対応するドキュメントが強調表示されます(他の詳細と区別されます)。質問で述べたように、カーソルがソースコード内を移動するとき、ドキュメントはソースコードとロックステップのままです。ホットキーで「ドキュメントモード」と「開発モード」を切り替えることができます。
潜在的な利点は次のとおりです。
- 画面上のソースコードとドキュメントの同時表示
- (言語に関係なく)ソースコードとは関係なくドキュメントを編集する機能
- マージの競合なしに、ドキュメントとソースコードを並行して作成する
- 優れたテキスト形式のリアルタイムハイパーリンクドキュメント
- さまざまな自然言語への準リアルタイム機械翻訳
- コードのすべての行は、タスク、ビジネス要件などに明確にリンクできます。
- ドキュメントは、コードの各行が記述されたときに自動的にタイムスタンプを付けることができました(メトリック)
- アーキテクチャ図、関係を説明する画像などを動的に含める
- 単一ソースのドキュメント(ユーザーが手動で含めるためのタグコードスニペットなど)。
注意:
- ドキュメントウィンドウは折りたたむことができます
- ソースファイルを表示または比較するワークフローは影響を受けません
- 実装がどのように行われるかは詳細です。ドキュメントは次のようになります。
- ソースファイルの末尾に保持されます。
- 規則(
filename.c
、filename.c.doc
)で2つのファイルに分割します。または - 完全にデータベース駆動
- ハイパーリンクされたドキュメントとは、外部ソース(StackOverflowやWikipediaなど)および内部ドキュメント(つまり、ビジネス要件ドキュメントを相互参照できるサブドメイン上のWiki)およびその他のソースファイル(JavaDocsに類似)へのリンクを意味します。
関連スレッド:業界のドキュメントに対する嫌悪感とは何ですか?
Gson()
や、特定のビジネス要件の解決にどのように関連しているかについては回答していません。使用するAPIではなく、コード自体を記述することは、サードパーティのJavaDocsとは別に、別のウィンドウで行うことができます。