Следует ли писать приложение WPF на C ++ / CLI или C #?

Приложения WPF по своей сути являются управляемыми? Верно? Итак, я должен выбирать между использованием управляемого C ++ или управляемого C #. Я экспериментировал с управляемым C ++ много лет назад. Казалось, еще не совсем готово к прайм-тайму. Я предполагаю, что Microsoft приложила больше усилий к управляемому C #, чем к управляемому C ++. Итак, похоже, что использование управляемого C # - лучшая альтернатива между ними. Так ли это? Какой у вас был опыт работы с WPF на любом из языков? Заранее спасибо.

10
задан Community 23 May 2017 в 12:28
поделиться

6 ответов

Управляемый C ++ был заменен на C ++ / CLI, а «управляемый C #» - это просто C #.

Я настоятельно рекомендую вам использовать C # для нового проекта и использовать C ++ / CLI только при необходимости. C # имеет лучшую поддержку, имеет большую базу пользователей и с ним легче работать внутри Visual Studio 2010.

Кроме того, имейте в виду, что C ++ и C ++ / CLI - это два разных языка. Для своего первого проекта .Net я выбрал C ++ / CLI, потому что я уже знал C ++, и это была очень плохая идея: кривая обучения от C ++ к C ++ / CLI аналогична изучению C # из C ++: не попадайтесь в эту ловушку .

14
ответ дан 3 December 2019 в 17:18
поделиться

C++/CLI был действительно создан только для поддержки написания interop слоев между неуправляемым кодом (т.е. родным C/C++) и управляемым кодом. Для "тяжелой работы" вам определенно следует использовать C# (или VisualBasic.NET).

4
ответ дан 3 December 2019 в 17:18
поделиться

C # является наиболее часто используемым, поэтому, если у вас возникнут проблемы, есть дополнительная онлайн-поддержка для C #. C # также лучше поддерживается Microsoft. В целом, даже сейчас это просто более законченный продукт. Если вы действительно не заботитесь о себе, я бы выбрал C #.

1
ответ дан 3 December 2019 в 17:18
поделиться

Что касается бэкенда, они оба работают на CLR и оба способны справиться с работой. На самом деле все сводится к тому, с чем вам удобнее работать. Если вы не уверены, поэкспериментируйте с обоими. Используйте то, что покажется вам наиболее продуктивным.

Edit:

Как мне только что указали, похоже, что поддержка шаблонов WPF (и, возможно, даже intellisense) просто отсутствует в C++. Так что в этом случае, я думаю, мне придется рекомендовать C#.

1
ответ дан 3 December 2019 в 17:18
поделиться

IMO без сомнения C# (или VB/F#).

C++/CLI отлично подходит для пересечения границы управляемого мира и библиотеки c++. Сложность, однако, выше, поскольку тонкие вопросы возникают из-за того, что приходится совмещать управляемый язык и неуправляемый.

Время компиляции в C++/CLI также больше, особенно потому, что шаблоны кода смоделированы по принципу работы компилятора C#, а не по принципу работы компилятора C++.

1
ответ дан 3 December 2019 в 17:18
поделиться

Вы можете использовать управляемый C ++ для своей серверной части, но, по результатам проверки, VS (я использую 2010 Ultimate) не имеет встроенных шаблонов для приложения C ++ WPF - только C # или VB.

Я уверен, что вы могли бы заставить его работать, если бы захотели, но я бы посоветовал вам использовать C #.

2
ответ дан 3 December 2019 в 17:18
поделиться
Другие вопросы по тегам:

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