Unterschied zwischen einen Syntaxfehler und ein Semantikfehler

November 8

Unterschied zwischen einen Syntaxfehler und ein Semantikfehler

Programmierung kann eine komplexe Aufgabe sein. Kein Programmierer schreibt perfekt Code zum ersten Mal oder jedes Mal. Aus diesem Grund ist das finden und beheben die Fehler in Ihrem Code erlernen ein wichtiges Element in jedem Programmer Stelle. Programmierfehler sind auch unterschiedlich, so die Techniken zu lokalisieren und zu behandeln, müssen angepasst werden. Syntax-Fehler auftreten, wenn Code fehlschlägt, die grammatischen Regeln einer Programmiersprache richtig zu beobachten. Semantische Fehler auftreten, wenn Code logische Fehler enthält.

Syntax

Programmiersprachen, wie natürliche Sprachen, haben jeweils ihren eigenen Satz von Grammatikregeln. Diese Regeln geben die Textzeichen und Strukturen, die Programmierer verwenden können, um ihre Anwendungen zu liefern. In den meisten Fällen wird ein Abschnitt der Programmiercode alphabetische und numerische Zeichen sowie Interpunktionszeichen enthalten. Diese Symbole haben oft eine besondere Bedeutung innerhalb einer Sprache. Der folgende PHP-Beispielcode veranschaulicht eine richtige Aussage:$some_name = "Martha";

Die folgende geänderte Fassung enthält zwei Syntaxfehler:SOME_NAME = "Martha;

Der Variablenname wird nicht korrekt angezeigt und der schließenden Satz von Anführungszeichen für den Wert der Variablen fehlt.

Logik

Wenn Entwickler den Programmcode zu einen bestimmten Bereich der Anwendungsfunktionalität implementieren erstellen, müssen sie Aufgaben für den Computer durchzuführen, zu skizzieren, using-Anweisungen. Diese Aussagen werden oft in komplexe Kontrollstrukturen wie Schleifen und Bedingungen angezeigt. Wenn Kontrollstrukturen und bestimmte semantische oder logische Strukturen sind Störungen üblich. Der folgende JavaScript-Beispielcode demonstriert ein Array erstellen, dann zugreifen auf ein Element:Var MyPals = ["Bob", "Joe", "Sam"];Document.Write(myPals[0]);

Dieser Code schreibt das erste Arrayelement in die Web-Seite. Die folgende geänderte Fassung enthält ein Semantikfehler:Var MyPals = ["Bob", "Joe", "Sam"];Document.Write(myPals[3]);

Dieser Code versucht, aus der Position eines Elements lesen, die außerhalb des Arrays Bereichs liegt. Das letzte Element im Array befindet sich an Position zwei, so dass dieser Code das Programm zum Absturz führen kann.

Entwicklung

Je nach Entwicklungsverfahren, die ein Programmierer verwendet möglicherweise einige Fehler leichter als andere während der Kodierung identifizieren. Zum Beispiel bei Verwendung einer integrierten Entwicklungsumgebung oder einem Code-Editor, der Syntax hervorgehoben werden einige Fehler sofort angezeigt. Beim Schreiben von Java-Anwendungen in einer IDE wie Eclipse können Programmierer nicht kompilieren und Ausführen von Code, der Syntax-Fehler enthält, die in der Schnittstelle auch sichtlich hervorgehoben werden. Allerdings gehen semantische Fehler oft unbemerkt, bis der Code ausgeführt wird, wenn sie nicht richtig funktionieren oder Programme zum Absturz bringen führen können.

Testen

Syntax-Fehler während des Entwicklungsprozesses in vielen Fällen erkannt werden, aber dies hängt von der Plattform im Einsatz. Zum Beispiel als Entwicklung einer Website mithilfe von PHP-Skripten-Entwickler können Code mit Syntax-Fehler auf Webseiten hochladen. Wenn diese Skripts innerhalb des Web-Browsers abgerufen werden möglicherweise Fehlermeldungen angezeigt werden. Das Testverfahren für jede Anwendung soll um semantische Fehler zu identifizieren, die nur angezeigt werden kann, wenn Entwickler das Verhalten einer Anwendung überprüfen während der Ausführung.