Id-Differenza bejn il-Lingwi Kkompilati u Interpretati

Mistoqsija komuni li tintalab min-nies li qed jaħsbu li jidħlu fl-ipprogrammar hija "liema lingwa għandi nitgħallem?"

It-tweġiba għal din il-mistoqsija hija kważi impossibbli li tingħata tweġiba. Jekk qed tfittex li titgħallem għall-programm għal skopijiet ta 'karriera allura hija idea tajba biex tara dak li kulħadd qed juża u jitgħallem dak.

Per eżempju, fis-snin riċenti numru kbir ta 'nies qed jużaw jew il-munzell ta' l-Internet li kien jinvolvi ASP.NET, C #, JavaScript / JQuery / AngularJS. Dawn il-lingwi ta 'programmar huma kollha parti mill-toolkit tal-Windows u filwaqt li .NET sar disponibbli għall-Linux mhuwiex użat ħafna.

Fi ħdan id-dinja Linux, in-nies jużaw Java, PHP, Python, Ruby On Rails u C.

X'inhu Lingwa Kompilata?

#include int main () {printf ("Hello World"); }

Dan t'hawn fuq huwa eżempju sempliċi ħafna ta 'programm miktub fil-lingwa ta' programmar C.

C huwa eżempju ta 'lingwa kkumpilata. Sabiex tmexxi l-kodiċi ta 'hawn fuq, għandna bżonn immexxija permezz ta' kompilatur C.

Ġeneralment, biex tagħmel dan, imexxu l-kmand li ġej fil-Linux:

gcc helloworld.c -o hello

Il-kmand ta 'hawn fuq jbiddel il-kodiċi minn format li jinqara mill-bniedem fil-kodiċi tal-magna li l-kompjuter jista' jaħdem b'mod nattiv.

"gcc" huwa fih innifsu programm ikkumpilat (kompilatur gnu c).

Programm kompilat jista 'jitmexxa sempliċement billi jmexxi l-isem tal-programm kif ġej:

./Bongu

Il-benefiċċji ta 'l-użu ta' kompilatur biex jinġabar il-kodiċi huwa li ġeneralment imur aktar mgħaġġel minn dak li ġie interpretat peress li m'għandux għalfejn jaħdem fuq it-titjir hekk kif l-applikazzjoni tkun għaddejja.

Il-programm ikkumpilat ġie verifikat ukoll għal żbalji waqt li kien qed jiġi kkompilat. Jekk hemm xi kmandi li l-kompilatur ma jixtieqx allura dawn se jiġu rrappurtati. Dan jippermettilek tiffissa l-iżbalji kollha tal-kodifikazzjoni qabel ma jkollok programm li jaħdem sew.

Sempliċement għax programm ikun ikkompila b'suċċess ma jfissirx li se loġikament imexxi l-mod kif tistenna li hekk tkun għadek teħtieġ li tittestja l-applikazzjoni tiegħek.

Rarament hija xejn qatt perfetta, madankollu. Jekk għandna programm C ikkumpilat fuq il -kompjuter Linux tagħna ma nistgħux nippruvaw dak il-programm ikkumpilat lill-kompjuter tal-Windows tagħna u nistennew li l-eżekutibbli titmexxa.

Sabiex tikseb l-istess programm C taħdem fuq il-kompjuter Windows tagħna, ser ikollna bżonn li jerġgħu jiġbru l-programm bl-użu ta 'kompilatur C fuq kompjuter Windows.

X'inhi Lingwa Interpretata?

Stampa ("hello world")

Il-kodiċi ta 'hawn fuq huwa programm python li se juri l-kliem "hello world" meta jitmexxa.

Biex tmexxi l-kodiċi m'għandniex bżonn nagħmlu l-ewwel. Minflok, nistgħu sempliċement imexxu l-kmand li ġej:

python helloworld.py

Il-kodiċi t'hawn fuq m'għandux għalfejn jiġi kkompilat l-ewwel iżda jeħtieġ li l-python ikun installat fuq kwalunkwe magna li teħtieġ li titħaddem l-iskrittura.

L-interpretu tal-python jieħu l-kodiċi jinqara mill-bniedem u jibdluh f'xi ħaġa oħra qabel ma jagħmel xi ħaġa li l-magna tista 'taqra. Dan kollu jiġri wara xeni u bħala utent, kollha se tara huma l-kliem "hello world".

B'mod ġenerali, huwa meqjus li l-kodiċi interpretat se jimxi aktar bil-mod mill-kodiċi kkumpilat għaliex għandu jwettaq b'mod attiv l-istadju li ddawwar il-kodiċi f'xi ħaġa li l-magna tista 'timmaniġġja fuq il-fly meta mqabbla mal-kodiċi miġbura li tista' taħdem.

Filwaqt li dan jista 'jidher ta' żvantaġġ hemm numru ta 'raġunijiet għaliex il-lingwi interpretati huma utli.

Għal waħda huwa ħafna aktar faċli li jinkiseb programm bil-miktub fil-python biex jimxi fuq Linux, Windows, u macOS . Kull ma trid tagħmel hu li tiżgura li l-python ikun installat fuq il-kompjuter li tixtieq tmexxi l-iskritt.

Benefiċċju ieħor huwa li l-kodiċi dejjem ikun disponibbli għall-qari u jista 'jinbidel faċilment għax-xogħol kif trid. B'kodiċi kkumpilat, għandek issib fejn qiegħed jinżamm il-kodiċi, ibdelha, tiġborha u tqassam mill-ġdid il-programm.

Bil-kodiċi interpretat, tiftaħ il-programm, ibiddlu u tkun lesta biex tmur.

Allura X'Għandek tuża?

Niddubitaw id-deċiżjoni tiegħek ta 'lingwa ta' programmar se jiġi deċiż jekk hux lingwa kkumpilata jew le.

Din il-lista tista 'tkun ta' min inħarsu peress li telenka d-9 lingwi ta 'programmar l-aktar popolari.

Filwaqt li xi lingwi qed imorru b'mod ċar bħal COBOL, Visual Basic, u ActionScript, hemm oħrajn li kienu fit-tarf tal-mewt u għamlu rimonta drammatika bħal JavaScript.

Ġeneralment, il-parir tagħna jkun li jekk qed tuża Linux għandek jew titgħallem Java, Python jew Ċ u jekk qed tuża Windows titgħallem .NET u AngularJS.