Задать вопрос

Язык с# и десктопные приложения: выбор библиотек, платформы, средств создания интерфейса?

Оправдания для будущих претензий
Я не профессиональный программист, я инженер-физик и 80% моего времени не связаны с программированием, поэтому мои знания в программировании могут быть ниже ожидаемого уровня в данной конференции

Ранее я активно работал в Delphi 10 и в целом меня всё устраивало, кроме атмосферы "Дефли мертв, Делфи скоро умрет, мы все умрем, всё плохо...", потому было решено постепенно переехать на другой, наиболее близкий у Delphi, язык, удобный для создания десктопных приложений и работы с данными (не обязательно в БД). Были написаны простейшие калькуляторы на C++, Java и C# после чего выбор пал на последний по очевидным причинам (дружелюбность, близость к Delphi, ориентированность на ООП). Освоив базовый синтаксис языка я попробовал приступить к созданию первых десктопных приложений и просто утонул в океане нюансов незнакомых мне ранее. Тут тебе и разны платформы (.NET Framework, .NET Core) и разные способы созданий интерфейса WinForm, WPF, UWP, и целая куча библиотек всех форм и видов на любые темы. 3D визуализация данных и создание 3Д моделей возможна как средствами wpf, так и Direct3D, OpenGl.
В архаичном делфи всё 3D практически сразу сводилось OpenGl, а графики к TChart, ну а далее всё по накатанной.

Теперь же суть вопроса (прошу совета) - мне необходимо разрабатывать десктопные приложения под Windows на c# с большим количеством окон для ввода и визуализации данных: двухмерные графики, трехмерные пространственные распределения, трехмерные модели. Работа с БД. Запуск и взаимодействие с другими приложениями (хотя думаю ограничится только текстовыми файлами).
Потому прошу совета опытных разработчиков - что из многообразия библиотек, платформ и т.п. мне подходит больше всего.
Пока по очевидным причинам выбрал платформу .NET Framework (Линукс и мобильные приложение не интересны) и для интерфейса WPF(визуально куда приятнее WinForm, и, судя по комментариям, "не устарел как WinForm").
Дальше же возникли сложности - как я понимаю в WPF нет доступного в WinForm Chart-a, и надо либо подключать его через костыли, либо использовать сторонние библиотеки (коих множество) - подскажите, какой путь наиболее оптимальный? Мне необходимо рисовать весьма большое разнообразие граффиков и диаграмм.
Вторая сложность возникла с 3D графикой (графики, модели и т.п.), сначала потыкался в возможности WPF, но меня расстроила невозможность нарисовать даже простую линию (только через трехмерные фигуры) и в целом малое число возможностей, решил остановиться на знакомом OpenGl, но читая этот же портал наткнулся на комментарии вида: "OpenGl в .NET Framework это фэээ, есть встроенный Direct3D, вот на нем всё и надо делать". Как вы думаете, так ли это? С OpenGL работал немало, в целом всё удобно и понятно. Может есть и другие способы 3D визуализации, которые даже лучше и удобнее упомянутых?
Ну и в целом, подскажите - правильный ли я выбрал путь для создания десктопных приложений, или, быть может, есть варианты лучше и удобнее? При условии, что для меня ключевым является именно дружелюбность разработки и доступные возможности (тратить кучу времени на создание своего аналога Chart не хотелось бы), ну и бесплатность.
  • Вопрос задан
  • 570 просмотров
Подписаться 5 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 3
HemulGM
@HemulGM
Delphi Developer, сис. админ
Перед всем этим, попробуй FMX в Delphi. Где кроссплатформенный подход позволяет создавать 3D разными способами, переключая флаги. Сможешь строить сцену в дизайнтайме и если нужно использовать низкоуровневый подход, писать и компилить шейдеры и прочее. TChart и под FMX адаптировали с большими плюшками. Слоистые окна и рендеринг 3D хоть поверх рабочего стола с полупрозрачностью.
Ответ написан
@youngMaster
Раз вы не профессиональный программист, то нет смысла изучать новые библиотеки на новом языке, DirectX 3D вместо OpenGL вам не даст ничего кроме головной боли в вашем случае, насколько я понимаю вы пользуетесь там максимум 1.2 версией? Да и вообще пользуясь Delphi 10 странно слушать слова про мёртвость о системе, которая только вчера получила новую версию.
Ответ написан
google
Сходу Blotch3D выглядит интересно.
Для построения графиков есть масса библиотек.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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