с# или java для десктопной игры?
Хочу сделать маленькую десктопную игру и хотел бы узнать, что лучше выбрать C# или Java? Сам склоняюсь к c# , так как с ним более знаком, но хотелось бы узнать преимущества своего выбора.
Ответы (1 шт):
Конечно, те, кто написал комментарии выше, прАвы.
Возможно, что писать на том, что лучше знаешь - это совершенно правильное решение.
Но я всё таки рискну посоветовать C#. Причина проста: уже много лет, до того, как появился NET Core, C# развивался как платформа "windows only". Благодаря тому, что эта штука работала только под виндой, для неё было разработано довольно много библиотек, связанных с графикой, как от низкого уровня "типа GDI+" (просто обёртка вокруг WinAPI), и до довольно высокоуровневых.
О них стоит сказать отдельно.
У C# при разработке десктопной игры есть "секретное оружие". Это оружие - Unity 3D. я знакомлюсь с Unity 3D совсем недавно, но я буквально поражен возможностями платформы. Можно писать не только "трехмерные", но и 2D и псевдо-3D игры, причем, этот процесс не выглядит "суперсложным". я примерно неделю проходил уроки по Unity 3D, и наконец стал понимать, "куда там коей запрягать" и, наконец, дошел до программирования на C#. И эта сместь - современный графический движок, и возможности программирования на мощном языке C# - это просто фантастика!
Несмотря на то, что в интернете часто пишут, что "Unity 3D по сравнению с Unreal - это слабое подобие левой руки" - я сравнивал движки, и разговаривал с людьми, которые являются профессионалами в Unreal. И надо сказать:
для игр начального и среднего уровня Unity 3D имеет больше преимуществ над Unreal, чем недостатков.
бОльшую часть претензий к "Unity 3D по сравнению с Unreal" можно решить правильной настройкой композиции сцены.
Кроме того - барабанная дробь! - Unity 3D является кроссплатформенной! То есть, знаменитый лозунг java "написано один раз, работает везде" - наконец то выполняется... правда, для комбинации Unity 3D + C#.
В общем, из за особенностей платформы у C# на десктопе есть, всё таки, преимущества.