kagamihogeの日記

kagamihogeの日記です。

JEP 225: Javadoc Searchをテキトーに訳した

http://openjdk.java.net/jeps/225 をテキトーに訳した。

Owner    Bhavesh Patel
Created 2014/05/29 03:05
Updated 2014/11/11 20:49
Type    Feature
Status  Candidate
Component   tools / javadoc(tool)
Scope   Implementation
Discussion  javadoc dash dev at openjdk dot java dot net
Effort  M
Duration    M
Priority    3
Reviewed by Brian Goetz, Jonathan Gibbons
Endorsed by Brian Goetz
Release 9
Issue   8044243

JEP 225: Javadoc Search

Summary

生成されるAPIドキュメントにブラウザ内検索機能を追加します。検索には、パッケージ・プログラム要素・タグ付けされた単語やフレーズを指定可能です。

Non-Goals

ソースドキュメントのコメントの全単語を検索する汎用的な検索エンジンを実装するわけではありません。

Motivation

Javadocが生成するAPIドキュメントのページは、このレイアウトに馴染みが無い読者にとっては大変読み辛いです。外部の検索エンジンを使用可能ですが、旧バージョンや無関係のページを出すことがあります。ブラウザ内検索機能も利用可能ですが、ドキュメント全体ではなく現在のページ内の検索しか出来ません。

Description

以下のような機能を調査中です。

  • Javadocツールが関連性があり有用な*1検索インデックスを生成し、そのインデックスを適切なJavaScriptベースのオートコンプリートユーティリティーが使用します。
  • 検索ボックスを生成されるAPIページで利用可能にする。
    • ユーザ入力に基づいて動作するオートコンプリートユーティリティー機能。
    • サジェストを含むオートコンプリートの結果は、入力文字に正確にマッチするものと入力文字から始まるサジェストで、その結果は単純な分類である以下のカテゴリ"Packages", "Classes", "Members", "Search Tags"に分けられます。
    • ユーザ操作に基づいてページに移動します。
  • インデックスを付けるための検索語やフレーズを識別する新しいタグを導入します。オートコンプリートユーティリティーは検索ボックスに入力された文字で始まる単語やフレーズを検索します。単語やフレーズが@inheritDocタグで継承されたものの場合、異なるプログラム要素名で複数の検索結果が表示されます。

jQuery UI AutocompleteやTypeaheadなどのオープンソース技術を内蔵させて将来的に使用するよう評価中です。

Testing

テストは以下のような事項を確認する必要があります。

  • 検索インデックスの正確さ
  • タグの使用法
  • オートコンプリートとページ移動の正確さ

*1:relevant and efficientが原文。上手く訳せなかったが、検索界隈的にはrelevantっていう用語があるのだろうか?