Diskuze: Technologie pro serverovou část aplikace?
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 19 zpráv z 19.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
zavisi aj od toho co od tej aplikacie ocakavas a co ma vykonavat, teoreticky by si to vedel postavit aj na WCF
Nenapadlo te to udelat v asp.net? Neni to tak tezky, predevsim WebForms se skoro nelisi od wpf nebo wf
Jako udělat serverovou obsluhu hry jako web? Nad tím jsem teda fakt nepřemýšlel nenapadá mě jedinnná výhoda :/
Pokud ,ale narážíš na celý projekt, tak klient hry je jasně daný v Unity, toho dělat v Asp.Netu je nemyslitelné.
Zkusil bych WCF a k tomu třídu HttpListener (https://msdn.microsoft.com/…vs.110).aspx), která ti umožňuje implementovat vlastni webový server.
Nebo jukni sem: http://stackoverflow.com/…p-web-server
Ehm no hezké, ale pořád nechápu proč to psát jako web?
Jako ASP.NET to můžeš jednoduše nahrát na nějaký hosting (http://myasp.net) a poběží ti to furt, navíc tam můžeš jednoduše generovat stránky (prostě jenom zobrazíš stránku bez jakéhokoli HTML, jenom s nějakým textem, ani to nezabaluj do <p>) podle argumentů z URL. Můžeš to jednoduše načíst i použít. Kdybys chtěl, mám někde i projekt, kde jsem stahoval zdrojový kód stránky, tak to můžeš použít.
Tak... proč vynalézat kolo?
HTTP ti poskytuje možnost se dorozumívat již existujícím protokolem, který
má nějakou strukturu, kdybys toto řešil po svém, musel by si ten protokol
navrhovat od začátku.
Vytvoření webové aplikace v ASP.NET mi přijde jednodušší než HTTP protokol, nebylo by to pro něj lepší? U ASP.NET ti to bude fungovat pořád, u HTTP se musíš starat o tisíc maličkostí. U ASP.NET jenom stáhneš zdrojový kód ze stránky domena.cz/get-user-info?usertoken=abcd a okamžitě máš všechno, co zrovna potřebuješ.
Ehm no abych to trošku asi přiblížil, víc jde o záležitost kde jde na serveru veškerá logika, dotyčná věc má i přihlašování uživatelů.
V současné době se každý nový client připojí na své vlákno a v tom si žije vlastní život
Používám k tomu z .Netu TcpClient a TcpListener
Eh.. ja si nejsem jistej, jestli tady málodko chápe zadání, nebo ho tady nechápu jen já
pokud jsem to správně pochopil.. on má standardní Client-Server aplikaci.. Prostě server k multiplayer hře a chce tam přidat jen nějaký control panel, kteýrm to pujde ovládat, aby to pokud možno nemusel dělat nějak v UNITY.
Takže mu rozhodně nestačí "jen" aspčko, potřebuje něco realtime.. Osobně souhlasim s někým nahoře.. Tedy... na server WCF servisa s exposnutým bindingem.
A na kontrol panel klidně to .NET MVC, které bude komunikovat s tím WCFkem přes třeba Http binding
Pokud je ta hra aspoň trochu realtime (odpověď je potřeba rychlejc než řekněme za sekundu), tak je ASP.NET nesmysl.
Osobně nevidím moc důvod to měnit z console app na něco jinýho .
Eh pardon.. upsal jsem se.. (vetsinou WCF hostim jako win servise, tak to mam nejak spojene)..
Osobně bych to taky zachoval jako consolovku a asi exposnul nejakyho http clienta.. pro treba ASP MVC, nebo desktopovou aplikaci.. prostě ty chceš mít :
Clienty - Unity3D
Herní server - Console application + http binding (jen pro potreby control
panelu)
Control panel - Desktop applicaiton (winforms/wpf) , web applicaiton (mvc)
O úplně realtime záležitost nejde, ale zpoždění sekundu mít bezdůvodně určitě nechci
Ke kolegovi nahoře, server v Unity určitě nechci jak říkáš, zbytečně šíleně nabaleného zvlášť když už to jednou funguje v console app
jak jsem uvedl úplně na začátku jedinný důvod proč to do něčeho změnit je nějaké hezké adminské GUI, překopírovat Console app do WPF je za minutu a pak si jen už můžu skládat kontrolky, tak mě zajímal i jiný názor
Osobně nevidím důvod proč ten control panel a server od sebe oddělovat
protože v consolove aplikaci neudela GUI (musel by ji omezit do STA). A naopak neni vůbec ideální dělat server uvnitř desktopové aplikace. To souvisí především s tím STA .
single-thread-appartments
https://msdn.microsoft.com/…=vs.85).aspx
Zobrazeno 19 zpráv z 19.