2015-10-26 3 views
1

Я пытаюсь построить игру, которая будет основана на (я думаю, что это лучший способ для какой-то pokergame ?!) архитектуры клиентского сервера.Возможно ли создать приложение для Linux?

Я использую плагин Xamarin для Visual Studio 2015 и Xamarin.Forms для моего Android-клиента (позже я мог бы создать клиент IOS и клиент Windows Phone, поэтому я выбрал Xamarin.Forms).

Поскольку я хотел бы не иметь Windows Server, я собираюсь внедрить приложение linux-сервера, которое взаимодействует с моими клиентами.

Теперь у меня есть два основных вопроса:

  1. Можно ли построить приложение Linux с Xamarin в Visual Studio плагин на Windows? Если нет, как бы вы это сделали?
  2. Как бы вы взаимодействовали со своими клиентами, есть ли свободные рамки, которые предлагают мне автоматическую транспортировку объектов между клиентом и сервером? Я видел, что есть Framework под названием NetworkComms.NET, но даже не-коммерческая версия стоит реальных денег.

Прошу прощения за этот слегка широкий/основанный на мнениях вопрос, но я понятия не имею, как лучше всего пометить или задать эти основные вопросы.

+0

Xamarin не поможет, но вам не нужны. Просто создайте консольное приложение с .NET и запустите его на Mono. Существует много способов общения, но предложения библиотеки не соответствуют теме. –

+0

Стандартное консольное приложение, которое поставляется с VS.NET или конкретным моно-одним? – Jannik

+0

Не нужно ничего конкретного, просто обычного. Пока вы используете то, что предоставляет Mono (это большая часть .NET), он будет работать нормально. –

ответ

2

Для создания серверного приложения с .NET для Linux вам не нужен Xamarin. Вы можете использовать Visual Studio, создать консольное приложение и запустить его с помощью Mono в Linux.

Вы можете использовать большую часть того, что предлагает .NET, дополнительную информацию о application portability на сайте Mono.

Вы можете использовать пакеты NuGet, если они управляются кодом, или есть родная версия Linux. Собственный код Windows не будет работать непосредственно в Linux. Некоторые собственные библиотеки, такие как SQLite, доступны в Mono и будут работать без проблем.

Вы можете создать приложение с помощью Visual Studio, а затем при необходимости развернуть исполняемые файлы в Linux, или вы можете скомпилировать все это с помощью Mono. Последний может отображать скрытые ошибки, если вы используете некоторые части .NET, которые Mono не предоставляет, но при регулярной разработке они не появятся.

+0

Большое спасибо. :) Что вы предлагаете, так это скомпилировать сборки не с VS, а с MonoDevelop? Он возьмет код и скомпилирует его с помощью моно-Framework, в то время как VS примет стандартную платформу .NET Framework? – Jannik

+0

@Jannik Я бы предложил по крайней мере протестировать компиляцию с помощью Mono, чтобы узнать, есть ли у нее какие-либо проблемы. Но вы также можете полностью разработать MonoDevelop, если хотите, тогда вы будете использовать то, что Mono позволяет все время. –

+0

Причина, по которой я так много спрашиваю, потому что вчера у меня были проблемы с классом IPAddress. Xamarin.Forms не поддерживал его, потому что он внутренне использует специальные вещи, такие как socketing. Так как Xamarin использует mono, мое приложение для консольного приложения не будет знать IPAddress так же хорошо? – Jannik

Смежные вопросы