Кросс-платформенный .NET? [закрытый]

Как будто вы пытаетесь получить доступ к объекту, который является null. Рассмотрим ниже пример:

TypeA objA;

. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException, что имеет смысл.

См. Также этот пример:

String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
6
задан Dan 11 September 2008 в 10:07
поделиться

8 ответов

Необходимо познакомиться с Моно проектом и MonoDevelop; специальная цель тех проектов состоит в том, чтобы позволить создавать и выполнять код.NET множества платформ, включая Windows, Linux и MAC OSX.

Так как Моно является переопределение.NET, это всегда отстает немного позади Microsoft.NET, но у них есть хорошее покрытие.NET 2.0 и некоторой.NET 3.x функции. Обратите внимание, что Моно выполняет двоичные файлы.NET, поэтому, пока Ваши функции программы поддерживаются Моно, можно взять приложение EXE, Вы соответствовали в Windows и выполняли его на Linux / Моно без перекомпиляции.

10
ответ дан 8 December 2019 в 04:57
поделиться

Вы лучше пишете это с помощью некоторого межплатформенного инструментария. Скорее всего, Вы не сможете использовать хорошего визуального разработчика (действительно, это зависит, на каком инструментарии Вы выбираете), но запись UI вручную не является действительно настолько трудной. Парни HTML делают все это время, и это - довольно обычная практика в мире неMS также.

Некоторые межплатформенные инструментарии UI с привязкой.NET

  • GTK# (фактический стандарт для Моно разработки, MonoDevelop IDE имеет встроенный конструктор форм, который использует этот инструментарий),
  • wxNET (на основе wxWindows, довольно сформировавшегося, но у Вас будет к созданному свой UI вручную),
  • Qyoto (на основе QT, это, вероятно, лучше, чем wxWindows, но Вам, возможно, понадобилась бы коммерческая лицензия от Trolltech, если Ваше приложение не может иметь лицензии с открытым исходным кодом),
3
ответ дан 8 December 2019 в 04:57
поделиться

Часть советует. Межплатформенное программирование похоже на программирование перекрестного браузера, и один верный вариант сделать протестировать, тест и тест на всех платформах, которые Вы хотите поддерживать.

3
ответ дан 8 December 2019 в 04:57
поделиться

Моно в настоящее время единственная опция. Это работает на этих платформах. И будут проблемы, не обязательно огромные, но все еще.

2
ответ дан 8 December 2019 в 04:57
поделиться

Проверьте Моно проект

Также взгляните на Silverlight или Flash для богатых интернет-приложений.

0
ответ дан 8 December 2019 в 04:57
поделиться

Я недавно записал немного приложения GUI C# на Linux, компилируя и выполняя использование моно. Я нашел, что должен был использовать "gmcs" компилятор, чтобы иметь доступ к современному C# и функциям .NET (моно 1,9 поставки с несколькими различными компиляторами).

И при компиляции .exe файла, я нашел, что должен был добавить, что "-target:winexe" переключаются для создания выполнения приложения в Windows, не имея всплывающего окна командной строки позади приложения.

Я должен все же узнать, как скомпилировать приложение .NET, которое в Windows будет работать от сетевых дисков, не требуя специальной конфигурации безопасности .NET на ПК. (Я думаю, что это - общий вопрос с приложениями .NET, но я все еще учусь.)

0
ответ дан 8 December 2019 в 04:57
поделиться

Как сказано ранее, Моно Проект является Вашим лучшим выбором, учитывая, он - общественная поддержка.

Если Вы находитесь в Visual Basic затем, REALbasic мог бы также быть достойный внимания, поскольку он имеет кросс-компилятор, который создает собственные исполняемые файлы. У них есть испытательный выпуск, который можно загрузить также

0
ответ дан 8 December 2019 в 04:57
поделиться

Честно я оценил бы Вашу клиентскую базу и Ваши существующие навыки. Если бы у Вас есть разделение 50/50 или даже 70/30 разделение Windows к не-Windows, Вы, вероятно, были бы более обеспечены с Java или некоторым другим межплатформенным инструментарием.

Моно достойная платформа (См. это ТАК, вопрос спросил приблизительно неделю назад), но если бы Вы делаете что-либо значительное, я пошел бы с инструментарием, разработанным для него.

BTW, если Вы хотите видеть то, на что приложение для GUI.NET похоже на Моно, вот является сообщением, которое я сделал каждый раз, когда я надел GUI NUnit, работающий Моно:

http://www.cornetdesign.com/2006/07/nunit-gui-running-green-on-monolinux.html

-1
ответ дан 8 December 2019 в 04:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: