Javadocに代わる優れた最新の方法はありますか?[閉まっている]


80

それに直面しましょう:デフォルトのJavadocが見苦しいことを確認するために、デザイナーである必要はありません。

Web上には、スタイルを変更したJavadocを提供するリソースがいくつかあります。ただし、デフォルトの動作は製品を表しており、適度に見栄えがよいはずです。

もう1つの問題は、Javadocの使いやすさが他の同様のリソースと比較して最新ではないという事実です。

特に巨大なプロジェクトは、Firefoxのクイック検索を使用してナビゲートするのは困難です。

実用的な質問:
ブラウザよりも使いやすい方法で既存のJavadocを参照できるスタンドアロン(デスクトップ)アプリケーションはありますか?
Monoのドキュメントブラウザのようなものを考えています。

理論的な質問:
Javadocを何らかの形で標準化された方法で進化させる計画があるかどうか、誰か知っていますか?
編集: このトピックに関するSunのwikiへの便利なリンク


4
javadocが有効なHTML4.01またはXHTMLページを生成してくれると嬉しいです。
akarnokd 2009年

2
どのような使いやすさの問題がありますか?
basszero 2009年

15
なぜ誰かがこれに反対票を投じるのですか?合理的な質問だと思います:+1
Daniel Sloof

2
(X)HTMLはJavadocの唯一の方法ではありません。ブラウザは、(ローカルの)ナレッジベースにアクセスするための非常に限られたツールです。
ivan_ivanovich_ivanoff 2009年

14
私は個人的にJavadocが好きです。それは明確、簡潔、そして要点です。一方、MSDNサイトは...
samoz

回答:


42

Markdown(java)Docletを作成しましたMarkdown形式のテキストでソースコメントを取得し、同じHTML Javadocを作成しました。

新しいドックレットもテキストのスタイルを変更しますが、生成されたHTMLはこの段階では変更されません。

これは、おそらく現在のJavadocで最大のユーザビリティの問題であるHTML-in-java-commentingの問題に対処するための何らかの方法になります。


21

Javadocの概念は時代遅れだとは思いません。私が見る限り、これらの概念は何年も前にdoxygenという名前の製品に根ざしており、他の言語(つまり、頻繁に使用されるObjective-C)でも利用できます。これにも前任者がいます-ドナルド・クヌースがTeX(文芸的プログラミング)を作成するために使用したプログラミング環境を見てください。

それにもかかわらず、プログラムコードとドキュメントの単一のソースを持つことは興味深いアイデアです。

さらに、JavaDocツールでサポートされているプラ​​グインシステムを使用して、ドキュメントの表示を特別なニーズに合わせてカスタマイズできます。Web経由で直接アクセスできるデータベースに直接公開するプラグインを(私たちが行うように)提供する場合があります。コラボレーションを使用すると、誰でもドキュメントに追加のコメントや説明を提供して、元のソースに戻る可能性があります。


1
ScalaDoc2を見てくださいscala-lang.org/api/currentそしてもう一度Javadocは時代遅れではないと言ってください。:-)私はそれが多かれ少なかれ同じ基本概念であることを認めますが、ただはるかに優れた実装です。javadocツールの新しい実装でも同じことができるでしょう。
ハンス・ペーター・ストー

13

Javadocは、私が今まで見た中で最高のソースコード自動ドキュメント生成システムです。その大部分は、それがとても単純なことです-必要に応じて、5年前の携帯電話でもjavadocsを閲覧できます!少しの改造が必要であり、特にJDKを閲覧するのは面倒であることに同意しますが、現在私たちが持っているのは、その目的のためのRESTfulで使いやすいソリューションであるため、車輪の再発明をあえてするつもりはありません。ほぼどこでも。


