Programozási paradigma

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2022. március 16-án felülvizsgált verziótól ; az ellenőrzések 2 szerkesztést igényelnek .

A programozási paradigma  olyan ötletek és fogalmak összessége, amelyek meghatározzák a számítógépes programok írásának stílusát (programozási megközelítés). Ez egy olyan fogalomalkotási mód, amely meghatározza a számítások szervezését és a számítógép által végzett munka strukturálását [1] .

A programozási paradigmát nem határozza meg egyértelműen egy programozási nyelv; szinte minden modern programozási nyelv bizonyos mértékig lehetővé teszi különböző paradigmák használatát ( többparadigmás programozás ). Így a C nyelvben , amely nem objektum-orientált, lehetséges az objektum-orientált programozás elvei szerint dolgozni, bár ez bizonyos nehézségekkel jár; A funkcionális programozás használható bármilyen kötelező nyelven, amely funkciókkal rendelkezik stb.

Ezenkívül a létező paradigmák gyakran részletesen metszik egymást (például moduláris és objektum-orientált programozás), így találhatunk olyan helyzeteket, amikor a különböző szerzők különböző paradigmákból származó neveket használnak, miközben valójában ugyanarról a jelenségről beszélnek.

A kifejezés története

A „paradigma” kifejezés modern jelentését a tudományos és műszaki területen nyilvánvalóan Thomas Kuhnnak és „ The Structure of Scientific Revolutions ” című könyvének köszönheti (lásd paradigma ). Kuhn paradigmáknak nevezte azokat a tudományos meggyőződésrendszereket, amelyeken belül a kutatás folyik. Kuhn szerint a tudományos diszciplína fejlődése során az egyik paradigma felváltható egy másikkal (mint például Ptolemaiosz geocentrikus égi mechanikáját felváltotta Kopernikusz heliocentrikus rendszere ), míg a régi paradigma továbbra is fennáll. egy ideig, és még fejlődni is annak köszönhető, hogy sok támogatója ilyen vagy olyan okból kiderül, hogy nem tudnak alkalmazkodni a más paradigmában végzett munkához.

A "programozási paradigma" kifejezést először Robert Floyd használta 1978-ban Turing -díjas előadásában [2] .

Floyd megjegyzi, hogy a programozás során megfigyelhető a Kuhn-paradigmákhoz hasonló jelenség, de azokkal ellentétben a programozási paradigmák nem zárják ki egymást:

Ha a programozási művészet egészének fejlődése megköveteli a paradigmák állandó feltalálását és fejlesztését, akkor az egyes programozók művészetének fejlesztése megköveteli, hogy bővítse paradigmarepertoárját.

Így Robert Floyd szerint a Kuhn által leírt tudományos világ paradigmáival ellentétben a programozási paradigmák kombinálhatók, gazdagítva a programozó eszköztárát.

Különféle definíciók

Nem minden szerző, aki a "programozási paradigma" kifejezést használja, nem meri intenzív definíciót adni ennek a kifejezésnek. Azonban még a fellelhető definíciók is komolyan különböznek egymástól.

Diomidis Spinellis a következő meghatározást adja [3] :

A "paradigma" szót a programozásban a jelölések (jelölések) családjának meghatározására használják, amelyek a programmegvalósítások közös módját (módszertanát) osztják.

Eredeti szöveg  (angol)[ showelrejt] A paradigma szót a számítástechnikában használják, hogy olyan jelölések családjáról beszéljenek, amelyek közös módon írják le a programmegvalósításokat.

Összehasonlításképpen ugyanaz a szerző más művek definícióit idézi. Daniel Bobrov [4] cikkében a paradigmát a következőképpen definiálják: " programozási stílus, mint a programozó szándékainak leírása ". Bruce Shriver a programozási paradigmát " problémamegoldási modellként vagy megközelítésként " [5] , Linda Friedman " programozási problémák megoldásának megközelítéseként " határozza meg. [6]

Pamela Zave a paradigmát a " számítógépes rendszerekről való gondolkodásmódként " határozza meg . [7]

Peter Wegner más megközelítést kínál a programozási paradigma kifejezés meghatározásához. " Az objektum-orientált programozás fogalmai és paradigmái " [8] című munkájában a paradigmákat úgy definiálják, mint " szabályok a programozási nyelvek osztályozására bizonyos tesztelhető feltételek szerint ".

Timothy Budd azt javasolja, hogy a „ paradigma ” kifejezést úgy kell értelmezni, mint „ egy módot annak meghatározására, hogy mit jelent a „számítás”, és hogyan kell a számítógépen megoldandó feladatokat felépíteni és megszervezni ”. [9]

A programozási paradigma, mint a problémák felállításának és megoldásának kezdeti fogalmi sémája, olyan tények, események, jelenségek és folyamatok grammatikai leírásának eszköze, amelyek esetleg nem léteznek egyszerre, de intuitív módon egy közös fogalommá egyesülnek.

Alapvető programozási modellek

Megközelítések és technikák

Lásd még

Jegyzetek

  1. Roganov, 2001 , "Programozási paradigmák" alfejezet.
  2. RW Floyd. A programozás paradigmái archiválva : 2007. február 11., a Wayback Machine Communications of the ACM , 22(8):455-460, 1979
  3. D.D. Spinellis. Programozási paradigmák mint objektumosztályok: strukturáló mechanizmus többparadigmás programozáshoz. PhD értekezés , Londoni Egyetem, London SW7 2BZ, Egyesült Királyság, 1994. február.
  4. Bobrow Főigazgatóság. Ha a Prolog a válasz, akkor mi a kérdés. // Fifth Generation of Computer Systems , 138-145. oldal, Tokió, Japán, 1984. november. Institute for New Generation Computer Technology (ICOT), Észak-Holland.
  5. BD Shriver. szoftver paradigmák. IEEE Software, 3(1):2, 1986. január.
  6. LW Friedman. Összehasonlító programozási nyelvek: a programozási függvény általánosítása. Prentice Hall, 1991, 188. oldal.
  7. P. Zave. A többparadigmás programozás kompozíciós megközelítése. IEEE Software, 6(5): 15-25, 1989. szeptember.
  8. P. Wegner. Az objektumorientált programozás fogalmai és paradigmái. {OOPS} messenger} , 1(1): 7-87, 1990. augusztus.
  9. T. A. Budd. Többparadigmás programozás LEDA-ban. Addison-Wesley, Reading, Massachusetts, 1995.

Irodalom

Linkek