Miért más minden nyelv szintaxisa?
Addig oké, hogy több programnyelv létezik, mindet másra használják. Azonban miért nem gondolkodtak el azon a programnyelv-fejlesztők, hogy valamelyest (közel) egységes legyen a szintaxis.
Pl. Tömbök
<C> int arr[5] = {1, 2, 3, 4, 5};
<C++> int arr [5] = {1, 2, 3, 4, 5};
<C#> int [] arr = new int[] {1, 2, 3, 4, 5};
<Java> int[] arr = {1, 2, 3, 4, 5};
<PHP> $arr = [1, 2, 3, 4, 5];
<JavaScript> var arr = [1, 2, 3, 4, 5];
Mert az egyes nyelvek másmilyenek, és máshogy épülnek fel, a fejlesztői mást találnak "intuitívnak".
Pl JS-ben élből nincsenek típusjelölések, így int helyett var szerepel. Viszont mivel a típust az érték határozza meg, ezért nem használhat olyan inicializációs listát, mint pl C-ben, ehelyett van egy eltérő szintaxisa a tömbökre, és az objektumokra (ez pedig az, ami C-ben nincs, lévén C-ben nem léteznek JS szerű objektumok).
PHP-nál hasonló a helyzet, csak ott a JS szerű objektumok is amolyan asszociatív tömbökként vannak kezelve, illetve ott a változóneveket megelőzi egy $ jel. Ez egyébként nem csak valami random szintaktikai elem, a $ egy speciális szimbólum a php-ban, ami egy változónév kiértékelését jelenti lényegében. Példa:
$one = 'two';
$two = 'three';
echo $one //output: two
echo $$one //output: three $$one -> $two -> three
Mindenre van indok, amire nincs az meg személyes preferencia maitt lett olyan, amilyen.
Amúgy a mókás az, hogy amiket itt felsoroltál, azok javarészt mind C-szerű szintaxissal rendelkeznek, szóval ezek még kidejezetten hasonló nyelvek.
Mert nem a Fidesz hatáskörébe tartoznak...
Viccen kívül: ugyan miért lenne egyforma? Pont azért találnak ki új nyelveket, hogy különbözzenek a régiektől, különben nem lenne értelmük.
Egyébként ha odafigyelsz, rengeteg hasonlóságot fogsz találni, pl. a ma használt nyelvek közül nagyon sok a C szintaxisából indul ki, mások az Algol-Pascalból vagy a BASIC-ből... Vannak nyelvcsaládok itt is.
Az olyan apró különbségek mögött, amiket felírtál, mély strukturális okok húzódhatnak meg. Gondolj bele, mit jelent a new int[], és miért van ott, akkor érteni fogod.
Máshogy működnek, nem tudod ugyanazt a szintaxist ráhúzni.
Pl php és js környezetben a változók dinamikusan kapnak típust, míg C, C++, C# nyelveken meg kell határoznod a változó típusát, mielőtt értéket adsz:
php: $a = 5;
c#: int a = 5;
A nyelv tömör és lényegre törő, annyit kell szintaxisban megadnod, amennyi feltétlen szükséges.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!