Diskuze: Herní nebo GUI knihovna
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Ahoj, na hry bych se vrhnul rovnou na C#, tam třeba Unity engine a nebo si klidně psát svůj vlastní, pokud chceš pořádně pochopit, jak to všechno funguje uvnitř.
Osobně na 2D používám vlastní engine, kterej používá SharpDX a FMOD - např. na https://www.itnetwork.cz/…va-strategie
a na 3D pak Unity, protože to spoustu věcí udělá za tebe, např. https://www.itnetwork.cz/…-hra-v-unity
C++ na hry bych se spíš vyhnul, ne že by to bylo špatný, ale při vývoji her je hlavním problémem nedostatek času, a C# ti spoustu času oproti C++ ušetří.
Ať už tím, že nemusíš řešit hlavičkový soubory, rychlost kompilace
(která u větších projektů může být pro C++ i desítky minut), zatímco
podobně rozsáhlý C# projekt bude pořád trvat jen několik vteřin.
Míň problémů s memory managementem (ačkoliv u C# je dobrý dávat si bacha,
abys zbytečně nezatěžoval GC).
Míň problémů s používáním knihoven (v C++ třeba bejvá problém
slinkovat statický knihovny z různých kompilerů, takže si to kolikrát
musíš všechno kompilovat sám přes stejnej kompilátor, takže potřebuješ
zdrojáky a někdy dokonce si i k tomu zkompilování knihovny sehnat všechny
knihovny, na kterých je daná knihovna závislá).
Ak sa chceš učiť niečo, po čom je práve dopyt, tak sa pusť do
webového vývoja v čomkoľvek a máš o prácu postarané Java trochu na ústupe, ASP.NET /
ASP.NET Core, Javascript vo všetkých možných podobách, v menšej miere
Python, tradične PHP… Vyber si.
Pokiaľ by si sa chcel držať desktopového sveta, tak s WPF určite nešliapneš vedľa a práce bude tiež dosť.
Keby si chcel pracovať vo videohernom segmente, tak ošahať si dvojicu
enginov Unity a Unreal ti väčšinou postačí a je dnes takpovediac nutnosť.
Väčší dopyt je tradične po Unity, ale prevažuje skôr u malých či
stredných firiem. Ak cieliš na známe, medzinárodné mená, tak budeš
potrebovať solídne znalosti C++ a Unreal.
V prípade, že by si chcel zisťovať bližšie, ako tie enginy vlastne
fungujú, tak OpenGL a DirectX nie sú zlá voľba, aj keď pre začiatočníka
sú určite náročnejšie. Pre taký prehľad toho, čo všetko vývoj
kompletného enginu a hier obnáša si môžeš pozrieť napr. tieto materiály
https://is.muni.cz/…19/PA199/um/
Ak chceš myslieť hlavne do budúcnosti (ale nestratíš sa s tým v žiadnom prípade ani teraz), tak sa začni čím skôr obzerať po service-oriented architecture, microservices, cloude (napr. AWS, Azure) a nezaškodí niečo praktické vedieť o DevOps.
Nech už sa vydáš akoukoľvek cestou, uisti sa, že pred prechodom na náročnejšie a viac špecializované témy rozumieš podstatným základom - minimálne teda by si mal perfektne rozumieť OOP, základom architektúry, ovládať a uplatňovať best practices a vedieť písať clean code. Nezaškodí mať prehľad v základoch práce s dátami (najčastejšie to znamená SQL), multithreaded a paralelnom programovaní a pred prvou prácou by bolo fajn vedieť aj o tom, ako taký komerčný vývoj vyzerá po organizačnej stránke (naštudovať si niečo o životnom cykle SW a agilných metodikách vývoja - Scrum, Kanban, Lean).
A ešte jedna poznámka na záver - ak budeš chcieť ďalej niečo robiť s C++, pridaj si na ten zoznam aj zvládnutie práce s templatemi a smart pointermi .
Do webového vývoje jsem se už jednu dobu pouštěl, ale od hodně lidí jsem slyšel, že to dneska dělá každý druhý. Z toho jsem usoudil, že to zvládne téměř každý a uchytí se opravdu jen ti nejlepší. Jak to tedy je ? A co říkáte na C++ spolu s Qt ? Hádám, že tam bude menší poptávka, než u WPF a možná to bude i složitejší na naučení.
Zobrazeno 4 zpráv z 4.