Compiler and Interpreter

Anonim

Compiler vs Interpreter

Kapag nagsusulat ng mga programa sa isang mataas na antas ng wika, ang computer ay hindi magagawang maintindihan ito. Upang magamit ito, kailangan mong i-convert ito sa isang bagay na naiintindihan ng isang computer. Ito ay kung saan ang mga compiler at interpreter ay pumasok habang pareho silang ginagawa ang parehong function. Ang pangunahing pagkakaiba sa pagitan ng isang tagatala at isang interpreter ay kapag isinasagawa nila ang code. Sa pamamagitan ng isang interpreter, ang code ay pinaandar agad sa pagpapakahulugan na dumadaan sa interpreted code sa computer. Sa paghahambing, ang isang tagatala ay hindi nagpapatupad ng code. Sa halip, sinulat nito ang natapos na code sa disk. Ang code na nakasulat sa disk ay maaaring ipatupad anumang oras.

Ang pangunahing pagkakaiba sa pagitan ng interpreter at tagatala ay nagpapalabas ng isa pa. Dahil ang interpreter ay kinakailangan kapag nagpatakbo ka ng isang programa, kailangan mong magkaroon ng isang interpreter na naka-install kung gusto mong isagawa ang program sa iyong makina. Hindi ito ang kaso sa isang tagatala. Sa sandaling ang programa ay naipon, kailangan mo lamang ang naipon na programa at hindi ang tagatala o ang orihinal na code.

Ang isang bentahe ng paggamit ng isang interpreter sa halip na isang tagatala ay ang kakayahang magsagawa ng programa sa mga computer na nagpapatakbo ng iba't ibang mga operating system; ibinigay na mayroon kang naaangkop na interpreter. Kapag nag-compile ka ng isang programa, ito ay para sa isang tiyak na operating system lamang at hindi tatakbo sa iba. Upang patakbuhin ito sa isa pang operating system, kailangan mong i-optimize ang iyong code para sa operating system na iyon at itala muli ito.

Ang downside ng paggamit ng isang interpreter ay ang idinagdag na overhead. Ang interpreter ay nangangailangan ng ilang kapangyarihan sa pagpoproseso at ang bawat linya ng code ay ipinapaliwanag sa panahon ng runtime. Hindi ito ang kaso kung mayroon kang isang naipon na programa dahil ang operating system ay maaaring basahin ito nang direkta at execute bawat command. Ang dagdag na hakbang ng interpreting code ay gumagawa ng interpreted na programa upang tumakbo ng makabuluhang mas mabagal kaysa sa naipon na code. Ang interpreter ay hindi rin magagawang upang samantalahin ang mga tiyak na pag-optimize ng OS na maaaring hayaan ang isang pinagsama-samang programa na tumakbo nang mas mahusay.

Ang pagpili sa pagitan ng isang tagatala at isang interpreter ay dapat na depende sa kung nais mong dalhin o pagganap.

Buod:

  1. Ang isang interpreter ay direktang nagsasagawa ng code habang ang isang tagatala ay hindi
  2. Kailangan ng isang interpreter na magagamit sa target na makina habang ang isang tagatala ay hindi
  3. Ang isang interpreted na programa ay tatakbo sa maraming mga platform habang ang isang naipon na programa ay hindi
  4. Ang isang interpreted na programa ay tatakbo nang mas mabagal kaysa sa isang programa na pinagsama-sama