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

StackOverflow https://stackoverflow.com/questions/2468563

Вопрос

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

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

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

Это было полезно?

Решение

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

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

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

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

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

Ваше здоровье

Другие советы

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

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

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

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

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

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

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

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

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

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

Приятного кодирования!!!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top