Vous aimez ce que vous lisez sur ce blog ?
Envie d'aller plus loin avec véritable formation d'expertise en Java ?
Venez suivre ma formation Masterclasse Expertise Java !

"Même un développeur experimenté a besoin de continuer à apprendre. Et dans cette formation... j'ai appris beaucoup !" - A.G., Java Champion

Sessions intra-entreprises sur demande : contact[at]mokatech.net.
Inscrivez-vous vite !

Une astuce pour rendre la javadoc plus pratique

La Javadoc officielle est très bien faite, mais la présentation des packages sous la forme d'une interminable liste alphabétique n'est pas très ergonomique. En pratique, on se sert surtout de java.lang, java.util et ses sous-packages, un peu de java.io... et rarement des autres. Alors pourquoi ne pas les mettre en avant ?

En attendant qu'Oracle se décide à intégrer des fonctions de recherche ou un système de favoris au doclet standard, j'ai fini par hacker manuellement la javadoc afin de faciliter l'accès aux packages qui m'intéressent.

Après avoir téléchargé la javadoc localement, j'ai simplement réordonné la liste des liens présente dans le fichier api/overview-frame.html.

(...)
<h2 title="Packages">Packages</h2>
<ul title="Packages">
<li><a href="java/lang/package-frame.html" target="packageFrame">java.lang</a></li>
<li><a href="java/lang/reflect/package-frame.html" target="packageFrame">java.lang.reflect</a></li>
<li><a href="java/io/package-frame.html" target="packageFrame">java.io</a></li>
<li><a href="java/text/package-frame.html" target="packageFrame">java.text</a></li>
<li><a href="java/util/package-frame.html" target="packageFrame">java.util</a></li>
<li><a href="java/util/concurrent/package-frame.html" target="packageFrame">java.util.concurrent</a></li>
<li><a href="java/util/concurrent/atomic/package-frame.html" target="packageFrame">java.util.concurrent.atomic</a></li>
<li><a href="java/util/concurrent/locks/package-frame.html" target="packageFrame">java.util.concurrent.locks</a></li>
<li><a href="java/util/function/package-frame.html" target="packageFrame">java.util.function</a></li>
<li><a href="java/util/regex/package-frame.html" target="packageFrame">java.util.regex</a></li>
<li><a href="java/util/stream/package-frame.html" target="packageFrame">java.util.stream</a></li>
<li><hr/></li>
<li><a href="java/applet/package-frame.html" target="packageFrame">java.applet</a></li>
<li><a href="java/awt/package-frame.html" target="packageFrame">java.awt</a></li>
<li><a href="java/awt/color/package-frame.html" target="packageFrame">java.awt.color</a></li>
<li><a href="java/awt/datatransfer/package-frame.html" target="packageFrame">java.awt.datatransfer</a></li>
(...)

Le résultat est le suivant :

Selection_001.png


Après une semaine d'utilisation intensive, je confirme : c'est réellement plus pratique !


Commentaires

1. Le lundi 9 mars 2015, 15:07 par Tom

Le script "Javadoc Search Frame" est vraiment sympa pour avoir une recherche instantanée dans la liste des packages.

C'est un userscript pour Greasemonkey :
https://greasyfork.org/en/scripts/3...

Apparemment, dispo directement sous Chrome :
https://chrome.google.com/webstore/...

2. Le lundi 9 mars 2015, 16:43 par Sylvain

Tiens, ça doit faire des années que je n'ai pas utilisé la Javadoc sous ce format, je me repose toujours sur mon IDE. Maintenant, si je devais enrichir les pages Javadoc, j'aurais tendance à privilégier un script JS sur le browser (avec Greasemonkey / Tampermonkey), ca me semble plus flexible et pérenne, car tu peux l'appliquer à n'importe quelle Javadoc locale ou en ligne.

3. Le samedi 2 mai 2015, 12:02 par Faylixe

En fait rien que d'avoir une vision hiearchique serait beaucoup plus simple, comme sous eclipse.

Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.