Da 2-3 mesi ho un'idea che mi frulla per la testa
relativamente all'analisi delle dipendenze tra assembly e tra tipi. In giro non
c'è molto che faccia questo tipo di lavoro, fatta eccezione per NDepend che, quando
pronto (ora è RC1), sarà un gran tool ma sarà anche a pagamento, costerà intorno
ai 300$ a licenza. Sarebbero soldi assolutamente ben spesi, ma potrebbero
esistere scenari dove un "motore" di analisi delle dipendenze e più in generale
del codice IL potrebbe essere interessante anche per scopi non direttamente
correlati alle metriche e al controllo della qualità del codice. Penso per
esempio ad un "auto-wiki", un aggeggio in grado di analizzare un set di assembly
e che possa da essi generare un wiki per documentare o monitorare iterazioni a
partire da un grafo di navigazione "preconfezionato". In generale l'idea è che
questo motore possa essere usato con facilità in ambienti dove si fa uso di
continuous integration e non si ha un gran budget a disposizione... come
il mio
Nelle ultime settimane ho iniziato a scrivere questo "motorino", con l'idea
di avere un'architettura pluggabile a cui aggiungere moduli di analisi in modo
semplice. Ad oggi la parte di analisi dell'IL si basa su un set di sorgenti C#
che ho trovato qui, ma sto valutando di passare a Cecil. La
parte di analisi e di costruzione dei "grafi" delle dipendenze è a buon punto,
ora vorrei scrivere qualche plugin di analisi interessante, per esempio per
calcolare metriche sulle dipendenze afferenti/efferenti, generare il grafico stability/abstractness, generare l'auto-wiki descritto
sopra. Spero di arrivare presto (3-4 settimane) ad una versione
considerabile "beta" e metterlo da qualche parte tipo CodePlex. Se qualcuno di
voi volesse darmi una mano (ammesso che io riesca a scrivere qualcosa di decente
) o avesse delle idee faccia un fischio,
ok?
Bon, ormai l'ho detto, adesso mi tocca anche farlo... in realtà ho
scritto questo post quasi per non avere più scuse, e per obbligarmi a trovare il
tempo per andare avanti con... con... come lo chiamo???
powered by IMHO 1.3
posted @ martedì 9 gennaio 2007 00:24