.NET или Моно по сравнению с QT, который для кросс-платформенной разработки?

У меня пока нет разрешения комментировать, поэтому я должен ответить вам здесь.

Переменная char кодируется 8 битами, поэтому она может иметь 256 значений [0,255]. Печатные символы можно найти в таблице ASCII , где вы можете видеть, что символ a равен десятичному значению 97.

Если вы рассматриваете символы как десятичное значение, я уверен, что вы сами сможете выяснить, как перейти от a (97) к A (65), чтобы вы могли выполнить ту же операцию для любого символа.

16
задан 4 revs 23 May 2017 в 12:00
поделиться

6 ответов

Эти два термина используются в контексте Интернета. На стороне клиента означает, что код JavaScript выполняется на клиентском компьютере, которым является браузер. Серверный JavaScript означает, что код выполняется на сервере, обслуживающем веб-страницы.

Эти языки работают на виртуальной машине, и если вы внимательно выбираете библиотеки и разрабатываете код, он будет работать на разных платформах (без перекомпиляции). Родные языки (например, C, C ++) имеют стандарты, поэтому язык один и тот же на нескольких платформах, но используемые вами настройки компилятора и библиотеки могут не быть кросс-платформенными (например, процессы, сеть и т. Д.).

Помимо технических проблем, знакомство с кроссплатформенной структурой экономит время. Например, изучение библиотеки графического интерфейса может занять недели / месяцы. Очевидно, вы сэкономите время, если API будет одинаковым для всех целей.

Qt4 хорошо разработан, хорошо документирован и поставляется с некоторыми полезными и надежными инструментами. wxWidgets становится массовым с десятками виджетов, некоторые из которых вы никогда не будете использовать. Qt имеет меньше виджетов, которые являются более гибкими. Раньше я довольно часто использовал wx, но я ma Qt convert now из-за лицензии LGPL, хорошей документации, дизайнера, PyQt, новой IDE и растущей базы пользователей.

Как Qt, так и wxWidgets имеют привязки Python (т.е. PyQt и wxPython), поэтому вы можете писать кроссплатформенный код GUI, используя эти библиотеки. Для Mono это сложнее, но есть GTK # и Qyoto. Я не пробовал ни то, ни другое, но, похоже, они достигают точки, когда становятся достаточно зрелыми, чтобы их можно было использовать (например, см. MonoDevelop).

7
ответ дан 30 November 2019 в 22:43
поделиться

Для межплатформенного (и уникальная платформа) я перешел бы к QT, потому что это более чисто, чем Моно и Windows. Формы и с шаблоном MVC все приложение более легко развернуть и изменить

5
ответ дан 30 November 2019 в 22:43
поделиться

Вы рассмотрели wxWidgets. Его также кросс-платформенный, C++ как QT и собственные средства управления использованием в отличие от QT, и не требует, чтобы любая платформа работала как.NET.

.NET и моно является почти тем же самым, Если Вы пишете простое основанное на пользователе приложение с не много системы или сетевого программирования.NET должна быть лучшей.

, Если производительность является критическим аспектом партии приложения людей, пользуется библиотеками C++ как QT, wxWidgets.

0
ответ дан 30 November 2019 в 22:43
поделиться

Я использую Qt4 для кросс-платформенной разработки и довольно доволен им. Развертывание хорошо работает (по крайней мере, при соединении QT статически который не тверд вообще), API действительно , хороший и последовательный и спокойный Разработчик позволяет быструю разработку частей GUI, таким образом, можно сконцентрироваться на реальной логике. Понятие сигнала и слота - также что-то я действительно как после привыкания к нему.

От моего развертывания опыта с wxWidgets развертыванием более твердо (в моем случае, это был конкретно Linux из-за зависимости от GTK, никакой идеи о Mac).

4
ответ дан 30 November 2019 в 22:43
поделиться

Возможно, можно ли записать большую часть приложения на портативном языке/платформе и записать ли отдельную "кожу графического интерфейса" для каждой операционной системы, которую Вы планируете поддерживать? Та стратегия, конечно, может работать хорошо в некоторых случаях, но может перестать работать ужасно во многих других.

1
ответ дан 30 November 2019 в 22:43
поделиться

. СЕТЬ не для кросс-платформенного. Это очень болезненно, чтобы кодировать и заставить его работать эффективно на МОНО и.NET. Причина, почему люди идут с.NET больше, чем TCL/Tk или QT или Java Swing, из-за Быстрой разработки приложений.

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

инструментарии GUI в целом являются трудными работать с тем, потому что необходимо понять основы. Причем основы являются привязкой данных, отсечением, обновлением, менеджерами по расположению и обработкой событий. Все эти понятия являются трудными для средних разработчиков. Так как причина, то, что большая часть из нее абстрагируется далеко с большим количеством современных инструментариев там. Например, с Java Swing я ничего не должен знать об отсечении или обновлении, так как они делают это "волшебно" для меня. Что происходит в случае того, когда что-то не обновляется волшебно, та ситуация затем представляет фактически невозможное решение. Код затем становится экспоненциально более сложным.

.NET обычно используется многими разработчиками UI, потому что расширение ее очень просто. Создание дополнительного метода для расширения управления очень легко. Создание метода для привязки данных даже становится более простым с платформой объекта.NET. Существует стоимость для использования этого инструмента RAD, хотя, и это - то, что это не независимо от платформы.

-2
ответ дан 30 November 2019 в 22:43
поделиться
Другие вопросы по тегам:

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