Den interne driften av en datamaskin forbli et mysterium for den typiske brukeren , som er avhengig av arbeidet til programmerere til å fortelle datamaskinen hva de skal gjøre . Programmereren må forstå hvordan datamaskinen forventer å motta kommandoer og de to stadier av programmet kjøres - kompilering og kjøring - i tillegg til andre konsepter . Kompilering
kompilering oversetter koden fra menneskelig språk til maskin språk .
Den første fasen i utførelsen av et program , kompilering , innebærer oversettelse fra språk som mennesker forstår , eller kildekoden , til språk som datamaskiner forstår, eller maskinkode . Kildekoden inneholder ordene du kjenner , tall i desimal format og organisatoriske grupperinger som gjør det lettere å forstå flyten av instruksjoner. Den kompilering scenen fullfører når det nye programmet er en kjørbar fil .
Runtime
Runtime oppstår som datamaskinen utfører programmet .
Maskinen bruker instruksjonene som kompilering produserer for å utføre programmet . Under kjøring , leser datamaskinen ved omregning av kildekoden til å utføre de oppgavene programmereren har innlemmet i koden . Hver gang noen utfører programmet , gjør han det i runtime .
Forskjell
Runtime og kompilering utgjør to forskjellige stadier av behandling .
kompilering skjer bare én gang , oversette kildekoden til en kjørbar fil. Den kjørbare filen kan starte runtime ubegrenset antall ganger uten å måtte besøke kompilering mindre programmet krever endringer . De fleste brukerne av programmene opplever bare runtime .
Kompilering feil
kompilering feil oppstår før programmet blir kjørbar .
Feil kan oppstå under begge faser av gjennomføringen. Kompilering feil, eller syntaks feil , finnes i kildekoden . Eksempler er stavet feil kommandoer, feil rekkefølge av operasjoner, variabeltype ikke samsvarende og utelatelse av nødvendige elementene . En programmerer kan oppdage kompilering feil ganske enkelt fordi de er syntaktisk snarere enn logisk. Kompilatoren vil generelt peke ut en kompilering feil og enten forklare eller gi hint om hvordan du løser dem . Dersom kompilatoren vellykket produserer en kjørbar fil fra kildekoden , inneholder programmet ingen kompilering feil .
Katastrofale Runtime feil
Runtime feil kan føre til at programmet krasjer.
Kjøretid feil oppstår mens et program kjører . Katastrofale runtime feil føre til et program for å krasje og slutte utførelse tidlig. Eksempler er begrenset minne tilgang og divisjon med null. Uttalelsen x /y er korrekt syntaktisk , men hvis y inneholder verdien 0 under kjøring , vil det krasje programmet. En programmerer kan finne fanger katastrofale runtime feil vanskelige fordi de vanligvis oppstår bare under visse forutsetninger .
Logiske Runtime feil
Runtime feil kan føre til utilsiktede atferd.
En logisk feil ikke medfører at programmet krasjer , men gjør det drives på en måte som programmereren ikke hadde tenkt . Betrakt et program med en meny med alternativer som forventer at brukeren angir alternativet nummeret hun ønsker. Hvis brukeren angir et brev , programmet , forventer et tall, konverterer den til en numerisk verdi og sender brukeren til et av menyvalgene . Programmet utfører som om ingenting er galt i stedet for å fortelle brukeren om at hun har oppgitt en ugyldig alternativ.