Programmeren kan een complexe taak zijn. Geen programmeur schrijft perfecte code de eerste keer of elke keer. Om deze reden is leren vinden en oplossen van de fouten in uw code een belangrijk element in elke programmer's werk. Programmering fouten zijn ook gevarieerd zodat de technieken die worden gebruikt om te zoeken en pakken ze hoeft te worden aangepast om aan te passen. Syntaxisfouten optreden wanneer code niet correct observeren de grammaticale regels van een programmeertaal. Semantische fouten optreden wanneer code Logische fouten bevat.
Syntaxis
Programmeertalen, zoals natuurlijke talen, hebben elk hun eigen set van grammaticale regels. Deze regels geven de teksttekens en structuren die programmeurs gebruiken kunnen om hun toepassingen. In de meeste gevallen zal een gedeelte van de programmacode bevatten alfabetische en numerieke tekens als interpunctie. Deze symbolen hebben vaak een speciale betekenis binnen een taal. De volgende voorbeeldcode voor PHP geeft aan een juiste verklaring:
$some_name = "Martha";De volgende gewijzigde versie bevat twee syntaxisfouten:
some_name = "Martha;Naam van de variabele niet correct is vermeld en de afsluitende set aanhalingstekens moet gebruiken voor de waarde van de variabele ontbreekt.
Logica
Wanneer ontwikkelaars programmacode uit te voeren van een bepaald gebied van functionaliteit maakt, moeten ze een overzicht van taken voor de computer uit te voeren met behulp van verklaringen. Deze uitspraken lijken vaak binnen complexe controlestructuren, met inbegrip van loops en voorwaardelijke instructies. Wanneer met behulp van controle bepaalde semantische of logische structuren zijn fouten gemeenschappelijk. De volgende voorbeeldcode voor JavaScript geeft aan een array maken en vervolgens toegang tot een element:
var myPals = ["bob", "joe", "sam"];
document.write(myPals[0]);Deze code schrijft het eerste element van de matrix in de Web-pagina. De volgende gewijzigde versie bevat een semantische fout:
var myPals = ["bob", "joe", "sam"];
document.write(myPals[3]);Deze code probeert te lezen van de positie van een element dat zich buiten het bereik van de matrix. Het laatste element in de matrix bevindt zich op positie twee zodat deze code kan het programma crasht.
Ontwikkeling van
Afhankelijk van de ontwikkelingspraktijken die een programmeur gebruikt kunnen sommige fouten gemakkelijker dan anderen om te identificeren tijdens het coderingsproces worden. Bijvoorbeeld bij het gebruik van een Integrated Development Environment of een code-editor die syntax benadrukt zal sommige fouten worden onmiddellijk zichtbaar. Bij het schrijven van Java-toepassingen in een IDE zoals Eclipse, zijn programmeurs niet in staat om te compileren en uitvoeren van code die bevat syntaxisfouten die ook zichtbaar binnen de interface zijn gemarkeerd. Echter, semantische fouten vaak onopgemerkt totdat de code wordt uitgevoerd wanneer ze kunnen leiden programma's crashen tot of onjuist functioneren.
Testen
Syntaxisfouten worden gedetecteerd tijdens het ontwikkelingsproces in veel gevallen maar dit is afhankelijk van het platform in gebruik. Bijvoorbeeld wanneer het ontwikkelen van een website met behulp van PHP scripts ontwikkelaars kunnen uploaden van code met syntax-fouten op websites. Wanneer deze scripts worden opgehaald vanuit de webbrowser kunnen ze foutberichten worden weergegeven. Het testproces voor elke toepassing moet bijdragen tot het identificeren van semantische fouten die kunnen worden pas zichtbaar wanneer ontwikkelaars het gedrag van een programma controleert terwijl het draait.