Node.js-server-kérdés(?)
2017-05-20T19:15:54+02:00
2017-05-27T18:56:35+02:00
2022-07-21T13:12:36+02:00
  • Forraskodot teszek majd ki ide
    Mutasd a teljes hozzászólást!
  • Mint ahogy azt elobbi valoszamban is irtam amolyan "bucsu" cimmel, mar letettem a voksomat a python mellett.
    Mutasd a teljes hozzászólást!
  • Ahelyett, hogy megpróbálod összehasonlíttatni velünk az összes létező programozási nyelvet, próbálj először szerezni némi hálózati ismeretet (pl. egyetemi jegyzetekből vagy szakkönyvekből), aztán kezdj el kísérletezni bármelyik nyelvben, amelyik első ránézésre szimpatikusnak tűnik. Nagyon mellélőni nem tudsz, ha pedig eljutsz odáig, hogy egy normális rendszert kell majd összeraknod, már meglesz annyi szaktudásod, hogy könnyedén, néhány hét gyakorlással nyelvet vagy platformot válts, ha a feladat azt kívánja.
    Mutasd a teljes hozzászólást!
  • Hát, érdekes egy útvonalat futottál be pár nap alatt....

    Majd szólj, ha produkáltál valamit pythonban :)
    Mutasd a teljes hozzászólást!
  • Python mellett tettem le a voksomat.
    Köszönöm a segítségeteket.
    Második nyelv a C# lesz
    Mutasd a teljes hozzászólást!
  • Ennyi önállósággal úgy kb. 0% esélyed bármilyen sikerre, bármilyen informatikai területen. De úgy általában az életben sem sok jók a kilátásaid...

    Itt egy kis segítség:
    LMGTFY
    Mutasd a teljes hozzászólást!
  • Minden bizonnyal sokan ismeritek a LoL,Dota,Hearthstone vagy hasonlo nagy volumenu jatekokat. Ezeknek a szerveret a ketto nyelv kozul(c# vagy python) melyikben irnatok? Es miert? (Ne azert mert kenyelmesebb, hanem vmi nyelvi elony/hatrany alapjan vallaszatok kerlek)
    vagy mondjuk egy facebook appot, ami nem kommunikal http-n, csak tcp/ip protokollon. Azt melyik nyelvben? Es itt is erdekelne a miertje..
    Mutasd a teljes hozzászólást!
  • Vagy mondjuk egy nagy szervernél mi az előnye a C#-vel szemben a pythonnak? És hátránya?
    Vagy erre a feladatra kb hasonló kaliberű a két nyelv?
    Vagy Python jobb,mert...?
    Vagy C# jobb,mert...?
    Vagy, a tcp servereknél a pythont gyakrabban használják,mert...? Vagy a C#-t gyakrabban használják, mert..?
    Python server több klienst tud kiszolgálni,mert..?
    C# server több klienst tud kiszolgálni,mert..?
    Ez csak a server, ami windows-os gépemen futna. Lényegében lényegtelen ebből a szempontból, hogy melyik?
    Vagy python előnyösebb, mert (pl.: kevesebb memóriát használ) vagy C# előnyösebb,mert(pl. kevesebb memóriát használ..)

    Feltettem sok-sok kérdést.
    Valaki lenne oly kedves, és összehasonlítaná nekem?
    Köszönet érte!
    Mutasd a teljes hozzászólást!
  • Es egy servernel(nem http,hanem tcp/ip/socket) mennyire fontos a futasido? Mi az ami igazan szamit es aminek a python eleget tud tenni?illetve mi az, aminek nem?
    Mutasd a teljes hozzászólást!
  • A python minden linuxos rendszeren ott van alapból. A C# viszont nem mondható alapnak.
    A linux rendszerfeladatok elvégzésre manapság a python tűnik a legkönyebben használható választásnak. Kifejezőbb, mint a BASH és nagyon jó autómatizálási megoldások vannak hozzá. Az Ansible elégé elterjedt Linux körökben, bár most nekem a ruby megoldások is szaporodni látszanak (puppet, chef).
    A tudományos világban szintén nagyon jól használható komponensek vannak hozzá, ott az ipython, panda, numpy.
    Nem a leggyorsabb futásidőben, de egy kiemelkedően jól támogatott általános nyelv, ami nagyon könnyen tanulható és hatékonyan lehet benne fejleszteni.
    Mutasd a teljes hozzászólást!
  • De miért a python a sztárnyelv?
    Mutasd a teljes hozzászólást!
  • lattam egy osszesitest wikipedian talan, hogy a nagyobb cegek google meg ezek milyen nyelveket hasznaltak/nak. Python azert eleg sok cegnel elofordult, mig c#-t szinte sehol se lattam..

    Igen, az tény, hogy a kettő közül ma egyértelműen a Python a sztárnyelv. Nyilván az sem véletlen, hogy bár tudok valamennyire C#-ul (meg C/C++/Java/JavaScriptül), mégis belenézek a Pythonba is. De itt az 'is' fontos részlet: bármelyik nyelvet is választod, az valószínűleg nem tart majd ki (el) nyugdíjig.
    Mutasd a teljes hozzászólást!
  • C#-ben vagy pythonban? Ha még nem ismernéd egyiket se..

    Ha egyiket sem ismerném, "jól" választani sem tudnék, csak annyira, mint bárki más. Neked kéne eldöntened, hogy melyik nyelv érdekel jobban. Mindkettő általános célú programozási nyelv, mindenfélére használhatók és használják is őket.
    Látványosan különbözik viszont a kinézetük, a C# a C/C++/Java/JavaScript vonalat követi, kapcsoszárójelekkel meg pontosvesszőkkel, a Python viszont formázással (behúzás) képez blokkokat. Ezen kívül a Python-ban dinamikus típusa van a változóknak (az éppen beléjük tett értékeké), amit így nem kell kiírni, C# esetén meg statikus a típusuk, amit hagyományosan ki is szokás írni (bár újabban már a fordító is ki tudja találni). És ez még csak két eltérés volt.
    A Python-t azért is lehet szeretni, mert interaktív használatra is alkalmas, akár böngészős környezetben is lehet próbálgatni (pl. repl.it , de a tutorialspoint.com-on is van hasonló). Megnyitod, beírod, hogy a=5;b=6;a+b, megnyomod az Entert, és lett két változód meg kiírja az összegüket.
    Van azért C#-os is: repl.it , csak ott azt kell beírni, hogy class teszt{public static void Main(string[]args){int a=5;int b=6;System.Console.WriteLine(a+b);}} - ami egy komplett program, befoglaló osztállyal (teszt), benne egy metódussal (Main), és abban végülis van egy a meg egy b nevű változó és az összegük is kiíratásra kerül.
    Mutasd a teljes hozzászólást!
  • Csak erdekelne, hogy kinek milyen tapasztalai vannak az adott nyelvekben ezen a teruleten.. sztem c# lesz a valasztottam.. vagy python...

    lattam egy osszesitest wikipedian talan, hogy a nagyobb cegek google meg ezek milyen nyelveket hasznaltak/nak. Python azert eleg sok cegnel elofordult, mig c#-t szinte sehol se lattam..
    Mutasd a teljes hozzászólást!
  • Miben állnál neki egy összetettebb szerver megírásához? C#-ben vagy pythonban? Ha még nem ismernéd egyiket se..

    Teljesen mindegy, mert úgyis rossz lesz.
    0 tapasztalattal nem fogsz egy top kategóriás szerver-hálózatot, rendszert összepakolni. Ez amúgy sem egy emberes munka.

    Miért más személyes preferenciája szerint választasz nyelvet? Te fogod használni, nem ő..
    Mutasd a teljes hozzászólást!
  • Csak a szerver oldali részre. Te melyiket választanád? Miben állnál neki egy összetettebb szerver megírásához? C#-ben vagy pythonban? Ha még nem ismernéd egyiket se..
    Mutasd a teljes hozzászólást!
  • Es ha "jobb/rosszabb" alapon kene tortenni a valasztasodnak, akkor melyikre tenned le a voksod?
    Mutasd a teljes hozzászólást!
  • Te pythont vagy c#-t valasztanal?

    Ebből a két nyelvből, ha munkára kéne, záros határidővel, C#-ot választanék, mert azt már elég jól ismerem. Ha hobbiból, tanulni/gyakorolni kéne, de még mindig ebből a két nyelvből, akkor meg Python-t, mert azt még nem ismerem annyira jól. Szóval ezek eléggé szubjektív választások, nem "jobb/rosszabb" alapon történtek.
    Ja, és én Windows-on dolgozom, szóval C#-hoz adott a Visual Studio, ami azért elég jól ki van találva. Más operációs rendszerrel a C# már nem feltétlenül ilyen kényelmes választás.
    Mutasd a teljes hozzászólást!
  • Te pythont vagy c#-t valasztanal?
    Mutasd a teljes hozzászólást!
  • Hát, C-ben is mindent meg lehet oldani, csak nem biztos, hogy érdemes. A hibakezelés bír durva lenni. Persze elszállni kb. ugyanolyan könnyű minden nyelvben, de ha mondjuk egy kliens megszűnik, és fel kell szabadítani a hozzárendelt erőforrásokat, akkor a Java/C#/Python mind-mind egyszerűbben és tömörebben oldja meg a feladatot. Ilyenkor a kivételkezelés és az automatikus erőforráskezelés nagyon sokat segítenek.
    Mutasd a teljes hozzászólást!
  • Igen megoldottam kozben, azert is toroltem. De koszonom :D
    Nahat, vannak itt meg segitokesz emberek. 
    Akkor meg felteszek par kerdest, aztan nekiallok, mert gondolom sokan unjak mar itt a tetovazasomat :D 
    a c nyelvhez rengeteg rengeteg halozati programozasos pdf meg minden van a neten fent. Szerintetek az milyen valasztas?
    Mutasd a teljes hozzászólást!
  • A valós idejű szimuláció az mit jelent?

    Azt, hogy a szerveren folyamatosan történnek a világ eseményei, akár kíváncsi rájuk egy kliens, akár nem.

    De mivel említetted a LoL-t, mondjuk egy olyan szintű játékhoz szervert lehet pythonban (JÓL) megírni?

    Igen, ennek elvileg nincs akadálya.

    Amúgy a törölt Python-os kérdésedben szerintem jó volt a kód, csak a socket.send-nek nem adhatsz át szöveget (de egy bytes() hívással már megoldható pl.)
    Mutasd a teljes hozzászólást!
  • A valós idejű szimuláció az mit jelent?
    De mivel említetted a LoL-t, mondjuk egy olyan szintű játékhoz szervert lehet pythonban (JÓL) megírni?
    Mutasd a teljes hozzászólást!
  • Jaa, tehat akkor maga a szerver, hogy miben van irva az lenyegtelen ugymond?

    Nem lényegtelen, de az első változatnál senki sem szokott nagyon foglalkozni vele. Ha egy játék befut, akkor már van pénz a szerver újraírására is.
    Amúgy lényeges kérdés, hogy mi a szerver feladata. Ha valósidejű szimulációt kell futtatnia, az más jellegű terhelés, mintha csak a játékosok tevékenységét kell közvetítenie.

    barmelyik nyelvben irt szerver kepes mondjuk a koordinatak GYORS tovabbitasara a felek kozott?

    Kezdetben a gyorsaság sokkal jobban függ a hardvertől (a netkapcsolatot is ideértve), mint a nyelvtől. Mivel multiplayer a játék, olyan technológia kell, ami kétirányű kommunikációt tesz lehetővé és nem szeparálja el az egyes munkameneteket egymástól (hiszen cél az egyik játékos tevékenységének hatásait eljuttatni a többi játékoshoz). Egy csupán HTTP-re képes webszerver nem olyan jó választás, de kb. bármi más már lehetővé teszi az elindulást.

    Meg chatre is?

    A chat követelményei jóval lazábbak, mint egy játékszerveré. Szóval ami a játékot ki bírja szolgálni, az a chat-et is. Persze tízmillió felhasználóval minden bonyolultabb, a LoL-osoknak vannak a chat-jükről külön publikációik, How League of Legends Scaled Chat to 70 million Players - It takes Lots of minions. - High Scalabili , meg a benne lévő linkek pl.

    A jatekok megjelenesenek van koze a szerverhez?

    Nincs, a grafika alapvetően kliensoldali, kísérleti technológiák csinálnak ezt-azt szerveren (de az sem a játékszerver, hanem külön az adott feladatra), pl. felhőszimuláció (mármint nem számítási felhő, hanem egységes időjárás - repülőgépek szimulációjánál már lényeges lehet, hogy mindenkinél pontosan ugyanolyan látási viszonyok legyenek, különösen ha lőnek is egymásra).

    Vagyis, hogy mondjuk minel jobb egy server, annal gordulekenyebben mozognak a jatekosok pl?

    Igen és nem. Igen, minél gyakrabban cserélnek adatokat, annál folyamatosabb az ellenfelek mozgása (lehet extrapolálni, de mikor megjön a valódi adat, akkor esetleg teleportál egyet az ellenfél). De mondjuk a játékosok mozdulatainak a folyamatossága már a kliensen múlik.
    Mutasd a teljes hozzászólást!
  • Jaa, tehat akkor maga a szerver, hogy miben van irva az lenyegtelen ugymond?
    mert akkor barmelyik nyelvben irt szerver kepes mondjuk a koordinatak GYORS tovabbitasara a felek kozott? Meg chatre is? A jatekok megjelenesenek van koze a szerverhez? Vagyis, hogy mondjuk minel jobb egy server, annal gordulekenyebben mozognak a jatekosok pl?
    Mutasd a teljes hozzászólást!
  • Én nem hiszem hogy bármelyik különösebben szóba jöhet egy ilyesfajta játék esetén. Én nem készítettem még játékot, nem is vagyok tájékozott a témában, de nem hiszem hogy ezeket a grafikai elemeket külön leprogramoznák a játék készítői. Ezt teljesen laikusként úgy képzelem, hogy van valami 3D stúdió szerű programjuk ahol megtervezik a látványt, a mozgást, majd valahogy mozgásra bírják különböző utasításokkal. Na most leginkább az a kérdés hogy melyik az a programozási nyelv, amivel hozzá lehet férni ezekhez az utasításokhoz. Sőt, nem is a hozzáférés a lényeges kérdés, hanem hogy pontosan melyik nyelv alatt érhető el a legjobb support. Mert hiába van valami laza komponens node.js vagy python alatt, ha egyszer a kutya  se használja és lépten nyomon önállóan kellene boldogulnod. Amúgy maga a játékmenet, a hálózati forgalom biztosan nem fog elakadni egyik nyelvben sem, vagy ha mégis, akkor az inkább tervezési/hálózati/programozói/szervezési probléma és nem maga a nyelv gyengesége miatt lesz
    Mutasd a teljes hozzászólást!
  • Tovabbra se tudom..
    Mutasd a teljes hozzászólást!
  • Vagy, ami még felmerült: Python.

    Ezek, amiken vacilálok.
    C../node js/Python/PHP

    Szerintetek erre a célra(nézzük nagyban, pl.: Dota szintű játék) melyik lenne a legalkalmasabb,leggyorsabb(server oldalra)?
    Mutasd a teljes hozzászólást!
  • Miert akkor hogy mondjak?

    es miert nem? Lassabban mukodne? Macerassabb, de ennyivel? Vagy miert nem olyan "jo moka"?
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd