Het verschil tussen runtime en compilatietijd

Schrijver: Sharon Miller
Datum Van Creatie: 22 Januari 2021
Updatedatum: 19 Kunnen 2024
Anonim
Het verschil tussen runtime en compilatietijd - Elektronica
Het verschil tussen runtime en compilatietijd - Elektronica

Inhoud

Hoe een computerprogramma werkt, is een raadsel voor de typische gebruiker die het werk van programmeurs vertrouwt. De programmeur moet begrijpen hoe de computer verwacht commando's te ontvangen in de twee uitvoeringsstappen (compilatietijd en uitvoeringstijd), naast andere concepten.

Bouw tijd

De eerste fase van het uitvoeren van een programma, de compilatietijd, omvat het vertalen van de taal die begrijpelijk is voor mensen, of "broncode", naar een taal die de computer begrijpt, of "machinecode". De broncode bevat woorden die u herkent, cijfers in decimaal formaat en georganiseerde structuren die het gemakkelijker maken om de stroom instructies te begrijpen. De compilatietijdstap is voltooid wanneer het nieuwe programma een uitvoerbaar bestand is.


Looptijd

De computer gebruikt de instructies die tijdens het compileren zijn geproduceerd om het programma uit te voeren. Tijdens runtime leest de computer de vertaling van de broncode om de taken uit te voeren die door de programmeur zijn opgenomen. Elke keer dat iemand het programma uitvoert, doen ze het tijdens runtime.

Verschil

De compilatietijd wordt slechts één keer overschreden om de broncode te vertalen naar een uitvoerbaar bestand, dat zo vaak als nodig kan worden aangeroepen zonder opnieuw te compileren, tenzij het programma moet worden gewijzigd. De meeste gebruikers gebruiken alleen de runtime.


Compilatietijdfouten

Fouten kunnen optreden tijdens beide fasen van de programma-uitvoering. Compilatiefouten of syntaxisfouten komen voor in de broncode. Voorbeelden hiervan zijn verkeerd gespelde commando's, problemen in de volgorde van bewerkingen, incompatibele combinaties van typen variabelen en weglatingen van noodzakelijke elementen. Een programmeur kan compilatiefouten gemakkelijk detecteren, omdat ze syntactisch zijn in plaats van logisch. De compiler vindt meestal een compileerfout en legt uit of geeft tips om deze op te lossen. Als de compiler een uitvoerbaar bestand uit code produceert, heeft het programma geen compileerfouten.

Catastrofale run-time fouten

Runtime-fouten kunnen ervoor zorgen dat een programma crasht en voortijdig wordt beëindigd. Voorbeelden van dergelijke fouten zijn toegang tot beperkt geheugen en delen door nul. De "x / y" -instructie is syntactisch correct, maar als "y" tijdens runtime de waarde 0 bevat, zal het programma mislukken. Een programmeur kan het moeilijk vinden om runtimefouten te vinden omdat ze meestal onder bepaalde omstandigheden optreden.


Runtime-logische fouten

Een logische fout zorgt er niet voor dat het programma faalt, maar zorgt er wel voor dat het werkt op een manier die de programmeur niet wil. Overweeg een programma met een optiemenu dat verwacht dat de gebruiker het gewenste optienummer invoert. Als de gebruiker een letter invoert, kan het programma, wachtend op een nummer, deze omzetten in een numerieke waarde en de gebruiker naar een van de opties sturen, waarbij het erop lijkt dat er niets aan de hand is in plaats van te informeren dat de gebruiker een ongeldige optie heeft getypt.