Noch nicht registriert ? Erstellen Sie eine Overblog !

Mein Blog erstellen

Wie arbeitet ein "Code Analyzer"?

Jeder der programmiert, kennt das Problem. Man ist fertig und möchte das Programm kompilieren. Doch immer wieder bricht der Vorgang ab. Irgendwo in den tausenden Zeilen von Code hat sich ein Fehler versteckt, der erst mühsam herausgefunden werden muss. Unterstützung erhält man durch Code Analyzer.

Was ist Code-Analyse

Programmierer müssen bei ihrer Arbeit vor allem darauf achten, dass der Quelltext keine Fehler enthält. Ansonsten funktioniert das Programm später nicht wie es soll oder kann erst gar nicht kompiliert werden. Gerade komplexe Sprachen wie der C# Source Code sind nicht auf den ersten Blick zu verstehen. Muss man nun jede Zeile einzeln nach dem Fehler absuchen, hat man eine Mammutaufgabe vor sich, die schnell zu einer Suche nach der Nadel im Heuhaufen mutiert. Durch Code Analyse kann man sich aber in vielen Fällen diese Arbeit sparen und sie durch eines der Analyse Tools erledigen lassen. Aber prüft den nicht auch der Compiler nach Fehlern im Quellcode, könnte man meinen.
Doch, auch dieser nimmt einer Fehlersuche vor. Allerdings beschränkt sich diese Prüfung auf einfache Analysen. Mit dem Softwaretestverfahren einer statischen Analyse kann er meist nicht mithalten.

Worauf wird der Quelltext getestet

Durch den Code Analyzer wird der Quelltext auf ganz bestimmte Sorten von Fehlern untersucht, noch bevor eine Kompilierung statt findet. Es handelt sich also um ein so genanntes White-Box-Testverfahren, da ein Blick in den Quelltext erforderlich ist und nicht nur rein funktionale Test durchgeführt werden.
Im Rahmen der Static Analysis werden sowohl simple Coding-Standards geprüft, aber auch Typumwandlungen oder Bereichsgrenzen. Damit entfällt das manuelle Überprüfen des Quelltexts durch einen Entwickler, da viele Fehler im Inhalt so durch die Software automatisch aufgedeckt werden. Das erleichtert die Arbeit und natürlich den Zeitbedarf für ein Projekt enorm. Auch dient es der Sicherheit, da so Speicherlecks und Pufferüberläufe besser aufgespürt werden können. Ein einfaches Beispiel: Schlampigkeitsfehlern beim Programmieren decken diese Werkzeuge schonungslos auf, während der Compiler nur eine Warnung ausgibt.

Der Klassiker: Lint

Ein Klassiker zur statischen Quelltextanalyse ist das Programm Lint. Bereits seit 1979 ist es auf dem Markt. Damit dürfte es zu den ältersten Softwareprodukten gehören, die immer noch genutzt werden. Auch wenn heute viele Teile der Prüfungen aus Lint in den Compiler eingearbeitet wurden, ist dieses Werkzeug nicht mehr wegzudenken.
Umgangssprachlich verwenden Programmierer daher auch heute noch gerne den Ausdruck "linten", wenn sie eine statische Prüfung des Quelltexts durchführen.

Fazit

Komplexe Programme fordern jede Menge Code-Zeilen. Ohne den Einsatz von Programmen wie Lint bzw. der Umsetzungen im Compiler ist es oft nicht denkbar, einen entsprechend hoch optimierten Code zustande zu bekommen.

Gleiche Kategorie Artikel Computer

Mini USB Kabel: Alles, was man darüber wissen sollte

Mini usb kabel: alles, was man darüber wissen sollte

Der usb-anschluss hat sich inzwischen zum absoluten standard entwickelt, wenn es darum geht, dass elektronische geräte an einen pc oder ein notebook angeschlossen werden. gerade bei mobilen geräten hat sich der mini-usb-port stark verbreitet. wo man ihn findet und was die schnittstelle alles kann, zeigt der artikel.
Trojaner on Board: Was kann man dagegen tun?

Trojaner on board: was kann man dagegen tun?

Jeder pc-anwender weiß, dass im internet zahlreiche gefahren für die sicherheit der eigenen dateien lauern. doch nicht immer kann man sich dagegen schützen. wie man einen trojaner wieder aus dem system bekommt und man die sicherheit am pc verbessern kann, zeigt der artikel.
Samsung Laserdrucker: Wie gut sind sie?

Samsung laserdrucker: wie gut sind sie?

Laserdrucker vom hersteller samsung sind relativ günstig und bieten eine recht hohe qualität. der handel bietet eine sehr große auswahl an verschiedenen modellen, besonders beliebt ist die samsung ml-serie. die drucker sind als farblaser oder auch als günstiger sw-laser vorhanden und bedienen jede art von bedarf.