DISABILITARE ADBLOCK

ADBlock sta bloccando alcuni contenuti del sito

ADBlock errore
risultati trovati: 

DOMANDA

Quali strumenti sono disponibili per l'analisi statica rispetto al codice C #? Conosco FxCop e StyleCop. Ce ne sono altri? Ho incontrato NStatic in precedenza, ma è stato in sviluppo per quello che sembra per sempre - sembra piuttosto lucido da quel poco che ne ho visto, quindi sarebbe bello se vedesse mai la luce del giorno.

Sulla stessa linea (questo è principalmente il mio interesse per l'analisi statica), anche gli strumenti per testare il codice per problemi di multithreading (deadlock, condizioni di gara, ecc.) sembrano un po 'scarsi. Typemock Racer è appena spuntato, quindi lo guarderò. Qualcosa al di là di questo?

Sono apprezzate le opinioni sulla vita reale sugli strumenti che hai usato.

SOLUZIONE

Strumenti di rilevamento della violazione del codice:

Strumenti per le metriche di qualità:

  • NDepend , ottimo strumento visivo. Utile per metriche del codice, regole, differenze, studi di accoppiamento e dipendenza.
  • Nitriq , gratuito, può facilmente scrivere le tue metriche / vincoli, belle visualizzazioni. Modifica febbraio 2018: i link per il download ora sono morti.
  • RSM Squared , basato sull'analisi della fonte di codice
  • M # C # , utilizzando un'analisi completa di C #
  • SourceMonitor , un vecchio strumento che occasionalmente riceve aggiornamenti
  • Metriche del codice , a Reflector componente aggiuntivo
  • Vil , vecchio strumento che non supporta .NET 2.0. Modifica gennaio 2018: link ora morto

Verifica degli strumenti di stile:

  • StyleCop , strumento Microsoft (eseguito dall'interno di Visual Studio o integrato in un progetto MSBuild). Disponibile anche come estensione per Visual Studio 2015 e C # 6.0
  • Agent Smith , plugin di validazione in stile codice per ReSharper

Rilevamento duplicazioni:

  • Simian , in base al codice sorgente. Funziona con molte lingue.
  • CloneDR , rileva cloni parametrizzati solo sui confini della lingua (gestisce anche molte lingue diverse da C #)
  • Clone Detective un plug-in Visual Studio. (Utilizza ConQAT internamente)
  • Atomiq , basato su codice sorgente, molte lingue, cool " wheel " visualizzazione

Strumenti generali di refactoring

  • ReSharper - Principali funzioni di analisi e refactoring del codice C #

Se ti va lasciaci una tua opinione

L'articolo ti è stato utile ed è tradotto correttamente?

ALTRI SUGGERIMENTI

Lo strumento NDepend è citato come Strumenti per le metriche di qualità ma è piuttosto molto anche uno strumento Rilevazione della violazione del codice . Dichiarazione di non responsabilità: sono uno degli sviluppatori dello strumento

Con NDepend, si può scrivere Regola di codice su query LINQ (ciò che chiamiamo CQLinq) . Più di 200 regole del codice CQLinq sono proposte per impostazione predefinita. Il punto di forza di CQLinq è che è semplice scrivere una regola di codice e ottenere immediatamente risultati. Le strutture sono proposte per sfogliare gli elementi di codice abbinati. Ad esempio:

Regola codice CQLinq

Inoltre, NDepend include molte altre analisi statiche come . Questi includono:

  • Gendarme è un analizzatore statico basato su regole open source (simile a FXCop, ma trova un molti problemi diversi).
  • Clone Detective è un plug-in piacevole per Visual Studio che trova codice duplicato.
  • Anche parlando di Mono, trovo l'atto della compilazione con il compilatore Mono (se il tuo codice è abbastanza indipendente dalla piattaforma per farlo, un obiettivo che potresti voler lottare comunque) trova tonnellate di variabili senza riferimento e altri avvertimenti che Visual Studio manca completamente (anche con il livello di avviso impostato su 4).

Hai visto CAT. NET ?

From the blurb -

  

CAT.NET è uno strumento di analisi del codice binario   che aiuta a identificare varianti comuni di   alcune vulnerabilità prevalenti   che può provocare un attacco comune   vettori come Cross-Site Scripting   (XSS), SQL Injection e XPath   Iniezione.

Ho usato una beta iniziale e mi è sembrato di mostrare alcune cose che vale la pena guardare.

A parte l'eccellente elenco di madgnome, aggiungerei un rilevatore di codice duplicato che si basa sulla riga di comando (ma è gratuito):

http://sourceforge.net/projects/duplo/

Klocwork ha uno strumento di analisi statica per C #: http://www.klocwork.com

Trovo i Metriche del codice e < a href = "http://www.tom-carter.net/" rel = "nofollow noreferrer"> Matrice della struttura delle dipendenze componenti aggiuntivi per Reflector molto utili.

Optimyth Software ha appena lanciato un servizio di analisi statica nel cloud www.checkinginthecloud.com . Basta caricare in modo sicuro il codice per eseguire l'analisi e ottenere i risultati. Nessun problema.

Supporta diverse lingue tra cui C # ulteriori informazioni sono disponibili all'indirizzo wwww.optimyth.com

Axivion Bauhaus Suite è uno strumento di analisi statica che funziona anche con C # ( come C, C ++ e Java).

Fornisce le seguenti funzionalità:

  • Visualizzazione dell'architettura software (comprese le dipendenze)
  • Applicazione delle regole dell'architettura, ad es. stratificazione, sottosistemi, regole di chiamata
  • Rilevamento clone: ??evidenzia copia e incolla (e codice modificato)
  • Rilevamento codice morto
  • Rilevamento ciclo
  • Metriche del software
  • Controlli dello stile del codice

Queste funzionalità possono essere eseguite su base una tantum o come parte di un processo di integrazione continua. I problemi possono essere evidenziati per progetto o per sviluppatore quando il sistema è integrato con un sistema di controllo del codice sorgente.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow