2009-07-22 30 views
7

Vous cherchez un outil:application pour générer diagramme Java hiérarchie de classes

  • Produit un agréable visuellement (non criardes), la hiérarchie graphique orthogonalement structuré
  • Sorties images PNG de haute qualité (300dpi +)
  • Différencie visuellement les classes, les classes abstraites, les interfaces et les types énumérés (de préférence par couleur)
  • Interface utilisateur interactive
  • Permet d'élaguer des packages et/ou des classes individuelles à partir de le diagramme
  • les graines (fichier » Ouvrir) en utilisant un ensemble de:
    • Répertoires
    • fichiers JAR
    • fichiers source individuels
    • classes compilé individuels
  • de Accomplir une analyse entièrement automatique des dépendances de classes
  • recherches CLASSPATH pour résoudre autant de dépendances non satisfaites que possible
  • utilise un seul exécutable
  • est léger (~ 5 Mo) et rapide (charges en moins d'une seconde sur une machine 1.5GHz moyenne)
  • est simple (moins de 10 ans clique pour générer un graphique)
  • est rapide (graphique 100 objets en quelques secondes)
  • est facile à utiliser (interface minimale, axée sur la production graphique)
  • est-OSS ou GPL
  • (en option) produit une hiérarchie call-graph

Outils qui n'accomplir cette tâche comprennent:

  • Doxygen + GraphViz (ou point)
  • Eclipse
  • modeleurs UML
  • Analyse structurale pour Java (ne peut pas analyser les fichiers source)
  • Communauté JUDE (interface d'attente, autogénération inadaptée)
  • In environnements de développement tégré (trop complexe, et utilisent trop de mémoire)

Des idées?

+0

Je serai intéressé si vous trouvez une solution.Les programmes que je connais qui sont capables de faire toutes ces choses ne sont ni open source, ni légers (ni gratuits). – Nick

+0

Lesquelles de ces exigences sont les plus flexibles? Je ne suis pas sûr que vous allez en trouver un qui les rencontre tous. Est-ce qu'un lycéen qui a seulement eu 2 jours de Java a vraiment besoin d'analyser des graphiques avec 10 000 objets? –

+0

votre lien "attrayant visuel" est Page introuvable Malheureusement, la page que vous avez demandée n'a pas été trouvée. –

Répondre

2

Le plugin Netbeans UML couvrira certaines de vos exigences.

  • Produit une hiérarchie graphique visuellement attrayant: une question de goût
  • Rédige des images PNG de haute qualité (300dpi +): Je ne sais pas
  • visuellement différencie des classes, des classes abstraites, interfaces et dénombrées types: oui, il fait comme il utilise UML
  • interface utilisateur interactive: oui
  • Permet la taille des paquets et/ou des classes individuelles du diagramme: oui
  • Seeds (par exemple, File »Open) en utilisant un ensemble de: fonctionner avec NetBeans projets
    • Répertoires
    • fichiers JAR
    • fichiers source individuels
    • classes compilées individuelles
  • Effectue une anale entièrement automatique YSE: peut-être
  • utilise un seul exécutable: pas applicable, il est un plug-in de Netbeans
  • est léger et rapide: comme NetBeans
  • est simple, rapide et facile à utiliser: dépend de l'utilisateur
  • est-OSS ou GPL: Je pense qu'il est OSS, il est certainement libre comme dans une boisson gratuite
  • (en option) génère un hierarc appel graphique hy (en plus d'une hiérarchie de classes): Je ne pense pas que ce soit
+3

Avez-vous lu l'expression "couvrira * quelques * de vos besoins"? –

3

La réponse est probablement « pas de logiciel libre/application gratuite existe ». Pourquoi? Parce que:

  1. La plupart des gens qui veulent un diagramme héritage pour un grand nombre de classes travaillent déjà dans le contexte d'un IDE ou similaire. Par conséquent, les développeurs OSS ne sont pas très motivés à produire un tel outil.
  2. Création automatique de visuels des diagrammes attrayants de grands nombres de classes est presque impossible.

Je vous suggère de relaxer vos exigences. Je veux dire, quel est le problème avec l'utilisation d'un modélisateur IDE ou UML à grande échelle? La mémoire est bon marché. Quel est le problème d'attendre quelques secondes pour charger/exécuter le diagramme? Patience sauterelle! Quel lycéen avec 2 jours de formation va regarder la base du code source avec plus de 10.000 classes ???

+2

Mes points de base sont toujours valables. Vos besoins ne sont susceptibles d'être satisfaits par aucun produit OSS existant. –

+0

maven avec quelques plugins est probablement une meilleure solution. JXR est beaucoup plus utile que les diagrammes. –

3

Il semble que Class Visualizer répond à toutes vos exigences (à l'exception du schéma de sauvegarde au format PNG).

+0

Bien que je ne trouve pas les graphiques visuellement attrayants, et qu'il ne semble pas y avoir d'option de ligne de commande pour exporter automatiquement les diagrammes vers une image, l'outil est assez étendu. Je vous remercie. –

+0

Selon l'auteur http://class-visualizer.net/ est la dernière version du visualizer de classe. La dernière version 0.7.0 ne fonctionne qu'avec Java 7+ –