При портировании приложения Windows на веб-интерфейс лучше придерживаться традиционных веб-технологий или разумно использовать RIA? - PullRequest
1 голос
/ 18 марта 2010

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

Я пытался определить наиболее подходящую архитектуру для уровня представления. Есть много функций, которые не очень легко переносимы, например, печать (это тоже очень сложно). Для большинства других я планирую использовать библиотеку «Ext JS», которая выглядит как способная обрабатывать около 70% сложности из коробки, а для остальных я буду использовать пользовательское кодирование или расширение Ext JS.

Сказав это (извините за столь наглядность), мне интересно, если это приложение для интрасети, почему бы не перенести все приложение на SilverLight? Хотя я хорошо разбираюсь в .Net, я немного чужд SilverLight. Учитывая, что я знаю свою целевую аудиторию и что программное обеспечение будет использоваться для каждой лицензии, будет ли лучше использовать SilverLight или лучше придерживаться обычной сети (XHTML, JS, CSS и т. Д.)? Кроме того, в будущем мне придется поддерживать несколько устройств, и учитывая, что плагины SilverLight для многих устройств еще не выпущены, будет ли это рискованно?

Ответы [ 3 ]

1 голос
/ 18 марта 2010

Использование Silverlight поверх HTML / JS и т. Д. В этом случае зависит от 2 ключевых факторов.

  • С чем вы уже знакомы
  • Какой тип и диапазон устройств вам необходимо охватить.

Если вы уже знакомы с HTML + ExtJS, то это должно быть большим преимуществом в его пользу.

Диапазон устройств, которые Silverlight, вероятно, будут доступны (например, Windows Phone 7, а также Moonlight, я даже слышал, что может быть порт для Andriod и Symbian), растет. Однако это действительно первые дни для этого, и не все могут материализоваться в форме, полезной для вас.

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

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

Если вы знакомы с .NET и другими технологиями Microsoft, вам следует серьезно рассмотреть возможность использования JQuery и ASP.NET MVC в качестве еще одной потенциальной фронт-технологии.

1 голос
/ 18 марта 2010

IMO, если вы разрабатываете веб-приложение, тогда да, разработайте его как RIA.

Выбор технологии зависит от вас. Я предпочитаю jQuery и никогда не использовал ExtJS. Но я взглянул на это, и если ваша заявка является портом приложения Windows и имеет много обычных элементов пользовательского интерфейса, таких как формы, поля ввода, панели инструментов, меню, кнопки и т. Д., То перейдите к ExtJS.

Что касается некоторых элементов управления, которые недоступны в ExtJS, вы можете легко расширить ExtJS.

Относительно .NET: ExtJS полностью независим от серверных технологий, поэтому вы можете разрабатывать свои приложения в .NET и по-прежнему использовать пользовательский интерфейс ExtJS. На самом деле, я бы предпочел сделать такую ​​реализацию.

Относительно Silverlight: я немного против использования silverlight, в первую очередь потому, что для этого требуется установить плагин, который доступен не на всех платформах. Но так как ваше приложение является приложением для внутренней сети, ваша пользовательская база будет под вашим контролем. Но вы должны убедиться, что любое будущее решение относительно платформы рабочей станции не повлияет на работу вашего приложения.

Приветствия

0 голосов
/ 18 марта 2010

Я думаю, что вам нужно обдумать неудобства решения, основанного исключительно на Silverlight. Как и Flash, для каждой станции должен быть установлен плагин, поэтому он теряет некоторые помещения веб-приложений (запускаются везде с единственным требованием браузера). Кроме того, хотя Silverlight добился значительных успехов, он еще не является широко поддерживаемым стандартом и находится под контролем компании, которая впоследствии может решить за вас очень важные вопросы, касающиеся используемой вами платформы, и сделать ее устаревшей или бесполезной (в худший случай).

Ext JS - отличная библиотека, полностью разработанная на Javascript, так что вы можете коснуться всего, что вам подходит. Если приложения Windows, на которых вы основываетесь, хорошо наслоены, то ваша работа может быть не такой сложной.

Если вы являетесь разработчиком asp.net, вы можете взглянуть на asp.net mvc, отличный набор инструментов, которые реализуют шаблон MVC для веб-приложений, использующих тот же старый C # или VB. Помимо разработчиков asp.net mvc, пришлось приложить немало усилий, чтобы сделать его подходящим для работы с библиотеками javascript, такими как jQuery

Удачного кодирования !!!

...