FalusiVakáció csoport
FalusiVakáció csoport

Programozásról


Programozási nyelvek

Programozási nyelvek csoportosítása

A hagyományos programozási megközelítés az adatokat és a hozzájuk kapcsolódó eljárásokat külön kezeli, az objektum-orientált megközelítés ezzel szemben az adatokat és a velük végzett eljárásokat együtt kezeli egy objektumban. Az objektumközpontú programozási nyelveket feloszthatjuk tisztán objektumközpontú nyelvekre, illetve kevert vagy hibrid nyelvekre is.[1]

Ahhoz, hogy a számítógéppel „kommunikálni” tudjunk, szükséges, hogy az általunk utasításokat megértse, ez okból jöttek létre a programozási nyelvek. A programozási nyelveket szintjei szerint így csoportosíthatjuk: [2]

  • Alacsony szintű vagy gépi kód

A processzor számára közvetlenül végrehajthatóak, mivel ez bináris kód, vagyis a programkód kizárólag nullák, illetve egyesek számsorozatából áll.

  • Assembly nyelv

Alacsony szintű nyelvként értelmezhető, mivel az emberi gondolkodástól távol áll szerkezetileg. Itt már megjelennek a szavak. Ezt szükséges lefordítani gépi kódra, úgy tud futni, viszont egyik előnyének tekinthető, hogy a fordítás gyorsan megy végbe.

  • Magas szintű programozási nyelvek

Az emberi gondolkodáshoz közel álló nyelvek tartoznak ide, pl. C#. A legtöbb programozást tanító weboldal ezeket a programokat tanítja. Lassabb programfutást eredményez, mint a gépközeli nyelvek.

  • Újabb generációs nyelvek

Az emberi gondolkodáshoz még jobban közelebb álló nyelvek. Napjainkban még nem terjedtek el széles körben. Lényeges különbség a magas szintű programozási nyelvekhez képest, hogy míg azok csak a programozó által kiadott utasításokat hajtják végre, az újabb generációs nyelveknél a döntést bizonyos esetben rábízzák a számítógépre. Ez az egyik ok, amiért nagy jövőt jósoltak neki a szakértők, ám kiderült, hogy bizonyos problémákat ilyen módon nem lehetséges megoldani, ezért továbbra is használni fogjuk a magas szintű nyelveket. [3]

Az alacsony és magas szintű programozási nyelvek tulajdonságai fordított arányossági kapcsolatban állnak egymással. A fordítási idő alacsony az alacsony szintű programozási nyelvnél, viszont az értelmezési nehézség magas, ennek megfelelően a magas szintű programozási nyelv fordítási ideje is magas, és ezt viszont könnyebb értelmezni.

Az ábrán szemléltetem a fordítási idő, illetve az értelmezési egyszerűség (vagy ellentétét, a nehézséget) kapcsolatát. A két tényező fordított arányossági kapcsolatban áll egymással, ezért van létjogosultsága az alacsony, illetve a magas szintű nyelveknek, a feladat milyensége határozza meg az alkalmazandó nyelv megválasztását.

 

[1] D. Bell, I. Morrey, J. Pugh: Programtervezés p. 118. In: Az objektumközpontú programozás alapelvei

[2] Programozási alapfogalmak [online] Letöltés időpontja: 2021. 03. 16.

Hozzáférés (URL): http://users.iit.uni-miskolc.hu/~vargae/Segedlet/ElekT_ProgAlapfogalmak.pdf

[3] Újabb generációs nyelvek [online] Letöltés időpontja: 2021. 03. 16.

Hozzáférés (URL): https://tferi.hu/programozasi-nyelvek-generacioi


Szeretnél egy ilyen weblapot teljesen ingyen?
Ez a weboldal a Nanoweb honlapszerkesztővel készült.
© Minden jog fenntartva.