1
さて、ページ内リンク(例http://download.oracle.com/javase/6/docs/api/java/lang/String.html#String(byte[]))は、括弧、角かっこ、および許可されていないその他の文字を使用しているため、無効であるという問題があります。これにより、一部のブラウザで問題が発生します。
ジョーイ

1
ところで、このコメントの更新ですが、実際には、scaladoc2(scala-lang.org/api/current/index.htmlを参照)は実際にはjavadocよりも優れていると思いますが、これは主にjavadocsから優れた部分を借用してから追加するためです。そこには他にも気の利いたものがいくつかあります。
esko 2011年

2
さらに別の更新として、javadocシステムはJDK7でオーバーホールされ、最近はかなり見栄えがします。参考のために、公式API javadocをdownload.oracle.com/javase/7/docs/api
Esko

はい、でもそれはとても醜いです!
ジギー2014年

@Ziggy独自のCSSを作成するか、前述のAPIを使用して完全に一意のドキュメントページを生成しますか?:P
Esko 2014年

11

最近、SunがJavadocHTML出力の最新化に取り組んでいるというメールが転送されました。上記のメールから:

JDK7のjavadoc / docletの改善を提案しています。プロジェクトのwikiページは http://wikis.sun.com/display/Javadoc/Homeにあります。提案された改善の一環として、javadoc出力のUIが刷新されます。新しいデザインのスクリーンショットがプロジェクトwikiにアップロードされます。javadoc出力マークアップは、有効なHTMLおよびWCAG2.0に準拠するように変更されます。

ですから、多少遅れても、間違いなくまだ作業が進んでいます。ただし、私の目には、Javadocの最大の欠点の1つは、HTMLとの密接な結合です。多くのクラスには、リテラルHTMLを含むJavadocがあり、出力もHTMLであることに依存しています。残念ながら、これはいつでも変わることはないと思います。それでも、これは、開発者がHTMLに必要なものを自由に含めることができることを意味します。これは、無効である、整形式でないなどの可能性もあります。したがって、javadocツールからの出力を適応させることは、この一部にすぎず、他の部分はそうではありません。 tであり、変更できないため、残ります。

ドキュメントの閲覧に関しては、HTMLドキュメントも少し扱いに​​くいと思います。私は通常、EclipseでJavadocビューを使用します。欠点もありますが(遅く、実際に検索することはできません)、ほとんどの場合、GoodEnough™です。


素晴らしいニュース !!!ありがとうございました !!!次に、質問を編集して、この便利なリンクを提供します。
ivan_ivanovich_ivanoff 2009年

@ivan_ivanovich_ivanoff、おそらくSunチームにも懸念を表明することができます。彼らがあなたを幸せにすることができれば、それは私たち全員に利益をもたらすように思えます。
–ThorbjørnRavn Andersen 2010

5

個人的には、Javadocはまだ非常に便利だと思います。特に標準化されているので。ナビゲートしやすいと思う主要なドキュメントスタイルはわかりません(主観的なものかもしれませんが、個人的には、MSDNの使用がひどいものだと思います)。

検索の場合:Javadoc検索フレームを使用すると、あらゆる種類のJavadocの使用がはるかに簡単になります。FirefoxのユーザースクリプトおよびGoogleChrome拡張機能として利用できます。


1
Javadoc Search Frameは、左側のフレームのパッケージ名とクラス名のみを検索するように見えます。これは便利ですが、全文検索ほど便利ではありません。
グレンローレンス

4

あなたの実用的な質問に答えるために、私はグーグルで友達に尋ねて、これらを思いついた。Forrestdoc、doclet、doxygen。

2番目の質問は、そうです、それはあまり「Web-oh-twoeye」ではありませんが、少なくともオフライン環境で動作することが保証されており、APIと一緒に出荷するのに十分小さいです。私はフレームの使用を軽蔑していますが、javadocではかなりうまく機能します。私はそれを変える計画を見たことがありません。Eclipseは、javadocの読み取り、解釈、生成に関する限り、javadocをある程度サポートしています。


3

あなたはそれをあまり攻撃的で威圧的な方法で表現したいかもしれません。ほとんどの人は、技術リソースがどのように見えるかを気にせず、「Web 2.0では不十分です!」気まぐれなmarketroidspeakのように聞こえます。

そして、あなたは正確に「より使いやすい」と思いますか?個人的に、私は間違いなく全文検索とより良い使用法のブラウザが欲しいです、そしてAJAXはおそらくそれらを助けることができます。

ええと、JavaDocの良いところは、それが時代遅れの反対であるということです-それは任意に拡張可能です。先に進んで、必要な種類のAPIドキュメントを作成するドキュメントレットを作成してみませんか?

これまで誰もそれをしなかった理由(明らかにそうです)は誰の推測でもあります-おそらく他の誰もあなたほど強くそれについて感じていません。


1
1)使いやすさに対する人々の印象は、優れたデザインに依存しているのは事実です。2)AJAX-ローカルfile://リソースの場合?3)確かに、C / C ++エコシステムの誰も、一貫した命名について私ほど強く感じていませんが、これは一貫した命名の必要性を無効にするものではありません。
ivan_ivanovich_ivanoff 2009年

2
1)では、「良いデザイン」とは正確には何だと思いますか?私は、通常のJavaDocはうまく設計されていると思います。2)実際のAJAXではないと思いますが、実際には同様の機能が可能であるはずです。3)それでも、現在のJavaDocはほとんどの人にとって十分に優れているようで、これまで誰もより良いJavaDocを作成することを気にしませんでした。これはそれほど難しいことではありません。
Michael Borgwardt

