L'analisi statica viene eseguita nel progetto corrente solo per il codice dell'applicazione. Le librerie e i loro codici sorgente non vengono analizzati.
CODESYS Static Analysis vi aiuta durante l'implementazione per scrivere codice migliore e più leggibile e per identificare parti di programma in conflitto o non supportate. In particolare, vengono rivelate le potenziali fonti di errore. Ad esempio, vengono identificate le posizioni in cui è ancora presente il codice di test. Oppure vengono trovati dei puntatori che non vengono controllati per 0 prima di essere dereferenziati. Oppure (con la regola SA0119) si analizzano le posizioni in cui si usa l'orientamento agli oggetti e si portano in un altro ambiente di sviluppo, che non supporta l'orientamento agli oggetti, rendendolo così impossibile. Di conseguenza, è possibile garantire la portabilità del codice.
Per gli errori segnalati dall'analisi statica in base alle informazioni di precompilazione, è disponibile un supporto per la gestione immediata degli errori ("Quickfix"). Ciò consente di individuare e correggere rapidamente i punti del codice segnalati durante l'analisi.
Per migliorare la leggibilità del codice sorgente, è possibile definire convenzioni di denominazione e verificarne la conformità.
Inoltre, per valutare la qualità del codice, è possibile visualizzare le metriche determinate dal codice sorgente. Tra gli esempi si possono citare la metrica McCabe come misura della testabilità del codice o la complessità cognitiva come misura della leggibilità e della manutenibilità del codice sorgente. L'analisi del flusso di dati eseguita nell'analisi statica si basa sul principio della propagazione costante.
Esempio di applicazione
Esempio di applicazione
Lo strumento Pro Static Analysis può essere utilizzato per controllare il codice sorgente durante la programmazione o per scopi di debug, al fine di identificare eventuali punti deboli del codice. L'uso e i vantaggi dello strumento Pro Static Analysis sono descritti nell'esempio di applicazione ⮫ Pro Static Analysis.
-
Con il comando di menu Crea → Esegui analisi statica, si attiva esplicitamente l'analisi statica.
-
Nella finestra di dialogo Impostazioni, si attiva un'analisi statica che viene eseguita automaticamente dopo ogni compilazione del codice.
-
Si usano le dichiarazioni pragma per escludere singole parti o blocchi di codice dall'analisi.
-
Nella finestra di dialogo Regole è possibile scoprire quali regole sono configurate, come vengono attivate e quando vengono eseguiti i controlli sulla rispettiva regola. Qui si attivano le regole rilevanti per l'utente.
-
Nella finestra di dialogo Convenzioni di denominazione, si assegna un prefisso a ciascun tipo di dati, come poi ci si aspetta nelle dichiarazioni. Sono riportate le deviazioni.
-
Nelle impostazioni dell'analisi statica: Nella finestra di dialogo Metriche, si attivano le metriche rilevanti per l'utente.
-
Con il comando 'Mostra complessità cognitiva per l'editor corrente', gli incrementi determinati vengono visualizzati riga per riga nell'editor attivo.
-
Il comando 'Mostra i valori della propagazione costante per l'editor corrente' analizza in dettaglio il flusso di dati nell'editor attivo e lo visualizza percorso per percorso. In base a ciò, è possibile apportare miglioramenti al codice.