Tempo fa, ero alla ricerca di un tool per disegnare grafici che rappresentassero le classi e le dipendenze tra i vari componenti nei miei progetti Xcode. Non trovai alcuno strumento automatico. Vi era questo “Graphviz” ma non mi aveva soddisfatto a pieno. L’altro strumento era di una software house texana se non vado errato, di cui non ricordo più il nome, ma che costava ben 400$, mentre la versione demo dello stesso software costava ben 50$. Ma quello che non mi ha spinto a provarlo, è il fatto che il loro sito web sembrava antecedente al 1995. In quell’occasione, dovetti fare tutto a mano, utilizzando OmniGraffle. Fu un incubo.
Schema realizzato in quell’occasione con l’uso di OmniGraffle.
Qualche giorno fa, sono venuto a conoscenza di un nuovo tool realizzato da Kevin Shen che si chiama ObjectGraph, che sfrutta Graphviz, e che permette di disegnare grafi delle dipendenze direttamente da Xcode. In poche parole, fa in un attimo ed in maniera automatica, tutto quello che io ho realizzato in 1-2 giorni di lavoro, con la possibilità che ci fossero anche degli errori.
Con ObjectGraph potete creare grafi delle dipendenze partendo da codice objective-c (non ho testato se funziona anche con swift) direttamente dal menu “Product” di Xcode, dopo averlo installato tramite il package manager Alacatraz.
Più semplice di così…
ObjectGraph-Xcode è disponibile gratuitamente sul repository GitHub dell’autore.
se trascini un progetto xcode sull’icona di omnigraffle viene automaticamente creato il grafo delle classi.
io ho usato uno script python che genera il file graphviz
https://github.com/nst/objc_dep
Hai ragione, ma ricordo che a suo tempo Omnigraffle mi crashava quando trascinavo il progetto Xcode sopra l’icona. Caricava caricava… e si piantava senza andare avanti. Questo con qualsiasi progetto. Forse ora hanno fixato, quindi probabilmente funge! Non conoscevo invece objc_dep. Grazie del suggerimento 😉