JavaDoc SEO-freundlich gestalten

inflamer

Bekanntes Mitglied
Hallo zusammen,

ich bastle an einer Open Source-Bibliothek, welche am Ende nach allen gängigen Regeln gestaltet sein soll, wozu natürlich auch ein ausführliches JavaDoc gehört.

Dieses JavaDoc würde ich gerne zusätzlich als ein Set von Landing Pages auf meiner Webseite verwenden, um so die Bibliothek zu bewerben. Für diesen Zweck sollten einzelne HTML-Seiten möglichst SEO-optimiert sein.

Habt ihr hierfür irgendwelche Tipps?

Im Moment teste ich mit dem Standard-JavaDoc, für welches die ganzen /** ... */-"Dinger" im Code eben auch geschrieben sind. Ich schätze daher, dass die letztendliche Lösung am besten wohl nicht all zu weit vom Standard-JavaDoc entfernt sein sollte...

Als Zusatzinfo zu meinem Kenntnisstand: Ich bin in dem Thema gerade so weit drin, dass bei aktiviertem "lint" meine JavaDoc-Kommentare keine Fehler oder Warnungen generieren.

Danke!
 
Zuletzt bearbeitet:

Robert Zenz

Top Contributor
Dieses JavaDoc würde ich gerne zusätzlich als ein Set von Landing Pages auf meiner Webseite verwenden, um so die Bibliothek zu bewerben. Für diesen Zweck sollten einzelne HTML-Seiten möglichst SEO-optimiert sein.
Ja Nein, aber eher nicht? Ich bin mir nicht ganz sicher was genau du vorhast.

Javadoc ist sehr schlecht geeignet um einen Ersteindruck einer Bibliothek oder eines Programms zu vermitteln da es auf den Klassen und nicht auf den Anwendungsfaellen aufbaut. Du kannst dann natuerlich den Mockito-Weg gehen und alles in die Javadoc reinbauen, inklusive Bildern, dann ist die Klassendokumentation selbst aber nahezu unbrauchbar. In so ziemlich allen Faellen duerften mehrere Klassen interagieren, und wo man diesen Fall dann dokumentiert ist fragwuerdig.

Du koenntest eine Paket-Dokumentation mit Javadoc machen und dann dort alles beschreiben. Da man in Javadoc auch HTML nach belieben(?) verwenden kann, geht das alles recht gut. Die Paket-Dokumentation hat eben den Vorteil dass es mehrere Klassen buendelt, aber auch hier gibt es dann wieder Probleme damit Dinge zu beschreiben die mehrere Pakete umfassen und in einer IDE ist eine Paket-Dokumentation etwas schlechter zu finden als die auf den Klassen.

In erster Linie wird ein neuer Benutzer immer Dokumentation zu Anwendungsfaellen brauchen und nicht zu einzelnen Klassen. Solche Dokumentation ist eigentlich immer "extra".
 

inflamer

Bekanntes Mitglied
Hallo und danke für deine Antwort!

Ich bin mir nicht ganz sicher was genau du vorhast.

Vielleicht habe ich meine Frage etwas ungenau formuliert. Die HTML-Seiten, aus denen das JavaDoc besteht, sollen, knapp formuliert, so gestaltet sein, dass Google sie als "hochwertig" einstuft und bei entsprechenden Suchbegriffen die Seiten möglichst weit oben präsentiert. Dazu ist es gemeinhin sinnvoll, dass die HTML-Seiten sowohl Inhaltlich als auch von der HTML-Struktur her möglichst Google-freundlich gestaltet sind.

Darauf zielte meine Frage ab. Ich dachte z.B. an sowas wie DocLets, die auf suchmaschinenoptimierte HTMLs erzeugen oder sowas. Im Moment, wie ich oben schon erwähnte, generiere ich ziemlich standardisierte Seiten wie diese hier: https://docs.oracle.com/javase/8/docs/api/java/lang/String.html

(Was die von dir erwähnten Anwendungsfälle angeht, gebe ich dir recht, und ich habe im Zuge des Schreibens der JavaDocs auch schnell gemerkt, dass eine Anleitung mit Beispielen eigentlich Pflicht ist. Darum enthalten die paar Hauptklassen auch Code-Beispiele oben in der Klassenbeschreibung. Welches die Hauptklassen sind, findet der Anwender auch schnell heraus angesichts der überschaubaren Gesamtmenge an Klassen und der überlegten Namensgebung...)
 
Zuletzt bearbeitet:

httpdigest

Top Contributor

Robert Zenz

