Hver programmeringssprog har sit eget sæt af grammatiske regler , fastlæggelse af de syntaks strukturer og vilkår , der kan vises i kode udsagn. Beskæftiger sig med fejl er et vigtigt element i programmering , så udviklerne nødt til at lære at håndtere forskellige typer, herunder syntaks og semantiske fejl. Syntaksfejl opstår på grund af forkert brug af sproglige strukturer og semantiske fejl opstår på grund af logiske fejl. Disse to typer af fejl typisk blive synlige på forskellige faser i programmering projekter . Programmeringssprog
Når programmører lærer at kode i specifikke sprog , de lærer ordforråd og grammatik inden for disse sprog. Når en programmør skriver en linje kode , hvor de sproglige strukturer er forkert , det er en syntaksfejl . Følgende eksempel Java-kode demonstrerer et gyldigt linje kode : int myNum = 5;
følgende ændring illustrerer en syntaksfejl : Int myNum = 5;
Java er små bogstaver, så den forkerte brug af et øvre sag forbogstav til " int " variable erklæring udgør en syntaksfejl . Der er masser af mulige syntaksfejl , hvoraf mange er simple tastefejl . Hvis en programmør bruger en integreret udviklingsmiljø , vil han se syntaksfejl fremhævet som han typer kode .
Logic
Hvert program omfatter logiske trin i forarbejdningen . Programmører diktere, hvad der vil ske , når et program udfører ved hjælp af instruktioner, som f.eks loops og betingede udsagn . Semantikfejl er fejl i disse logiske strukturer. For eksempel viser følgende JavaScript-kode et gyldigt løkke : var counter : var myArray = new Array ( 3, 7, 2), for ( counter = 0; counter < myArray.length , counter + +) { document.write ( myArray [ counter ] );}
Denne kode gennemløber array strukturen, indtil den når enden. Løkken stopper, når den når det sidste element , fordi de betingede test kontrollerer, at tællervariabel ikke større end array længde minus én , der er det endelige indeks i strukturen . Følgende ændrede version indeholder en semantisk fejl : var counter : var myArray = new Array ( 3, 7, 2), for ( counter = 0; counter <= myArray.length , counter + +) { document.write ( myArray [ counter ] ) ;}
Denne gang løkken , med en ekstra lighedstegn i anden linje , vil gentage , når tælleren er lig array længde, som er ude - med sine grænser. Dette kan medføre, at scriptet til at gå ned , når det udfører .
Execution
Afhængigt det pågældende sprog , nogle syntaksfejl forhindrer et program i at udføre på alle . For eksempel, når du bruger Eclipse IDE til at skabe Java-programmer kan udviklere ikke kompilere og køre deres ansøgninger , medmindre de har ingen syntaks fejl i dem . Dette skaber en arbejdsmodel , hvor udviklerne med at identificere syntaksfejl på et tidligere tidspunkt . Men det gælder kun for syntaksfejl , da semantikfejl normalt ikke vil forhindre et program fra at køre og oversætter .
Test
Programmører typisk ikke bliver klar over semantiske fejl, indtil testfasen af et projekt . Et program kan indeholde semantikfejl og stadig udføre. Afhængigt af programmet og på test proces kan en semantisk fejl gå upåagtet indtil omfattende tests er blevet udført . Processerne af test og debugging give udviklere mulighed for at identificere og afhjælpe syntaks og semantiske fejl .