Open MrRooots opened 3 years ago
Эволюция интерфейсных объектов .NET: WindowsForms -> WPF -> UWP. Имеет ли смысл изучать технологию, которая является "дедушкой" современных средств программирования. Используя для этого решение, которое не дает понимания конструкции платформы разработки, такое, как jetbrains?
А разве между WF и WPF есть отличия, которые будут заметны при программировании на том уровне, на котором мы будем это делать в этом\следующем семестре? И я не совсем понял в каком смысле jebrains "не дает понимания конструкции платформы разработки". Значит ли это, что не следует использовать дизайнеры и писать XAML код руками?
Если вы под WF понимаете парадигму Windows Workflow, то ответ --- "да" и существенные. Если WindowsForms, то ответ --- лучше изучать то, что современнее. Вопрос о том какими средствами "следует писать" не ставится. Выбор делается в пользу того продукта, который позволяет понять конструкцию оконного интерфейса при работе под Windows и то, почему Microsoft заставила всех своих программистов изучать ООП, а так же какие "шестеренки под капотом" языков разметки и как они реализуют концепцию ООП с 4м принципом --- "управление объектами при помощи механизма сообщений". Если вас устроит аналогия, то WPF мы изучаем по тем же соображениям, что и С++, хотя практически можно кроме Python или JavaScript ничего и не знать для реализации тех же самых задач.
Хорошо, с тем, почему мы изучаем wpf - все понятно. Только я все равно не понял почему моя ide не дает понимания конструкций платформы разработки, разве visual studio работает как-то иначе, разве это вообще от среды разработки зависит?
Да "Студия" работает по-разному с разными типами проектов. Например MFC делали все правильно, но большинство начинающих программистов не понимали, что делает этот тип проекта. :)
Я так понимаю, что речь идет о том, что моя ide создает не пустой проект, в котором мы как раз и прописываем создание окна и запуск событийного цикла с последующим добавлением чего бы то ни было, а какую-то заранее упакованную заготовку?
Вот, например, в своем [этом] проекте сам запуск приложения и инициализацию компонентов:
ParabolaFly.App app = new ParabolaFly.App(); app.InitializeComponent(); app.Run();
я нашел глубоко в файлах проекта: ParabolaFly\ParabolaFly\obj\Debug
, в то время как в редактируемом файле MainWindow.xaml.cs
, ничего подобного нет
Выбран не тот проект! Нужно см. обведенное в снимке ниже:
Программа принимает на вход начальную скорость тела, угол и шаг , по которому будет производится расчет скорости и координат в разные моменты времени. Для самого тела описан класс
Point
, содержащий все функции для расчета Вывод реализован как в окне самой программы, так и в отдельный файлoutput.out
. Вопрос: Можно ли вместо wpf использовать windows forms? Просто я использую jetbrains rider, а у него нет поддержки дизайнера для wpf, только для winforms.