Atšķirība starp apkopotajām un interpretētajām valodām

Kopīgs jautājums, ko uzdod cilvēki, kuri domā par ieiešanu programmēšanas procesā, ir "kādā valodā man vajadzētu uzzināt?"

Atbilde uz šo jautājumu ir gandrīz neiespējama. Ja jūs meklējat iemācīties programmēt karjeras mērķiem, tad ir ieteicams redzēt, ko visi citi izmanto un mācās.

Piemēram, pēdējos gados milzīgs skaits cilvēku izmanto vai nu .NET kaudzīti, kas ietver ASP.NET, C #, JavaScript / JQuery / AngularJS. Šīs programmēšanas valodas ir daļa no Windows rīku komplekta, un, lai gan .NET ir darīta pieejama Linux, tā netiek plaši izmantota.

Linux vidē cilvēki izmanto Java, PHP, Python, Ruby On Rails un C.

Kas ir apkopota valoda?

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

Iepriekš minētais ir ļoti vienkāršs C programmas valodas rakstīts programmas piemērs.

C ir apkopotas valodas piemērs. Lai palaistu iepriekš minēto kodu, mums tas jāuzsāk, izmantojot C kompilatoru.

Parasti, lai to izdarītu, palaidiet šādu komandu Linux:

gcc helloworld.c -o sveiks

Iepriekš minētā komanda pārvērš kodu no cilvēka lasāmā formāta uz mašīnu kodu, ko dators var palaist natively.

"gcc" pati ir apkopota programma (gnu c kompilators).

Kompiliēto programmu var palaist vienkārši, palaižot programmas nosaukumu šādi:

./Sveiki

Kompānijas kompilatora izmantošanas priekšrocības, lai apkopotu kodu, ir tas, ka tas parasti darbojas ātrāk nekā interpretē kodu, jo tas nav nepieciešams, lai to apstrādātu, kad programma darbojas.

Apkopotā programma ir pārbaudīta arī kļūdu laikā, kamēr tā tiek apkopota. Ja ir kādas komandas, kuras kompilators nepatīk, tad par tām tiks ziņots. Tas ļaus jums novērst visas kodēšanas kļūdas, pirms pilnībā darbojas programma.

Vienkārši tāpēc, ka programma ir veiksmīgi apkopota, nenozīmē, ka tā loģiski darbosies tā, kā jūs to sagaidāt, tāpēc jums joprojām ir jāpārbauda jūsu lietojumprogramma.

Tomēr reti kaut kas ir perfekts. Ja mums ir C programma, kas apkopota mūsu Linux datorā, mēs nevaram kopēt šo kompilēto programmu uz mūsu Windows datoru un sagaidīt izpildāmo failu.

Lai iegūtu tādu pašu C programmu, kas palaista mūsu Windows datorā, mums būs vēlreiz jāapkopo programma, izmantojot Windows kompilatoru.

Kas ir mutiskā tulkošanas valoda?

drukāt ("sveiki pasaule")

Iepriekš minētais kods ir python programma, kura, kad tā tiek palaista, parādīs vārdus "hello world".

Lai palaistu kodu, mums tas vispirms nav jāsastāda. Tā vietā mēs varam vienkārši palaist šādu komandu:

python helloworld.py

Iepriekš minētā kods vispirms nav jāapkopo, bet tas prasa, lai python tiktu instalēts jebkurā datorā, kurai jāaktivizē skripts.

Python tulks ņem cilvēka lasāmu kodu un pārvērš to par kaut ko citu, pirms to var izdarīt kaut ko, ko mašīna var lasīt. Tas viss notiek aiz ainas un kā lietotājs, viss, ko redzat, ir vārdi "sveiki pasaule".

Kopumā tiek uzskatīts, ka interpretētais kods darbosies lēnāk nekā apkopotais kods, jo tam ir aktīvi jāīsteno kods, pagriežot kodu, ko mašīna var rīkoties lidojumā, nevis apkopotajam kodam, kuru var vienkārši palaist.

Lai gan tas varētu šķist negatīvs, ir vairāki iemesli, kāpēc tulkošanas valodas ir noderīgas.

Vienam ir daudz vieglāk iegūt programmu, kas rakstīta ar python, lai palaistu Linux, Windows un MacOS . Viss, kas jums jādara, ir pārliecināties, vai datorā, kuram vēlaties palaist skriptu, ir instalēta python.

Vēl viens ieguvums ir tas, ka kods vienmēr ir pieejams lasīšanai, un to var viegli mainīt, lai strādātu tā, kā vēlaties. Ar apkopotu kodu jums jāatrod vieta, kur kods tiek turēts, mainīt to, apkopot to un pārkārtot programmu.

Ar tulkotu kodu jūs atverat programmu, mainiet to un esat gatavs doties.

Tātad, kas jums jāizmanto?

Mēs apšaubām jūsu lēmumu par programmēšanas valodu, tiks lemts par to, vai tā ir apkopota valoda vai nē.

Šo sarakstu varētu vērts apskatīt, jo tajā ir uzskaitītas 9 populārākās programmēšanas valodas.

Kaut arī dažas valodas ir skaidri mirušas, piemēram, COBOL, Visual Basic un ActionScript, ir arī citi, kas miruši mierā un ir dramatiski atgriezušies, piemēram, JavaScript.

Parasti mūsu padoms būtu tāds, ka, ja jūs izmantojat Linux, jums vajadzētu vai nu iemācīties Java, Python vai C un ja jūs izmantojat Windows apgūst .NET un AngularJS.