Что эффективнее использовать для разработки игр? C# или Java?
В 6 лет я лишился зрения. Сейчас, я изучаю программирование. Я знаю основы C++/C#/Java/Python/PHP. Я выбирал язык программирования для разработки звуковой игры. В итоге, я выбираю между C# и Java.
Звуковая игра - игра, как правило для слепых, без графики. В мире существует много таких игр. Гонки, шутеры и т.д.
Я хочу разрабатывать шутеры. Такие как Call Of Duty.
Я не могу использовать игровые движки, такие как Unity, Unreal Engine или Cry engine, потому что редакторы этих движков визуальные, и они мне не доступны.
Сейчас я выбираю между C# и Java, потому что мне нравится синтаксис этих языков. Ранее, я думал о C++, но я понял, что это слишком сложный инструмент для меня.
Что я жду от языка:
Возможность создания игрового окна;
Работа с клавиатурой и мышью;
Библиотеки для работы с 3D звуком;
Библиотеки для 3D вычислений, повороты, движение в 3D пространстве и т.д;
Работа с сетью;
Кросс-платформенность желательна, но не обязательна. Главная операционная система - Windows.
Я понимаю, что выбор за мной, но я хочу услышать ваши мнения.
Что я думаю о C# и Java для решения моих задач:
C# - мощный язык программирования. Имеет Windows Forms, IrrKlang для работы со звуком, портированную библиотеку Bullet Physics. Что мне не нравится в C#, это привязанность к NET, отсутствие кросс-платформенности. Я не смогу разработать хорошее приложение под Android.
Java - высокоуровневый язык программирования, главное кросс-платформенный. Будет проще разрабатывать игры, которые будут работать под Windows, Linux, Android. Я не знаю почему, но синтаксис Java мне нравится больше, чем C#. Мне кажется, что Java более прямой, чем C#. Я пишу точно алгоритм приложения. Через код я могу открыть окно, указать его размеры, возможности. При этом я не знаю, на сколько хорош Java для игр. Я разрабатываю игры без графики, по этой причине мне не нужна очень высокая производительность. Но я хочу быть уверенным, что Java хороший инструмент, который будет помогать мне. Ещё 1 плюс Java для меня, в будущем, я смогу найти высокооплачиваемую работу на Java.
Посоветуйте, что лучше для решения моих задач и почему!
Заранее благодарен!
Java и libgdx к ней. Из коробки под все платформы разом (windows\linux\macos\android\ios\web), никаких утилит чисто графических нет что будет очень удобно для незрячего и экранных читалок.
языка под все платформы одинаково хорошего - не существует.
Это само по себе отдельная проблема. Все бы хотели писать на одном языке под все. Но так невозможно. Не основные для данного языка платформы или вообще не поддерживаются языком или поддерживаются из рук вон плохо. Тот же Xamarin - хрень на палочке.
если основная платформа Windows, то самый заточенный и развитый под Windows это С#