Implizite oder explizite Ausführung

Was aber, wenn gefundene „Stinkestellen“ aufgrund einer bestimmten Regel an manchen Stellen sinnvoll sind, an anderen jedoch nicht? In diesen Fällen helfen spezielle Pragma-Anweisungen. Damit kann der Anwender den betreffenden Quellcode ähnlich wie HTML-Tags umschließen und eine oder mehrere einzelne Regelprüfungen für diese Stellen ausklammern. Ein solches Vorgehen ist besonders dann sinnvoll, wenn es sich um gewollte Abweichungen handelt, die aber nur an bestimmten Stellen zulässig sind. Diese Pragmas sind nur für die statische Code-Analyse relevant, in der sie gesetzt wurden. Sie haben keine Auswirkungen auf den finalen Applikationscode.

Auch Namenskonventionen und Codierrichtlinien lassen sich explizit durch Codesys Static Analysis überprüfen. Der Anwender definiert dazu Präfixe, mit denen Variablen, Programmbausteine oder benutzerdefinierte Datentypen gekennzeichnet sein müssen. Darüber hinaus kann er verbotene Symbolnamen angeben, auf die dann ebenfalls geprüft wird. Im Rahmen des Prüflaufs werden solche Abweichungen im Meldungsfenster angezeigt.

Statistische Kennzahlen zur Code-Qualität

Codesys Static Analysis bietet Applikationsentwicklern Kennzahlen, die ein Maß für die Qualität des erstellten Codes darstellen. Zur Verfügung stehen klassische Erhebungsmethoden wie die „McCabe"-Metrik zur Bestimmung der Komplexität von Softwaremodulen. Daneben können weitere Kennzahlen automatisch ermittelt werden, zum Beispiel für die Verschachtelungstiefe, die Anzahl von Anweisungen in den Bausteinen oder die Prozentzahl von Anweisungen mit hinterlegten Kommentaren. Alle diese Metriken dienen dazu, die Lesbarkeit und Wartbarkeit des Codes zu erhöhen. Es kann für den Anwender sinnvoll sein, solche Werte in einem bestimmten Bereich zu halten. In Codesys Static Analysis lassen sich dafür Grenzwerte angeben und mithilfe eines sogenannten Kiviat-Diagramms die Einhaltung interessanter Grenzwerte grafisch anzeigen.

 

4 / 5