Какие технологии для настольного приложения с богатым пользовательским интерфейсом? - PullRequest
4 голосов
/ 06 апреля 2010

Для прохождения практики мне нужно разработать приложение для настольного компьютера. Основное внимание уделяется созданию богатого пользовательского интерфейса (крутые эффекты, звук и т. Д.). С какой техникой я должен пойти? - Вспышка ? (в этом случае, я пойду с гибким проектом? AIR? в чем выигрыш между этим и простым необработанным проектом Flash) - C # / Silverlight? Любая другая возможность?

Если бы опытные разработчики могли дать свои советы, это было бы здорово, спасибо.

Ответы [ 5 ]

7 голосов
/ 06 апреля 2010

Лучшая технология - это та, с которой вы наиболее знакомы, если только вы не собираетесь учиться на лету. Но для различных вариантов я возьму удар.

Сама Flash (среда выполнения) - это плагин для браузера, так что это не то, что вам нужно, но если вы создаете свое приложение во Flash или Flex (средства разработки), вы можете опубликовать его как приложение AIR. AIR также является средой выполнения - в основном это Flash, плюс множество дополнительных API для работы вне браузера. Преимущества создания приложения AIR:

  • То же приложение работает на win / mac / linux
  • Вы можете сделать это с помощью тех же навыков / инструментов, которые вы используете для Flash (сомнительная утилита, если у вас, конечно, нет этих навыков / инструментов)
  • Близкая интеграция инструментов с другими инструментами Adobe (фотошоп, эффекты и т. Д.)

Основным недостатком является неполный доступ к собственным (т. Е. ОС) возможностям. Среда выполнения позволяет вам запускать одно и то же приложение в win / mac / linux, ограничивая вас тем, что вы можете делать с собственным приложением.

Что касается Flex, то используете ли вы Flex или нет, это отдельный вопрос. Flex - это фреймворк во Flash - приложение AIR можно создать с использованием Flex или без него. По сути, если вы ожидаете, что в вашем приложении будет много элементов управления, ползунков, диаграмм, аккордеонных панелей и т. Д., Вы можете заглянуть во Flex. Если вы ожидаете, что в нем много анимации, картинок и звуков, лучше использовать обычный старый Flash.

Помимо Flash, другим основным выбором для среды выполнения является Silverlight. Преимущества, честно говоря, в основном одинаковые. Вы используете .NET вместо ActionScript, и интеграция инструментов осуществляется с помощью пакета MS Expression вместо творческого пакета Adobe, но процесс разработки и результаты весьма схожи. Выбор между AIR и Silverlight - это действительно выбор между инструментами Adobe и MS, а также между двумя языками программирования, обладающими совершенно сопоставимой мощностью. Большинство просто использует тот, с которым они более знакомы.

Наконец, другой набор опций состоит не в использовании среды выполнения, а в простой компиляции приложения из любого языка / среды разработки, которая вам нравится - C, C ++, .NET, Python, чего угодно. Преимущество здесь в том, что вы получаете (в общем) полный доступ к возможностям ОС. Недостатки в том, что вам (в общем) необходимо выполнить дополнительную разработку для работы на нескольких платформах, а также я не думаю, что вы найдете язык / среду, которая позволяет работать с мультимедиа так же легко, как вы можете в AIR и Silverlight .

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

Зависит от того, на каких языках программирования вы владеете. Если вы парень .NET / C # / VB.NET, используйте SilverLight или WPF. Если вы знаете ActionScript, воспользуйтесь линейкой продуктов Adobe.

0 голосов
/ 07 апреля 2010

Я не уверен, помогает ли это, но я занимаюсь разработкой во Flex, и теперь я начал изучать Silverlight и могу сказать, что разработка в Flex Builder намного быстрее, чем разработка в Silverlight (Visual Studios). Для меня Flex Builder намного лучше, потому что вы используете только одну IDE для разработки как задней, так и внешней части. И это когда дело доходит до веб-разработки. Если вы хотите создавать настольные приложения, вы делаете то же самое, и плюс в том, что вы получаете все в одном файле. У вас также есть небольшая база данных SQL, которая поставляется вместе с ней.

Но с другой стороны, когда вы разрабатываете в Silverlight, вы должны использовать несколько IDE или инструментов вне Visual Studios для создания потрясающей графики. Но если вы хотите больше времени для проектирования, я бы предложил использовать Flex Builder, а не Silverlight.

0 голосов
/ 06 апреля 2010

Если основным требованием является богатый пользовательский интерфейс, самый простой подход - создать приложение Flex, работающее на платформе Adobe AIR. Ответ на вопросы Flash или Flex очень прост: если вы дизайнер, используйте Flash, если вы разработчик, держитесь подальше от Flash и используйте Flex. Фреймворк Flex был создан для разработчиков, и на самом деле очень сложно воспроизвести все его функции во Flash (подумайте только о том, что вам нужно делать во Flash, если вы хотите изменить размер приложения).

С другой стороны, если вы работаете в фоновом режиме .NET, имеет смысл придерживаться Silverlight / C #

0 голосов
/ 06 апреля 2010

Мои предпочтения относятся к (слегка) самой открытой вселенной.Предполагая, что вы знаете, как писать объектно-ориентированные программы, Adobe использует Eclipse в качестве основы для своих инструментов, используя плагины.Actionscript похож на синтаксис Javascript.Вам просто нужно выучить библиотеки flex 4.Затем опубликуйте свое приложение как настольное приложение Air, которое может работать везде.На самом деле везде

Единственное, что нужно знать об инструментах, языках и библиотеках MS, - это то, что они очень хорошо разработаны и удобны в использовании.и он работает на Win и Mac также.и только.

...