Pagrindinis skirtumas – kompiliavimo laikas ir vykdymo laikas
Dauguma programų parašytos naudojant aukšto lygio programavimo kalbas. Šių programavimo kalbų sintaksė panaši į anglų kalbą. Aukšto lygio kalbos yra lengvai suprantamos žmonėms, bet nesuprantamos kompiuteriui. Todėl parašyta programa arba š altinio kodas turi būti konvertuoti į mašinai suprantamą formatą. Jis vadinamas mašininiu kodu. Laikotarpis, per kurį š altinio kodas konvertuojamas į mašininį kodą, yra žinomas kaip kompiliavimo laikas. Kompiliavimo metu atliekamos tokios užduotys kaip sintaksės analizė, semantinė analizė ir kodo generavimas. Kompiliavimo metu sugeneruoto vykdomojo failo paleidimo laikotarpis vadinamas vykdymo laiku. Abu yra terminai, susiję su skirtingais programos gyvavimo ciklo etapais. Šiame straipsnyje aptariamas kompiliavimo ir vykdymo laiko skirtumas. Pagrindinis skirtumas tarp kompiliavimo laiko ir vykdymo laiko yra tas, kad kompiliavimo laikas yra programavimo gyvavimo ciklo fazė, kuri konvertuoja š altinio kodą į vykdomąjį failą, o vykdymo laikas reiškia programavimo gyvavimo ciklo fazę, kuri paleidžia kompiliavimo metu sugeneruotus vykdomuosius failus. Klaidos, atsirandančios kompiliavimo metu, yra žinomos kaip kompiliavimo laiko klaidos, o klaidos, atsirandančios vykdymo metu, yra žinomos kaip išimtys.
Kas yra kompiliavimo laikas?
Programuotojas gali duoti nurodymus kompiuteriui naudodamas programavimo kalbą. Dauguma programuotojo naudojamų programavimo kalbų yra aukšto lygio programavimo kalbos. Jų sintaksė panaši į anglų kalbą. Šios kalbos yra lengvai skaitomos ir suprantamos žmonėms. Programa, parašyta naudojant aukšto lygio kalbą, yra žinoma kaip š altinio kodas. Š altinio kode gali būti eilučių rinkinys arba daug eilučių, atsižvelgiant į užduotį. Aukšto lygio kalba pateiktos instrukcijos kompiuteriui nesuprantamos. Kompiuteris supranta mašinos kodą. Todėl š altinio kodas turi būti sukompiliuotas į mašininį kodą, kad būtų vykdoma programa. Programavimo gyvavimo ciklo fazė vadinama kompiliavimo laiku. Tai laikotarpis, per kurį reikia užbaigti kompiliavimo procesą. Kompiliavimo metu atliekamos operacijos apima sintaksės analizę, semantinę analizę ir kodo generavimą.
01 pav.: Kompiliavimo laikas ir vykdymo laikas
Kompiliavimo metu gali atsirasti klaidų. Jie atsiranda dėl sintaksės ir semantinių klaidų. Šios klaidos neleidžia sėkmingai kompiliuoti. Kompiliatorius nurodo apie kompiliavimo laiko klaidas. Bus rodomas pranešimas, kurioje eilutėje įvyko klaida. Kai kuriose įprastose kompiliavimo metu klaidose trūksta riestinių skliaustų, rašybos identifikatorių ir klaidingai parašytų raktinių žodžių. Kai įvyksta kompiliavimo klaida, programuotojas turi ją ištaisyti.
Kas yra vykdymo laikas?
Vykdymo laikas taip pat žinomas kaip vykdymo laikas. Tai laikas, kai programa veikia, priešingai nei kitos programos gyvavimo ciklo fazės, pvz., kompiliavimo laikas, įkėlimo laikas ir kt. Kai kompiliavimo procesas baigtas, jį paleidžia vartotojas. Laikotarpis, per kurį reikia paleisti vykdomąjį failą, sugeneruotą kompiliavimo metu, vadinamas vykdymo laiku. Terminas vykdymo laikas gali būti naudojamas klaidoms nurodyti. Netgi programa tinkamai kompiliuojama, gali būti klaidų.
Šios klaidos neduos laukiamo rezultato. Tai taip pat gali nutraukti programos vykdymą. Šios klaidos atsiranda vykdymo metu, todėl jos vadinamos vykdymo klaidomis arba išimtimis. Kai kurios vykdymo klaidos padalija skaičių iš nulio, kai masyvas nėra susietas ir pritrūksta atminties.
Koks yra kompiliavimo laiko ir vykdymo laiko panašumas?
Ir kompiliavimo laikas, ir vykdymo laikas yra programos gyvavimo ciklo fazės
Kuo skiriasi kompiliavimo laikas ir vykdymo laikas?
Kompiliavimo laikas ir vykdymo laikas |
|
Kompiliavimo laikas yra programavimo ciklo fazė, kuri konvertuoja š altinio kodą į vykdomąjį failą. | Vykdymo laikas yra laikas, kai programa veikia, priešingai nei kitos programos gyvavimo ciklo fazės, pvz., kompiliavimo laikas, susiejimo laikas ir įkėlimo laikas. |
Klaidos | |
Kompiliavimo laiko klaidos yra sintaksės ir semantinės klaidos. | Vykdymo klaidos vadinamos išimtimis. |
Santrauka – kompiliavimo laikas ir vykdymo laikas
Kompiliavimo laikas ir vykdymo laikas yra du programavimo ciklo etapai. Šiame straipsnyje aptariamas skirtumas tarp kompiliavimo laiko ir vykdymo laiko. Programuotojo š altinio kodas konvertuojamas į mašininį kodą kompiliavimo metu. Kompiliavimo metu sugeneruoto vykdomojo failo paleidimas vadinamas vykdymo laiku. Kai kompiliavimo metu įvyksta klaida, kompiliatorius parodo pranešimą pagal klaidą. Netgi sukompiliuota programa gali neduoti laukiamo rezultato. Tokiu atveju tai yra vykdymo klaida arba išimtis. Skirtumas tarp kompiliavimo laiko ir vykdymo laiko yra tas, kad kompiliavimo laikas yra programavimo gyvavimo ciklo fazė, kuri konvertuoja š altinio kodą į vykdomąjį failą, o vykdymo laikas reiškia programavimo gyvavimo ciklo fazę, kuri paleidžia kompiliavimo metu sugeneruotus vykdomuosius failus.