Top Contributor
Vielleicht habe ich meine Frage etwas ungenau formuliert. Die HTML-Seiten, aus denen das JavaDoc besteht, sollen, knapp formuliert, so gestaltet sein, dass Google sie als "hochwertig" einstuft und bei entsprechenden Suchbegriffen die Seiten möglichst weit oben präsentiert. Dazu ist es gemeinhin sinnvoll, dass die HTML-Seiten sowohl Inhaltlich als auch von der HTML-Struktur her möglichst Google-freundlich gestaltet sind.
Javadoc selbst unterstuetzt nur einen verkleinerten Satz an HTML Elementen, aber das wuerde ich natuerlich nicht hindern einen eigenen Javadoc-Prozessor zu schreiben welcher die Struktur "aufarbeitet" und alles in eine enstprechende Vorlage einbettet. Die billigste Variante welche mir einfaellt waere das Javadoc "normal" schreiben zu lassen in HTML Dateien und dann mit Pandoc diese so umzubauen dass sie deinen Vorstellungen entsprechen. Ansonsten kannst du dir ein eigenes Doclet schreiben welches dann das Javadoc direkt aus dem Quellcode praesentiert bekommt und dann dieses entsprechend aufarbeiten.
 

Manul

Mitglied

KonradN

Super-Moderator
Mitarbeiter
Entschuldige, wenn ich da jetzt gerade etwas hinterfrage:

SEO Optimierung und JavaDoc passen da gerade nicht wirklich zusammen. In JavaDoc geht es ja in erster Linie um die Beschreibung der Klassen Deiner Open Source Bibliothek. Und die sollten vom Namen her doch schon relativ eindeutig sein. Es mag evtl. paar Klassennamen geben, die in vielen Bibliotheken vorkommen (StringUtils oder so), aber jemand der in Google sucht, der wird doch vermutlich den Namen der Library zusammen mit dem Klassennamen angeben. Und damit wird doch vermutlich Deine Seite mit einer der Top Treffer sein, denn diese Kombination wird es nicht viel geben. Evtl. paar SO Threads aber sonst?

Daher ist die Frage, in wie weite eine Optimierung überhaupt notwendig ist. Ich sehe es hier ähnlich wie bei Optimierungen in der Entwicklung: Erst einmal schauen, ob dies überhaupt notwendig ist. Oder hast Du bereits festgestellt, dass dies dringend notwendig ist und ich habe das schlicht überlesen (dann täte es mir leid).