1
1)標準部分:HTMLではなく、強力に構造化されたデータ。実装部分:Javaで書かれたデスクトップアプリ;)3)Javadocを改善するボランティアがたくさんいると思いますが、それを真剣にするにはJSRが必要です。このトピックで達成するのは現実的ではありません。
ivan_ivanovich_ivanoff 2009年

@ivan_ivanovich_ivanoff:どの強力に構造化されたデータが必要だと思いますか?そして、このフォーマットを生成するjavadoc-docletを書いてみませんか?そして、私はデスクトップアプリのアイデアに絶対に反対します。なぜなら、それはドキュメントを表示するために特定のアプリにあなたをロックするからです。
Mnementh 2009年

2

DocBookドックレットがあります。DocBookは、(X)HTMLよりも豊富なドキュメントタイプであり、技術コンテンツの記述に適しています。DocBookソースから、あらゆる種類の異なる出力形式を生成できます。


2

個人的には、HTML(したがってタグを扱いやすい)JavaDocよりも読みやすい「コメントドキュメント」標準が必要です。

たとえば、ここで使用されているMarkDownは、ソース内で人間が読める形式で優れており、ソースの外部で適切にフォーマットされています。

現在のJavaDocでは、多くの人がJavaDocコメントを使用していると思いますが、実際には可能な範囲で文書化されていません。誰もが、文書化されていないか、ほとんど文書化されていないAPIのオンラインJavaDocを閲覧しており、これまでのところ、本来よりもはるかに使いにくいと確信しています。

これは、JavaDocコメント(アイテムのリストなど)内に配置した読み取り可能な構造を1つの大きなテキストの塊に完全に破壊するコードリフォーマッター(Eclipse内、またはソースコミット時など)では役に立ちません。文字通り、1つを使用したい場所で2つのキャリッジリターンを使用しない限り)。


2

Javadocを何らかの形で標準化された方法で進化させる計画がある場合、誰かが知っていますか?

Javadocの拡張機能を指定する対応するJSR(JSR 260)は、(今のところ)JDK7から投票されました。計画されたものの概要(このサイトから):

Javadocをアップグレードして、より豊富なタグのセットを提供し、Javadocドキュメントのより構造化された表示を可能にします。このJSRは、メソッドとフィールドの分類、クラスとパッケージのセマンティックインデックス、静的メソッド、ファクトリメソッド、通常のメソッドからの非推奨メソッドの区別、プロパティアクセサーの区別、情報のビューへの結合と分割、例と一般的なユースケースの埋め込み、もっと。

JDK7の全体的な見通しはかなり厳しいです。


1

JavaDoc自体は非常に柔軟性があります。これは、標準のドックレットをカスタムのドックレットに置き換えて、プロジェクト固有のニーズを満たすものを提供できるためです。

私が取り組んでいるプロジェクトでは、JavaDocが完全に統合された製品用にHTML / XMLベースのドキュメントシステム(JSでクライアント側のXSLT 2.0を使用)を作成しました。このために、カスタムドックレットを使用してXMLでJavaDocデータを生成しました。これは、tagsoupを使用して、コードコメント内のHTMLマークアップでさえも適切に形成されるようにしました。

これにより、単一ページのアプリ(デスクトップツールと同様)を使用してインタラクティブなユーザーエクスペリエンスを提供できましたが、サーバー側のコードやインフラストラクチャを使用せずに、すべてブラウザー内から実行できました。ビューアには、検索、ツリーナビゲーションなどの標準機能が含まれていました。

かなり広大なドキュメントのサンプルエントリポイントへのリンクは次のとおりです 。JavaDocビューアのサンプル

これも画像です: ここに画像の説明を入力してください


0

スマートな検索可能なjavadocビューア:

何度も、JavaDocの閲覧の問題に直面しています。Adnroidのドキュメント検索オプションのようなものを探していました。ついにそのようなものを手に入れました。Firefoxを使用する場合、解決策はここにあります。

  1. プラグインGreaseMonkeyをインストールします。これは、私たちが見ているようにWebページをカスタマイズするようなものです。(クラス名で検索できるように、Javaドキュメントページをカスタマイズする必要があります) https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/

  2. グリースモンキーを機能させるには、カスタマイズ用のユーザースクリプトが必要です。これはgreasemonkeyによって自動的にダウンロードできます。JavaDoc検索フレームまたはJavaDocインクリメンタルサーチからユーザースクリプトをインストールします

これは私にとって素晴らしい働きをします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.