Mekkora a jövő a python alapú backend fejlesztésben?
Ma volt interjúm egy cégnél és azért jelentkeztem, mert úgytudtam, hogy egy adott dologgal foglalkoznak, amiben már van tapasztalatom.
Most kiderült, hogy amúgy az egy nagyon pici része a fejlesztésnek és valószínűleg nem nagyon lenne lehetőségem azzal foglalkozni. Helyette pythonnal kéne backendet fejleszteni.
Mivel még egyetemista vagyok és igaz, már egy adott témában picit elmélyedtem és van benne munkatapasztalatom, de még nincs semmi a kőbe vésve. Ha valamikor lesz idő kipróbálni egy új technológiát az most van (hiszen diákmunkából bármikor felállhatok és ott hagyhatom).
Tehát mennyire van itthon jövője a python backendnek? Mennyi a lehetőség benne?
Igazából nem az, hogy nem érdekel. A fejlesztés picit nyelvfüggetlen, így nem zavar ha full stack fejlesztőként mondjuk C# helyett python van a backenden. Főleg most egyetem alatt, mert még kezdő vagyok és most van időm kipróbálni ilyeneket professzionális környezetben, mert innen bármikor felmondhatok 0 indokkal diákmunkában.
Később 5 év tapasztalattal nem hiszem, hogy már el fogod menni új dologkat kipróbálni főállásban, just for fun. Ezért sem gondolom elvetendőnek.
Viszont ha itthon nincs jövője annyira a dolognak, akkor már sem próbálom, mert akkor tényleg ott van az az irány, amiről tudom, hogy van jövője, meg már van tapasztalatom is benne.
Hatalmas jövője van abból az okból, hogy lassan már alapnak számít mindenféle machine learning algoritmusokat a honlapokhoz illeszteni, ez meg annyira alap, hogy Pythonban van, hogy csak azok kezdik el Javában, Go-ban, akik szeretik a kudarcot.
Közben a Python is jön föl technológiailag mint a talajvíz, statikus kódellenőrzés, egyre nagyobb teljesítményű runtime és frameworkök. Pár év és tarolni fog. Csak az alkalmazások valósidejű, nagy terhelésű részét fogják Go-ban, Rustban írni, az alkalmazások egyre nagyobb része lesz Pythonban.
És nem vagyok Python fan, csak látom, mi megy. Ez.
#5 [link]
Azt meg ne próbáld nekem bizonyítgatni, hogy a Python gyorsabb BÁRMINÉL..
Valahol a lista nagyon végén kullog.
@6 "Valahol a lista nagyon végén kullog."
Az alkalmazások 80%ában teljesen mindegy, hogy az egy szálon futó process sebessége milyen. Még a sebesség centrikus alkalmazásoknál is inkább az fontos, hogy hogyan skálázódik a futási idő. Persze itt most nem feltétlenül back-end-ről beszélek.
Mondok egy példát: bioinformatikai folyamatokat írunk át Python alapokra. Az eredeti C implementáció ugyan kb másfél-két nagyságrenddel gyorsabb, a teljes adatszettre a C kód két hetes futási idejét a Python kód fél órára szorítja le. Mert egész egyszerűen ilyen jól skálázódik.
"viszont a machine learning / deep learning esetek szintén 99%-ában a Python az optimális választás"
"Nem fogsz PHP-ben neurális hálókat programozni, mert az ökoszisztéma alkalmatlan rá."
"Mondok egy példát: bioinformatikai folyamatokat írunk át Python alapokra"
Nagyon eltértetek a kérdéstől. A kérdező weboldalak backend részére volt kíváncsi, nem ML-re és hasonlókra. Úgy vélem a weboldalak backendjének nem szerves része az ML és bioinformatika, de javítsatok ki ha tévedek.
Az se nagyon meglepő, hogy sehogy nem teljesít a PHP ML téren, mert nem erre lett kifejlesztve. Ha meg ML lett volna a kérdés, mindenki rávágta volna hogy Python.
Amiről szó van egy weboldal backend, és ennek nézzük a sebességét. Erre jó mérés lehet, hogy hány kérést tud kezelni mondjuk 1 sec alatt. Meg lehet nézni, hogyan teljesít a PHP vs Python ilyen teszteken.
"Az eredeti C implementáció ugyan kb másfél-két nagyságrenddel gyorsabb, a teljes adatszettre a C kód két hetes futási idejét a Python kód fél órára szorítja le."
Nos akkor a C implementációval vannak gondok. Maga a Python programozási nyelv is C-ben lett írva, így ez nem is okozhatna túl nagy fejtörést szerintem.
De akkor mondok én is példát amit C/C++ alapon írtak és nem Pythonban:
- Op. rendszerek
- Bármelyik AAA játék
- Mikrokontrollerek
9. Nem tértünk el a kérdéstől. Az volt a kérdés, hogy "Mekkora a jövő a python alapú backend fejlesztésben?" És erre leírtuk, hogy nagy, indoklást is adva. Mi ezzel a problémád?
Amit írsz, hogy a Python lassú, a n00bok régi röhejes érve. Elmondom neked, hogy régen a PHP-ra mondták ugyanezt a Javával szemben.
Már akkor is az volt, bár te már lehet, hogy nem emlékszel erre, hogy volt a Javában írt iwiw, amely még csúcsidőn kívül is lassú volt mint állat, és volt a PHP-ban írt MyVIP (és nem mellesleg a kicsik "megHACKelt" PHP-t használó Facebook), amelyek meg mint a fénysebesség, úgy töltődtek. És ez a PHP4 világa volt... aztán jött a PHP7-8 és lám, most már azzal érvelsz, ez milyen gyors.
A Pythonnal ugyanez történik. Most a runtime gyorsítása van a Python roadmapjén, a cél a runtime-ot 5x-ére gyorsítani (és ezt már el is kezdték a Python 3.10, 3.11-gyel). Rengeteg gyorsító modul és runtime érhető el jelenleg is a Pythonhoz, pl. pypy, numba, cython, pythran, és vannak parallel library-k stb.
Ami talán még fontosabb, hogy van egy nagyon szuper Python-Rust könyvtár, a PyO3, amellyel nagyon könnyű Python modulokat írni Rustban. Legutóbb a pydantic nevű adatvalidációs könyvtárat írták át Rustra, amely így 11x-esére gyorsult (és mivel ezen alapul a FastAPI, ezért erre is van hatása).
Tehát ha arra vagy kíváncsi, hogy milyen a Python jövője a webfejlesztésben, akkor köszöni szépen, fényes. Ha van egy Python fejlesztő csapatod, akkor nem fogsz elkezdeni backendet fejleszteni PHP-ben csak azért, mert a techempower egyes benchmarkjain a PHP jobban teljesít...
Helyette, fejlesztesz egy prototípust Pythonban, azt elkezded profilozni, a lassú részeket átírogatni gyorsabbra (numba, cython, vagy csak simán numpy segítségével) -- és amikor már olyan óriási terhelésed van, hogy már a Cython se bírja (ami egy Python-C transpiler), akkor a kritikus részt szépen átírod Rustra. Voilá.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!