Suche Programm um mir Diagrame erstellen zu lassen und...

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

Donnerstag 7. Dezember 2006, 16:52

...Metrik anzuzeigen.

Da es mit Eric4 momentan nicht so gut ist mit der Codeverfolständigung bleibe ich erstmal wider bei PyDev :(

Nu sind da ein par sehr gute Features die ich gerne als externes Programm hätte.

1.
Das erste Feature ist das ich mir vom Python-Sourcefile/Package ein Klassendiagram als Bild generieren lassen kann. Da kommt so ein Fenster wo ich alle Kästchen zurechtrücken und es dann abspeichern kann. Ich muss da nichts weiter eintragen (Name der Klassen, Atribute, etc), denn das macht Eric selbständig. Gibt es ein Programm das mir aus Python Sourcefiles/Packages auch sowas erzeugt? :)

2.
Dann gibt es in Eric so einen Eintrag der sich "Zeige->Quelltext Metrik" nennt. Da erscheint dan ein Fenster das mir anzeigt aus wie vielen Zeilen der Quelltext bestehe und mir anzeigt wie viele Zeilen davon Kommentare, Leerzeilen, etc sind. Gibt es sowas auch für Python als externes Tool?

lg
BlackJack

Donnerstag 7. Dezember 2006, 17:49

XtraNine hat geschrieben:2.
Dann gibt es in Eric so einen Eintrag der sich "Zeige->Quelltext Metrik" nennt. Da erscheint dan ein Fenster das mir anzeigt aus wie vielen Zeilen der Quelltext bestehe und mir anzeigt wie viele Zeilen davon Kommentare, Leerzeilen, etc sind. Gibt es sowas auch für Python als externes Tool?
Pylint spuckt folgendes aus:

Code: Alles auswählen

Raw metrics
-----------

+----------+-------+------+---------+-----------+
|type      |number |%     |previous |difference |
+==========+=======+======+=========+===========+
|code      |50     |90.91 |39       |+11.00     |
+----------+-------+------+---------+-----------+
|docstring |0      |0.00  |0        |=          |
+----------+-------+------+---------+-----------+
|comment   |0      |0.00  |11       |-11.00     |
+----------+-------+------+---------+-----------+
|empty     |5      |9.09  |6        |-1.00      |
+----------+-------+------+---------+-----------+



Statistics by type
------------------

+---------+-------+-----------+-----------+------------+---------+
|type     |number |old number |difference |%documented |%badname |
+=========+=======+===========+===========+============+=========+
|module   |1      |1          |=          |0.00        |0.00     |
+---------+-------+-----------+-----------+------------+---------+
|class    |0      |0          |=          |0.00        |0.00     |
+---------+-------+-----------+-----------+------------+---------+
|method   |0      |0          |=          |0.00        |0.00     |
+---------+-------+-----------+-----------+------------+---------+
|function |4      |1          |+3.00      |0.00        |0.00     |
+---------+-------+-----------+-----------+------------+---------+
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Donnerstag 7. Dezember 2006, 17:50

ad 2) Da kannst Du vielleicht pylint nehmen. Allerdings möchte ich warnen: So eine Metrik hilft nur weiter, wenn man vorher (!) überlegt, was man wissen möchte und sich hinterher nicht allzu sklavisch an die Zahlen kettet.

Gruß,
Christian
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

Donnerstag 7. Dezember 2006, 18:25

Pylint meinte ich nicht. Die ausgaben sind immer ein wenig Strange ^^ Eric gibt mir als Zahl an wie viele Kommentare vorhanden sind und nicht in %. Auch die "number, %, prev, diff" finde ich für mich sehr nichtssagend.

So was würde ich gut finden:
Bild[/img]

lg

P.S.: Für Diagramme gibt es kein spezielles Tool für Python ohne selber zeichnen zu müssen?
BlackJack

Donnerstag 7. Dezember 2006, 19:29

XtraNine hat geschrieben:Pylint meinte ich nicht.
Du fragtest ob es ein Programm gibt, das diese Informationen ausgibt.
Die ausgaben sind immer ein wenig Strange ^^ Eric gibt mir als Zahl an wie viele Kommentare vorhanden sind und nicht in %. Auch die "number, %, prev, diff" finde ich für mich sehr nichtssagend.
`number` ist die Anzahl der Zeilen. Genau das was Du haben wolltest. Die Prozentangabe ist ganz nützlich um zu sehen wie denn so die Verhältnisse zwischen Code und Kommentaren aussehen. Und die beiden letzten geben an, wieviele Zeilen (absolut) es beim letzten Pylint-Lauf waren und um wieviele Zeilen es sich verändert hat.

Um an CM anzuknüpfen: Was willst Du mit den Zahlen denn anfangen?
P.S.: Für Diagramme gibt es kein spezielles Tool für Python ohne selber zeichnen zu müssen?
Das in `eric`. Boa Construktor hat auch so eine UML-Ansicht. Ich habe mal irgendwo ein Skript gesehen, was XML-Dateien für Umbrello erzeugt und von Logilab gibt's ein nicht mehr gepflegtes Paket das Daten für ArgoUML erzeugt. `pyreverse` heisst das glaube ich. Die Python-Unterstützung in Doxygen ist nicht so toll gewesen als ich das letzte mal nachgesehen habe, aber das wäre vielleicht auch eine Option.

Ansonsten: Selber schreiben. Ist'n schönes Projekt. :-)
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Donnerstag 7. Dezember 2006, 19:40

XtraNine hat geschrieben:Pylint meinte ich nicht. Die ausgaben sind immer ein wenig Strange ^^ Eric gibt mir als Zahl an wie viele Kommentare vorhanden sind und nicht in %. Auch die "number, %, prev, diff" finde ich für mich sehr nichtssagend.
codelines.rb? Beinhaltet seltsame reguläre Ausdrücke, unterstützt dafür Python und Ruby gleichzeituig (und ineinandergemischt, wer auch immer solche Quelltexte hat). Außerdem ist es sehr kurz.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
birkenfeld
Python-Forum Veteran
Beiträge: 1603
Registriert: Montag 20. März 2006, 15:29
Wohnort: Die aufstrebende Universitätsstadt bei München

Donnerstag 7. Dezember 2006, 19:49

Da lob ich mir sloccount. Das zählt nicht nur die Zeilen Code, sondern sagt mir auch noch wieviel ich dafür bekommen hätte, wenn ich es für eine Firma statt die FOSS-Gemeinde geschrieben hätte.

(Stimmt natürlich "nicht ganz".)
Dann lieber noch Vim 7 als Windows 7.

http://pythonic.pocoo.org/
Antworten