Mi értelme több programnyelvet használni?
Minek egy ház építésénél különböző anyagokat használni, nem elég egy?
Minek különböző típusú autókat használni, nem elég egy?
Pont ugyanezért kell több programnyelv is. Mindig az adott helyzettől függ, hogy éppen az adott feladatra melyiket a legoptimálisabb használni.
Különböző nyelvek más dolgokra jók, más dolgot tesznek lehetővé/könnyebbé. Néhány példa:
A legtöbb feladatot sokkal gyorsabban meg lehet oldani Python-ban, mint C-ben, viszont a kód lassabban fog futni/több erőforrást igényel majd. Ez olyan esetekben, ahol minden csepp teljesítményt ki kell sajtolni a hadverből (driverek, mikrokontrollerek), egyszerűen nem elfogadható, és inkább dolgozol ötször-tízszer annyit, viszont megfelelő sebességet produkál a termék(persze, vannak kivételek, de most hadd ne menjek bele minden részletbe, egy ilyen átfogó kérdésre órákig lehetne válaszolni).
Vagy a weboldalak alapja, a HTML. Rengeteg dolgot nem tud, de ez hordozhatóvá és könnyen értelmezhetővé tehető, ezért ad egy egységes nyelvet, ami köré lehet építeni a mai modern webet (ami mögött persze, tudom, több más nyelv is áll, de az alapja akkor is a HTML).
Ha már a weboldalaknál járok: Persze, meg lehet írni a backendjét egy weboldalnak C-ben, vagy Lua-ban is(ilyent sosem láttam, de elméletben nem látom okát, hogy ne lehetne), vagy éppen Pascalban, de megint elég sok dolgot meg kell hozzá tanulnod, értened, lassan megy. Ott van a PHP (és sok más is, de nekem a PHP a kedvenc nyelvem, szóval ezzel példálózom, akinek nem tetszik, váljon egészségére), ami nagyon könnyűvé teszi pl. a felhasználótól kapott input feldolgozását, nem mellesleg szorosan együttműködve a fenti HTML-el is.
Még mindig a webfejlesztés mellett maradva, milyen szép is lenne, ha nem csak HTML-ünk lenne, hanem valami más, amiben lehetne dizájnolni, KÜLÖN, mert akkor a front-end fejlesztő megcsinálná a dizájnt, és utána nem kellene senkinek attól félni, hogy a tartalom becopyzása közben az ezért felelős másik illető eltol valamit, és a frontendes végig kell böngéssze a fél kódot, hogy megtalálja a hibát. Ennek okán megalkottak erre egy külön nyelvet, a CSS-t.
A fentieken kívül még az is gond, hogy a programozásnak, pontosabban egy feladat megoldásának többféleképpen is neki lehet esni. Az eltérő megközelítéseket ún. paradigmáknak nevezzük, van belőlük több is, és sorban alakultak ki, így más-más nyelvek is íródtak rájuk. Pl. az objektum-orientált paradigma viszonylag új, ezért annak új nyelveket kellett alkotni(pl. C#), amik kimondottan arra valók, hogy objektum-orientált módon oldják meg a feladatokat. Később persze a hagyományosabb nyelvekbe is megtalálta az útját, így született meg a mindenható C++, áldjuk a nevét és a benne megírt Photoshopot.
De akkor felmerül a kérdés, hogy ennyi közül hogy lehet egy elsőt választani? Többek között ez is azon meggondolások között lehetett, amik a Pascalt inspirálták, ez ugyanis annak idején kimondottan tanulónyevlnek indult, standardizált, és szinte az angol pszeudokód lefordulásra képes változata. Később persze ez is megváltozott, lett egy objektum-orientált nagytestvére, amiben pl. a Skypot(Skype-ot? Ha valaki itt vagy privátban kioktatna a helyes formáról, örülnék neki) és a Total Commandert írták, de a mai napig kiváló tanulónyelvnek (just for the record: Ennek ellenére én elsőnek a Pythont ajánlom, de hogyha valaki elkezdte már Pascallal, vagy jobban tetszik neki, vagy éppen ahhoz van otthon könyve, abszolúte megfelelőnek tartom azt is; nyugodtan lehet azzal kezdeni), ellentétben pl. a C++-al v. C-vel, amiket elég sokan elsőre nehézkesnek tartanak, és úgy vélik, elveszi azt a kezdeti sikerélményt, ami szükséges ahhoz, hogy valakinek kedve legyen tovább menni.
Ez csak néhány példa volt egy nagyon sok dolgot felölelő kérdésre, ha kisebb pontatlanságok vannak benne, azokért elnézést, nagyobbakat nem találtam, de ha valaki konstruktív módon kijavít, örömmel veszem.
TL; DR: ugyanazért, amiért gyártanak még külön 10-es és 13-es kulcsot, pedig létezik franciakulcs is.
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!