Programozási nyelv

A programozási nyelv a számítástechnikában használt olyan, ember által is értelmezhető utasítások sorozata, amivel közvetlenül, vagy közvetve (például: gépi kódra fordítás után) közölhetjük a számítógéppel egy adott feladat elvégzésének módját.

A programozási nyelvek kategóriák szerinti csoportosításban, betűrendben felsorolva.

A programozási nyelvek története 
Valószínűleg Charles Babbage készítette az első számítógép-szerű gépet, melyre Ada Lovelace írt különböző (assembly-szerű) programokat.

Alan Turing megalkotta a Turing-gép elméleti konstrukcióját, mely már a mai modern számítógép viselkedését írja le. A gépet egy program vezérli, melynek lefutását a kapott input befolyásolja.

Konrad Zuse a modern programnyelvek egyik úttörője, aki az általa kifejlesztett nyelv, a Plankalkül használatát már nagyjából úgy képzelte el, ahogy a programozási nyelveket napjainkban használjuk problémáink megoldására.

Az 1940-es években, amikor elkészítették az első elektronikus számítógépet, programozókra volt szükség, akik a saját kezükkel működtették a gépeket. Ebben az időben a számítógépek hihetetlenül nagy méretűek és drágák voltak. A 20. század végén bekövetkezett robbanásszerű elektrotechnikai fejlődés elősegítette a felhasználóbarát számítógépek elterjedését. 

Az ezt követő fejlődés (tranzisztorok, integrált áramkörök és chipek) a számítógépeket sokkal megbízhatóbbá, könnyebben kezelhetővé tette, s a legkülönbözőbb programozási nyelvek jelentek meg.
Ez vezetett az exponenciálisan növekvő fejlődéshez, amely az internetet, a mindenütt előforduló számítógépeket eredményezte, és lehetővé tette az olyan könnyen elsajátítható nyelvek elterjedését, mint például a Python vagy a Visual Basic.

Ahogyan a számítógépek ára drámaian csökkent, úgy nőtt a programok jelentősége és komplexitása, aminek eredményeként a számítógép-időnél sokkal fontosabbá vált a fejlesztési idő.

A fejlődés következő állomását az (IDE) megjelenése jelentette, melyek csökkentették az idő-, és pénzráfordítást. A képernyő területei, melyek végrehajtják a programvezérlést, gyakran interaktívan átrendezhetőek. A kód-részleteket egy egérkattintással is előhívhatjuk. A munkát tehát előregyártott komponensek és újrafelhasználható kódokkal operáló eljáráskönyvtár teszik könnyebbé.

A korszerű nyelvek új fejlesztéseket tartalmaznak, mint például felhasználói jogok meghatározása; szabadon variálható, testhezálló telepítés és kinézet.

Az objektumorientált programozás módszertana képes lényegesen csökkenteni a programok elkészítési idejét, a programkód olvashatóságát, de azok hatékonyságát is.

Lásd még: Programozási paradigma.

Programozási nyelvek listája 
Lásd Programozási nyelvek listája betűrendben

Alapvetően három kategóriába soroljuk a programozási nyelveket.

Gépi kód 
A gépi kód valójában nem nyelv, mivel az a gép számára közvetlenül értelmezhető adatsort jelenti. A gépi kódhoz legközelebb álló nyelv az assembly nyelv. Ha egy assembly vagy mnemonik nyelv és az általa előállított gépi kód között egy-az-egy megfeleltetés van, akkor mondhatjuk, hogy az adott nyelv „gépi kód szintű”.

Assembly 
Lásd: Assembly
A gépi kódhoz, vagyis az adott számítógép saját nyelvéhez legközelebb álló nyelveket nevezzük assembly nyelveknek: ezen a nyelven a legnehezebb programot írni, mert azt teljesen a  számítógép architektúrájához alakítva, gépi logika szerint kell elkészíteni. Cserébe az assembly nyelven írt programok a leggyorsabbak.

Az assembly nyelven írt programot gépi kódra az „assembler” (fordítóprogram) fordítja le. (Ebből látható, hogy igazából az assembly is egy fordított nyelv, de mégsem soroljuk a fordított nyelvek közé, mivel a legtöbb esetben a „fordított nyelvek” az adott nyelvről assembly-re fordítanak (belsőleg), és utána azt alakítják át gépi kóddá.)

Minden egyes processzor-családnak saját assembly nyelve van (vagy nyelvei vannak).

Magas szintű nyelvek 
A magas szintű nyelvek esetén valamilyen absztrakció segítségével az emberi logikához vagy a problématérhez közelebb eső nyelven fejezzük ki a programunkat.

Kapcsolódó szócikkek 
 Programozási nyelvek kategóriák szerint
 Programozási nyelvek listája betűrendben
 Objektumorientált programozás
 Objektumorientált programozást támogató nyelvek listája

További információk 
 Programozás.lap.hu - linkgyűjtemény
 Tiobe index a programozási nyelvek népszerűségéről
 Programozási nyelvek - rövid leírás, parancsok-utasítások összehasonlítása
 Programozási nyelvek leírása

Programozási alapfogalmak