Стоит ли изучать WinForms? Это устарело? - PullRequest
16 голосов
/ 29 апреля 2010

Я только что закончил два приложения WinForm в рамках интенсивного курса. Просто интересуюсь технологией в целом ... стоит ли переходить на что-то новое или WinForms все еще жизнеспособны в будущем?

Ответы [ 11 ]

12 голосов
/ 29 апреля 2010

Я бы сказал, что Windows Forms отлично подходит для приложений на основе форм. WPF / Silverlight отлично подходит для анимации и графических приложений.

Если вам нужно сделать какую-нибудь служебную работу или создать инструмент, я не понимаю, почему Win Forms не может служить этой цели. WPF может быть излишним, если вы действительно не хотите, чтобы он выглядел красиво. Кроме того, с WPF вы должны изучить XAML, который не так прост и интуитивно понятен, как работа с конструктором Win Forms.

Если вы веб-разработчик или дизайнер, работа в WPF может показаться более похожей на разработку веб-страницы, поскольку вы работаете в XAML и имеете точный контроль над интерфейсом.

WPF / Silverlight также имеют отличные возможности привязки данных, плюс Silverlight может быть запущен из браузера, поэтому может быть даже выгодно пропустить WPF для первой версии и сделать версию Silverlight. SL на WPF намного, намного проще портировать, чем WPF на SL (поскольку SL является подмножеством WPF).

Для моего проекта, над которым я работаю, это будет сделано только в SL4 из-за возможности запускать его из браузера, как если бы это было настольное приложение, избавляя от необходимости портировать его в WPF. Установка приложения Silverlight на компьютер пользователя проста, понятна и дает вам дополнительное преимущество использования всего существующего кода и автоматического обновления.

5 голосов
/ 29 апреля 2010

Знакомство с WinForms поможет вам.Старые приложения будут использовать их, и если вы работаете в магазине Microsoft, вы столкнетесь с устаревшими приложениями.Вы также должны научиться чему-то более новому, потому что это только часть того, чтобы быть программистом.То, что вы знаете сейчас, является лишь основой для того, что вы будете знать.Никогда не прекращайте учиться, иначе вы станете как степлер в Office Space.

3 голосов
/ 29 апреля 2010

Я бы сказал, что WinForms полезно знать, но я бы потратил больше времени на WPF. WPF имеет сходство с Silverlight, и это даст вам больше возможностей для работы.

При этом никогда не помешает узнать больше:)

2 голосов
/ 21 января 2013

Не покупайся на всю шумиху. Мой клиент продолжает требовать разработки WinForms. Мы скоро начнем новый проект, и это WinForms, C #, NHibernate. Правильно, это не Интернет, javascript, ajax, облако, метро, ​​WPF, silverlight, бла-бла.

Объяснение простое - зачем тратить вдвое больше усилий на WPF, когда нам нужно тратить время на таргетирование платформ COMPETING. Пространство GUI полностью фрагментировано. WPF НИКОГДА не будет кроссплатформенным, и часы, потраченные на мелочи WPF, уменьшают вероятность поддержки Какао, Linux. Кроме того, похоже, что Microsoft отказалась от WPF в пользу удивительного Javascript и сложного HTML 5.

Лично я предпочитаю компонентно-ориентированные GUI-инфраструктуры по сравнению с MVC-основами по той простой причине, что с ними проще и быстрее писать. Я не согласен с тем, что MVC - лучший шаблон для всей разработки GUI. Да, она имеет свое место в мире, как и в веб-разработке, где технология уровня презентаций продвигается боком с наименьшим общим знаменателем браузера.

IMO, есть место для форка WinForms 3, с открытым исходным кодом и с целью обеспечения кроссплатформенной поддержки.

2 голосов
/ 29 апреля 2010

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

2 голосов
/ 29 апреля 2010

Хорошо, если вы удивительны с цветами и пользовательским опытом :) WPF для вас.

Если, с другой стороны, вы похожи на меня и вы можете распознавать только 8-битные цвета: P, вы часто будете использовать WinForms. У него есть такое преимущество перед WPF, что вы можете запускать приложение, не задумываясь о UI, и все равно его можно будет использовать и хорошо выглядеть.

WPF дает вам большую мощь, а с большой силой - большую ответственность.

2 голосов
/ 29 апреля 2010

Обе технологии имеют свои сильные и слабые стороны.

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

Как бы то ни было, поскольку WPF, XAML и все другие связанные технологии являются чистыми продуктами Microsoft, для использования таких языков, как Delphi и другие, может потребоваться время, поэтому Winform непременно останется, по крайней мере на несколько лет.

Я знаю оба, и я использую оба в зависимости от проекта, который я делаю. Я должен признать, что я предпочитаю WPF для большинства проектов.

2 голосов
/ 29 апреля 2010

Все зависит от того, где вы работаете и над чем работаете.

Если вам удастся устроиться на работу, где они разрабатывают что-то новое, ответ будет «нет», так как я надеюсь, что они будут использовать WPF или Silverlight.

Если, однако, вы получите работу, в которой они поддерживают существующее приложение, тогда ответом будет «да» - даже если они конвертируют его, поскольку вы будете поддерживать старое приложение довольно долгое время.

1 голос
/ 29 апреля 2010

Я бы сказал, что если вы только начинаете, WPF - это, вероятно, то, на чем нужно сосредоточиться. Тем не менее, я в настоящее время работаю над проектом Winforms и запустил 2 новых проекта в прошлом году, и он работает просто отлично.

1 голос
/ 29 апреля 2010

Это требует очень небольшого количества времени, чтобы учиться, поэтому я думаю, что оно действительно того стоит. Шаблон, который использует WinForms, также используется многими другими фреймворками, так что вы ничего не потеряете, изучив его.

А также, возможно, WPF проще, если у вас есть основания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...