[Python] Documentare Python
Daniele Varrazzo
piro a develer.com
Mer 14 Ott 2009 13:02:50 CEST
On Wed, 14 Oct 2009 12:38:22 +0200, Antonello Mangone
<antonello.mangone a gmail.com> wrote:
> Ciao a tutti, posto una richiesta che spero non sia considerata troppo
> particolare.
> Non so se è fattibile, ma vorrei documentare Python in modo da produrre
dei
> documenti HTML in stile API di Java, PHP ecc ... o altrimenti in altri
> formati, ma comunque qualcosa di statico che può essere ovviamente
> aggiornato in maniera rapida, partendo dai commenti che vengono inseriti
> all'interno delle classi Python e delle funzioni o metodi.
> I commenti di cui parlo sono quelli che iniziano e finiscono con """ e
""",
> che vengono utilizzati da IDE evoluti per fornire documentazione di
classi
> e
> funzioni durante il loro uso.
> Un grosso grazie a chiunque riesca a fornirmi una dritta ... anche solo
> documentazione
Io ho partecipato a Epydoc (http://epydoc.sourceforge.net/), che forse è
stato il più completo progetto per generare le API dal codice Python.
Effettua sia introspezione che parsing del codice Python (in modo da
ottenere materiale sia da docstring che da commenti) e dà la possibilità di
linkare i commenti al codice, produrre grafi di dipendenza o uml e tanto
altro.
Sfortunatamente il progetto non è più tanto attivo: mi sembra che ora il
più attivo tra i progetti simili sia Sphinx (http://sphinx.pocoo.org/) che
è il sistema con cui viene creata la documentazione ufficiale del Python.
Non so che vantaggi abbia rispetto ad altri sistemi... ma se è riuscito a
mandare in pensione il sistema di documentazione precedente basato su
LaTeX, qualcosa di buono deve averlo! :)
Altra documentazione API notevole fatta con Sphinx è quella di Matplotlib
(es. vedi http://matplotlib.sourceforge.net/api/artist_api.html).
Insomma, anche se sono affezionato a Epydoc
(http://epydoc.sourceforge.net/api/epydoc.apidoc.ValueDoc-class.html non è
male, no?) ho paura che il futuro non passi di lì :\
--
Daniele Varrazzo - Develer S.r.l.
http://www.develer.com
Maggiori informazioni sulla lista
Python