Vrste programskih jezikov, prevajanje in tolmačenje


Kratka zgodovina

Programskih jezikov je danes na stotine. Vendar so v praksi uveljavljeni le nekateri. Prvi programski jeziki segajo v 50-a in 60-ta leta prejšnjega stoletja, ko so začeli uvajati zbirne jezike, prve prevajalnike in interpreterje.  S pojavom računalnikov, zgrajenih po Von Neumannovem modelu so se začeli pojavljati takoimenovani postopkovni (proceduralni) jeziki. Računalnike so sprva uporabljali za znanstvena računanja. Tako ni čudno, da je bil eden prvih programskih jezikov FORTRAN (kar izhaja iz angleških besed Formula Translation).

Hitro so mu sledili programski jeziki za poslovne aplikacije (COBOL, PL/I), saj je bilo to obdobje velikih računskih centrov. Računalniki so bili za vsakdanjo rabo še preveliki, predragi in preredki.

 

image003

Kasneje so se pojavile nove tehnike programiranja, ki jih uporabljamo še danes, to je strukturirano programiranje in nato še  objektno usmerjeno programiranje.

 

Naslednik FORTRANa je bil jezik, ki že po imenu pove, da je bil namenjen pisanju algoritmov: to je bil Algol 60. V bistvu je tudi veliko današnjih programskih jezikov dedičev FORTRANa in Algola, kot to ponazoruje spodnja slika:

 

Vsi navedeni programski jeziki imajo eno skupno značilnost: Računalnik jih sam po sebi ne razume. Preslikati jih moramo v strojno kodo, kar pa za nas naredi poseben program, ki mu pravimo prevajalnik. Vsak programski jezik seveda potrebuje svoj prevajalnik. Ta večinoma prevede program v strojni jezik. To za Javo ne velja. Prevajalnik Javin program prevede v vmesno kodo, ki jo nato razume in izvaja Javin interpreter. S tem so doseglo, da lahko javanski programi tečejo na kateremkoli računalniku s kateremkoli operacijskim sistemom.

Programski jeziki se silovito razvijajo in v nadaljevanju se bomo omejili le na sodobne in še to na bolj pogoste. Med klasičnimi programskimi jeziki omenimo Javo (ki naj bi omogočala platformno neodvisnost, a ni čisto tako), pa C++ in C#. Večji poudarek pa bomo dali skriptnim jezikom.




Skriptni jeziki


Tradicionalni programski jeziki se uporabljajo predvsem za tvorbo samostojnih aplikacij, ki prejemajo nek vhod in generirajo nek izhod. Večina računalništva v "realnem svetu" pa vključuje uporabo več programov.

Skriptni jeziki so predvsem namenjeni programiranemu povezovanju programskih komponent, pisanih v drugih jezikih. Ena od skupnih razlik med skriptnim jezikom in programskim jezikom za pisanje celotnih aplikacij, je, da moramo program, pisan v klasičnem programskem jeziku najprej prevesti z ustreznim prevajalnikom (compiler). Ukaze v skriptnem jeziku pa interpretiramo (tolmačimo) ukaz za ukazom in sproti izvajamo. Ukaze, ki jih večkrat uporabljamo,  normalno zapišemo v tekstovno datoteko (s primernim podaljškom, na primer .py za Python, .js za JavaScript), ki jo lahko izvajalno okolje (runtime environment) bere in tolmači.



Pred nadaljevanjem se spomnimo, da v imamo v sodobnem, povezanem svetu pogost primer, da so naši lokalni računalniki in mobile naprave  navezani na nek strežnik. Govorimo o znanem konceptu strežnik-odjemalec. Programi tečejo tako na strežnikih kot na odjemalcih.

Pri tem na veliko uporabljamo skriptne jezike, ki vse skupaj smiselno povežejo. Čeprav so skripti v svetu programiranja pogosti, so nedavno postali bolj povezani s svetovnim spletom, kjer tako lahko ustvarjamo dinamične spletne strani.

Seveda pa lahko nekatere skriptne jezike uporabljamo tudi na lokalnem nivoju.



Obstaja veliko skriptnih jezikov, nekateri od njih so:

bash: To je skriptni jezik za programirano delo v lupini Linux. Z njim tvorimo  uporabne skripte za večkratno uporabo .

JavaScript: je dominanten jezik za spletne aplikacije. Običajno skupaj z ustreznimi, problemsko usmerjenimi knjižnicami, ki zelo olajšajo programiranje in polepšajo izgled na strani odjemalca.Ena od bolj pomembnih je jQuery.

Swift: je relativno nov programski jezik , ki gab uporabljamo za razvoj aplikacij za Apple iOS ali macOS.

Ruby: Je skriptni jezik, ki je odličen za razvoj spletnih strani.

Python: Je preprost, prost in odprtokoden. Podpira  objektno usmerjeno programiranje.

Python: je splošno namenski jezik. Najdemo ga v spletnih aplikacijah, namiznih aplikacijah, omrežnih strežnikih,  pri strojnem učenju, v medijskih orodjih itd.

PHP: Hypertext Preprocessor (ali preprosto PHP) je skriptni jezik na strani strežnika, namenjen izdelavi spletnih strani.

Prednosti skriptnih jezikov:

Uporaba skriptnih jezikov

Skriptni jeziki se uporabljajo na številnih področjih:

Kateri programski jezik naj se kot začetnik najprej naučim?

programer

Če želiš razvijati spletne strani, se moraš naučiti JavaScript,  pa če ti je všeč ali ne.

Če želiš razvijati ozadje na strežnikih, se moraš naučiti  SQL.

Za podatkovno znanost je za dober začetek primeren Python.

Če  želiš delati poslovne aplikacije, je Java prava  pot.

Kateri programski jezik bi se moral naučiti  jeodvisno od tega, kaj želiš narediti.