Virheenkorjaus vs. kääntäjä
Yleensä kääntäjä on tietokoneohjelma, joka lukee yhdellä kielellä kirjoitetun ohjelman, jota kutsutaan lähdekieleksi, ja kääntää sen toiselle kielelle, jota kutsutaan kohdekieleksi. Lähdekieli oli perinteisesti korkean tason kieli, kuten C ++, ja kohdekieli oli matalan tason kieli, kuten kokoonpanokieli. Debugger on tietokoneohjelma, jota käytetään vikojen / virheiden löytämiseen muista ohjelmista. Virheenkorjaus antaa ohjelmoijan lopettaa ohjelman suorittamisen tietyssä vaiheessa ja tutkia ominaisuuksia, kuten muuttuja-arvot siinä vaiheessa.
Mikä on virheenkorjaus?
Debugger on tietokoneohjelma, jota käytetään vikojen / virheiden löytämiseen muista ohjelmista. Virheenkorjaus sallii ohjelman suorittamisen ja ohjelman suorittamisen jokaisen vaiheen tarkastamisen. Se sallii myös ohjelman suorittamisen pysäyttämisen jossain vaiheessa ja muutettujen muuttujien arvojen muuttamisen ja sitten suorituksen jatkamisen. Kaikki nämä ominaisuudet on tarkoitettu auttamaan ohjelmoijaa varmistamaan, että hänen ohjelmansa käyttäytyy oikein, ja auttamaan koodin virheiden tunnistamisessa. Suurin osa virheenkorjauksista tarjoaa mahdollisuuden suorittaa ohjelma askel askeleelta (kutsutaan myös yksivaiheiseksi), keskeyttämällä ohjelman nykyisen tilan tutkiminen antamalla katkaisupiste ja seuraamalla muuttujien arvoja. Jotkin edistyneet virheenkorjaajat antavat ohjelmoijan ohittaa sijainnin, joka aiheuttaa kaatumisen tai loogisen virheen koodissa, ja jatkaa suoritusta eri sijainnista. Jotkut suosituista virheenkorjauksista ovat GNU Debugger (GDB), Microsoft Visual Studio Debugger jne.
Mikä on kääntäjä?
Kääntäjä on tietokoneohjelma, joka lukee yhdellä kielellä kirjoitetun ohjelman, jota kutsutaan lähdekieleksi, ja kääntää sen toiselle kielelle, jota kutsutaan kohdekieleksi. Lähdekieli on useimmiten korkean tason kieli ja kohdekieli on matalan tason kieli. Joten kääntäjiä voidaan yleisesti nähdä kääntäjinä, jotka kääntävät kielestä toiseen. Lisäksi kääntäjät suorittavat koodiin joitain optimointeja. Tyypillinen kääntäjä koostuu useista pääkomponenteista. Ensimmäinen komponentti on skanneri (tunnetaan myös nimellä leksikaalinen analysaattori). Skanneri lukee ohjelman ja muuntaa sen merkkijonoksi. Toinen komponentti on jäsennin. Se muuntaa merkkijonon jäsennyspuuksi (tai abstraktiksi syntaksipuuksi), joka sieppaa ohjelman syntaktisen rakenteen. Seuraava komponentti on semanttiset rutiinit, jotka tulkitsevat syntaktisen rakenteen semantiikkaa. Tätä seuraa koodin optimointi ja lopullinen koodin luominen.
Mikä on ero virheenkorjaimen ja kääntäjän välillä?
Debugger on tietokoneohjelma, jota käytetään vikojen / virheiden löytämiseen muista ohjelmista, kun taas kääntäjä on tietokoneohjelma, joka lukee yhdellä kielellä kirjoitetun ohjelman ja kääntää sen toiselle kielelle. Kääntäjät pystyvät myös havaitsemaan syntaksivirheet ja muut kääntöaikavirheet, mutta virheenkorjaajat tarjoavat enemmän ominaisuuksia (kuten muistin seuranta) ohjelmien virheiden havaitsemiseksi. Nämä kaksi ovat kaksi erilaista ohjelmaa, mutta useimmiten virheenkorjain ja kääntäjä on integroitu yhdeksi paketiksi.