Anders wäre es, wenn es darum geht, deine Library zu finden. Aber das sollte dann eine Webseite sein von Deiner Library und nicht die API Dokumentation per JavaDoc. (siehe dazu auch #2 von @Robert Zenz).
 

inflamer

Bekanntes Mitglied
Vielen Dank für eure Antworten!

Hast du dich denn selbst schon mit dem Thema SEO beschäftigt [...]

Mit SEO kenne ich mich ziemich aus, z.B. kommt meine Website bei dem Google-Testtool https://pagespeed.web.dev/?hl=de bei allen 4 Indikatoren auf 100%.

Das erwähne ich an dieser Stelle nur, weil dasselbe Tool für die von mir bereits als Beispiel genannte String-Javadoc-Seite ( https://docs.oracle.com/javase/8/docs/api/java/lang/String.html ) recht viele Mängel meldet. Die Seite ist mit dem Standard-Javadoc-Tool erstellt. Darum meine Frage nach einem Doclet, welches eben auf SEO einen Schwerpunkt hat.

@Robert Zenz, DasFrageezeichen
So ein Doclet selbst zu schreiben wäre wohl eine Lebensaufgabe. Pandoc konvertiert, wenn ich das richtig sehe, nur zwischen Formaten hin und her(?)

@KonradN. Kein Problem, dass du hinterfragst! Im Grunde eignet sich alles an HTML-Dokumenten, was einen ausreichenden Textanteil hat, als Landing Page und damit für SEO-Optimierung. Optimierbedürftig sind die mit Standard-Javadoc erzeugten HTML-Seiten allemal (siehe oben). Potenzielle Sucher, so jedenfalls meine Rechnung, würden halt nach Begriffen wie "qr code to eps java" suchen, wenn sie nach einer Java Library suchen, welche QR Codes nach EPS exportiert. Und da diese Begriffe mit einer ausreichenden Häufigkeit in der betr. Klassenbeschreibung vorkommen, eignen sich JavaDocs zumindest meiner Einschätzung nach hervorragend als "Landing Page". Vor allem wenn man sie zusätzlich für Google optimieren könnte...

@Manul.
"Welche "trotz" Standardisierung und Nicht-SEO-Optimierung so ziemlich das oberste Suchergebnis ist, wenn man "java string" bei Google eingibt ..."
Für's Ranking bei Google spielt eben auch die Anzahl von Links eine Rolle, die auf eine URL zeigen. Und davon gibt es im Falle der Oracle-String-Seite quasi undendlich viele. Jedes ins Netz gestellte noch so kleine Javadoc enthält garantiert gleich zig Links zur besagten URL.

Aber ok, anscheinend gibt's so ein Doclet nicht, damit wäre meine Frage beantwortet. Danke nochmal!
 
Zuletzt bearbeitet:

KonradN

Super-Moderator
Mitarbeiter
Potenzielle Sucher, so jedenfalls meine Rechnung, würden halt nach Begriffen wie "qr code to eps java" suchen, wenn sie nach einer Java Library suchen, welche QR Codes nach EPS exportiert.
Aber bei so einer Suche will ich doch keine API Regerenz! Die API Referenz ist doch nur dann interessant, wenn ich Fragen zu der API habe.

Und da ist immer die Frage; Ist Google dann das Tool der Wahl?
Ich habe einige JavaDoc Local auf dem Rechner - da suche ich in der JavaDoc selbst.
Oder bindet die iDE JavaDoc automatisch ein (über Maven Repository)?

Das ist mein Punkt. Du willst mir also nicht bei der genannten Suche irgend eine Klasse geben von Dir.

Und wenn ich nach InflamerLib SuperDupperClass suche, dann sind die generierten JsvaDoc Seiten ok, denn andere Webseiten werden dazu nicht viel schreiben oder sie haben dann einen Link zu der Klassen API …

Aber das ist nur meine Sicht und ich stehe nicht für alle Entwickler oder so, Aber evtl. willst du drüber nachdenken, ob du derzeit nicht ggf. „Zeit verschwendest“.
 

inflamer

Bekanntes Mitglied
Die API, auf der man landet, wäre halt nur eine "Landing Page" mittels der man im nächsten Schritt (z.B. über einen gut sichtbar platzierten Link) auf die Main-Seite gelangt, mit vollständiger Beschreibung dessen, wass die Lib so alles kann, Download usw.

JavaDoc, welches viel Mühe zu schreiben war und ohnehin fertig ist, bietet (in meinem Fall) halt direkt mal 2 Dutzend zusätzliche Chancen gefunden zu werden. Haben oder nicht haben.
 

mrBrown

Super-Moderator
Mitarbeiter
Mit SEO kenne ich mich ziemich aus, z.B. kommt meine Website bei dem Google-Testtool https://pagespeed.web.dev/?hl=de bei allen 4 Indikatoren auf 100%.

Das erwähne ich an dieser Stelle nur, weil dasselbe Tool für die von mir bereits als Beispiel genannte String-Javadoc-Seite ( https://docs.oracle.com/javase/8/docs/api/java/lang/String.html ) recht viele Mängel meldet. Die Seite ist mit dem Standard-Javadoc-Tool erstellt. Darum meine Frage nach einem Doclet, welches eben auf SEO einen Schwerpunkt hat.
Hast du das denn mal über dein eigenes Javadoc laufen lassen? Dein Beispiel ist immerhin 10 Jahre alt und dazu noch von Oracle gehostet, mit entsprechendem Javascript für z.B. Cookies und Tracking und schlecht konfiguriertem Webserver, das zieht Performance runter.

Standard-Javadoc + vernünftiger Webserver dürfte schon nah an 100% sein.
 

inflamer

Bekanntes Mitglied
Du hast absolut recht! Die neuen Docs "bringen's" tatsächlich.

Wald vor lauter Bäumen und so... 😯😊

"Leistung" und "SEO" werden auf Anhieb mit 100 bewertet. "Barrierefreiheit" und "Best Practices" haben 97 respektive 96, wobei beides durch eine einfache Manipulation an der CSS-Datei leicht auf ebenfalls 100 zu bringen sein dürfte. (Unter anderem besteht ein mangelnder Kontrast bei der Farbe der Textlinks - man konnte es bei dem blassen Hellblau ja schon ahnen, na ja...)

Ich wäre nie drauf gekommen, dass sie sich die Mühe gemacht haben, den HTML-Code zu optimieren, zumal optisch zwischen den 10 Jahre alten Docs und den aktuellen kein Unterschied feststellbar zu sein scheint.

Vielen Dank! Damit ist ein größeres Problem gelöst, ich war schon ein bisschen ratlos.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
MiMa Was sollte man ins JavaDoc implementieren?? Allgemeine Java-Themen 17
K JDK installieren JavaDoc hinzufügen Allgemeine Java-Themen 10
R Probleme mit Javadoc Allgemeine Java-Themen 2
V Javadoc-Tags Allgemeine Java-Themen 2
S Javadoc hört einfach auf Allgemeine Java-Themen 4
W JavaDoc Runtime-Exceptions: Wie sinnvoll anzeigen? Allgemeine Java-Themen 14
S javadoc java.lang.NullPointerException Allgemeine Java-Themen 2
D Javadoc - API-Dokumentation Allgemeine Java-Themen 2
J Eclipse Javadoc mit Eclipse erstellen Allgemeine Java-Themen 10
P javadoc als pdf Allgemeine Java-Themen 3
B javadoc, 2 sprachig Allgemeine Java-Themen 3
S Javadoc 3d einbinden macht probleme Allgemeine Java-Themen 10
DEvent Wieso ist Javadoc mit Html Tags? Allgemeine Java-Themen 47
X Javadoc Allgemeine Java-Themen 10
hdi Javadoc Comments: IllegalArgumentException deklarieren? Allgemeine Java-Themen 3
J Eclipse JavaDoc Template Allgemeine Java-Themen 16
P JavaDoc und Backslashes: "Invalid unicode" Allgemeine Java-Themen 3
C eine eigene Javadoc erstelen Allgemeine Java-Themen 3
S JavaDoc aus .class Datei extrahieren Allgemeine Java-Themen 5
M Javadoc | Javadoc Eintrag des verlinkten Element einbetten? Allgemeine Java-Themen 4
M Ant & javadoc-Task Allgemeine Java-Themen 1
G JavaDoc: Spezielle Beschreibung nur in Method Detail Allgemeine Java-Themen 5
Schandro Annotation vs Javadoc bei Konstanten Allgemeine Java-Themen 2
G Javadoc Sichtbarkeiten Allgemeine Java-Themen 3
B JavaDoc auf deutsch? Allgemeine Java-Themen 8
G javadoc fehler bei rawtypes Allgemeine Java-Themen 3
S javadoc inheritDoc funktioniert nicht Allgemeine Java-Themen 6
D javadoc interface + implementation + @overrides Allgemeine Java-Themen 16
S Javadoc einbinden Allgemeine Java-Themen 8
T JAR mit embedded Source/JavaDoc? Allgemeine Java-Themen 8
H Frage zu JavaDoc Allgemeine Java-Themen 5
V javadoc mergen / aus mehreren eclipse plugins ein javadoc Allgemeine Java-Themen 3
T JavaDoc Allgemeine Java-Themen 2
G Javadoc generiert keine Links zu java.lang Klassen? Allgemeine Java-Themen 4
G Bilder in javadoc einbinden Allgemeine Java-Themen 5
Y Javadoc - Wie Parameter ansprechen bei Methodenkommentar Allgemeine Java-Themen 2
F Javadoc: @value tag nicht für private fields? Allgemeine Java-Themen 11
G Javadoc Zeilenumbruch Allgemeine Java-Themen 2
N Javadoc in Deutsch? Allgemeine Java-Themen 9
@ Javadoc: Kurzbeschreibung Packages Allgemeine Java-Themen 10
F Linguistische Fragen zu Javadoc bzw. Englisch Allgemeine Java-Themen 4
padde479 javadoc.exe Eclipse Allgemeine Java-Themen 3
G javadoc macht probleme Allgemeine Java-Themen 2
T Konstruktoren werden nicht in Javadoc angezeigt Allgemeine Java-Themen 2
T Über Javadoc hinausgehende Doku? Allgemeine Java-Themen 4
M Wie lädt Eclipse die Javadoc Allgemeine Java-Themen 14
K Javadoc, was gehört rein? Allgemeine Java-Themen 10
Redfrettchen Javadoc unter Eclipse Allgemeine Java-Themen 2
T Javadoc deutsch? Allgemeine Java-Themen 5
G CSS für Javadoc Allgemeine Java-Themen 2
C javadoc Allgemeine Java-Themen 4
P Javadoc -> Autmatisiertes @version Tag Allgemeine Java-Themen 6
S javadoc: package problem Allgemeine Java-Themen 3
A Javadoc erzeugen Allgemeine Java-Themen 4
G javadoc, pakete Allgemeine Java-Themen 3
M JavaDoc per Batch? Allgemeine Java-Themen 7
I Probleme mit Javadoc (5.0 RC) Allgemeine Java-Themen 6
B Wie sehen gute JavaDoc-Kommentare aus? Allgemeine Java-Themen 10
V Javadoc ertellt keine korrekten links Allgemeine Java-Themen 3
chik JavaDoc als PDF oder RTF Allgemeine Java-Themen 3
M Java – Warum kann ich plötzlich bei Android Studio Grafische Benutzeroberflächen mit der Maus gestalten? Allgemeine Java-Themen 5
raptorrs Klassenübergreifendes Eventhandling, wie gestalten? Allgemeine Java-Themen 2
C Hostzugriff universal austauschbar gestalten Allgemeine Java-Themen 4
M java-doc: @return mehrzeilig gestalten Allgemeine Java-Themen 3
G Gui wie gestalten? Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben