CodeCity ha una visualizzazione molto bella di un codebase; usa la metafora di una città che ha molto senso, oltre a mettere in evidenza gli odori del codice utilmente.
ndepend.com è abbastanza buono per una panoramica.
Atomiq ha una bella visualizzazione per la duplicazione. Analizza il tuo codice base e lo visualizza tramite una ruota, in cui le duplicazioni sono rappresentate dai raggi nella ruota e puoi passare sopra a ciascuna per vedere la differenza affiancata.
Nitriq ha un tipo di elemento LinqToCode per rafforzare i vincoli di qualità. È possibile eseguire queste regole dalla riga di comando come parte di un processo di generazione.
ReSharper's le funzioni di navigazione sono preziose per scoprire cosa utilizza cosa. Find-Usages è terribilmente utile. Per esplorare una base di codice, Alt + F7 è tuo amico, dal momento che manterrà aperta una cronologia delle query che hai eseguito, in modo che tu possa saltare avanti e indietro per mantenere il tuo posto.
Visual Studio mantiene una registrazione delle posizioni del cursore/punti dell'editor e ha ctrl + - e ctrl + shift + - per spostare il cursore avanti e indietro tra questi.
È possibile inserire note a se stessi se si decide un commento che è convenzionale (ad esempio // NOTA: blah) e quindi utilizzare ReSharper TODO Explorer per trovare tutti i commenti (e altri motivi che è possibile definire), quindi navigare a loro. Per esempio, lo usiamo per le revisioni del codice al momento.
Visual Studio (almeno, la Professional Edition) può generare un diagramma di classe; selezionare più file, quindi fare clic con il tasto destro e creare un diagramma di classe. Trovo che questi più utili come scarabocchiare rispetto a un artefatto per tenersi aggiornati e in sincronia con il codebase, però, francamente. Vi dirà l'ereditarietà, ma non mostrerà l'interfaccia-implementazioni in modo molto chiaro e non tenterà nemmeno di mostrare collettivamente o composti.
fonte
2010-07-19 09:23:55
+1 Dovresti aggiungere ulteriori informazioni alla tua risposta e sarebbe molto meglio :). – Henrik
+1 per NDepend; mostrerà la struttura ad ogni livello (assiemi, classi, metodi o qualsiasi combinazione). –
@ Henrik se hai aggiunto ulteriori informazioni al tuo commento su come aggiungere ulteriori informazioni alla mia risposta per renderlo migliore, sarebbe molto meglio :) :-P –