Создание приложения бизнес-типа с использованием Silverlight 3 - уместно ли это? - PullRequest
0 голосов
/ 27 февраля 2010

Я рассматриваю возможность использования Silverlight для приложения бизнес-типа, которое будет содержать около десятка или около того экранов. Экраны будут содержать формы ввода данных с полями редактирования, сетками, поисками, календарями и т. Д. Типичные экраны типа бизнес-приложений. Я хочу, чтобы это выполнялось в браузере, но не хочу связываться с HTML, JavaScript, CSS и т. Д. Подходит ли Silverlight 3 для такого типа приложений? Может ли кто-нибудь создавать приложения бизнес-типа профессионального уровня с Silverlight 3?

Ответы [ 3 ]

2 голосов
/ 28 февраля 2010

@ Рэнди Миндер,

Рад слышать, что вы хотите использовать silverlight 3 для бизнес-приложений.

Я использовал для разработки линейки бизнес-приложений в ASP.NET в сочетании с javascript / AJAX. В настоящее время я занимаюсь разработкой своего первого бизнес-приложения Silverlight 3 и обнаружил, что Silverlight лучше в нескольких отделах. Ниже приведены «за» и «против», наблюдаемые мной ЛИЧНО .

Плюсы

  1. Layout / Стайлинг (CSS) Стили XAML + silverlight 3 очень гибкие и менее перегружены по сравнению с CSS. Я не дизайнер, и я ненавижу иметь дело с CSS. Но в случае с Silverlight мне очень понравилось создавать макет, макет и стиль. Конечный результат потрясающий. Это первое приложение, которое я разработал, имеет достойный и последовательный внешний вид. Надеюсь, вам также будет легче иметь дело с Silverlight XAML.

  2. Богатое взаимодействие и поддержка языков Я использовал Ajax, javascript для создания богатых возможностей взаимодействия, таких как динамическое заполнение некоторых данных, когда пользователь взаимодействует с пользовательским интерфейсом. Написание сложной логики пользовательского интерфейса в Javascript - это сложно. Хотя есть несколько хороших библиотек JavaScript, таких как Jquery, я думаю, что написать сложную логику пользовательского интерфейса в C # / VB.NET / F # намного проще, чем написать ее в javascript. Работа с богатыми интерактивными элементами управления в silverlight намного проще, чем с элементами управления javascript / ajax. Написание кода связи с сервером с помощью службы WCF или WCF RIA намного проще, чем с помощью вызовов ajax.

  3. Совместимость браузера Каждый браузер отличается от другого тем или иным способом, так как некоторые браузеры поддерживают что-то, а другие нет. Необходимость иметь дело с различиями браузера в javascript - это тоже боль. Silverlight как плагин не должен иметь дело с различиями браузера. Никаких проблем с разметкой движка тоже нет.

  4. Анимация / мультимедиа Конечно, с линейкой бизнес-приложений мы не будем использовать слишком много анимации / мультимедиа. Однако мы можем использовать небольшие анимации, такие как всплывающее меню, скользящие элементы управления, переходы затухания при изменении данных и т. Д. Их очень легко реализовать в silverlight, чем с asp.net/javascript

  5. Проверка Поддержка валидации в silverlight - это здорово, вы можете написать больше логики валидации за меньшее время.

  6. Всплывающие сообщения Всплывающие сообщения очень неуклюжи для работы в ASP.NET, и иногда мне нужно хранить некоторую информацию в скрытых полях для подачи текста для всплывающих сообщений. Скрытые поля используются в качестве компонентов взаимодействия javascript и ASP.NET, которые сложно поддерживать, и в результате получается больше кода.

  7. Хорошее разделение презентации и модели Хотя вы можете разделить эти слои и в ASP.NET, Silverlight реализует это, что хорошо. В моей команде мало разработчиков, которые не хотят прилагать усилия для разделения слоев. К сожалению, они старшие по возрасту и лиц, принимающих решения. Я всегда ненавижу иметь дело с их кодом спагетти. Не говоря уже о том, что я лучший разработчик, чем они, я всегда прикладывал некоторые усилия, чтобы разделить проблемы и попытаться научиться управлять своим кодом. Веб-формы ASP.NET не обеспечивают разделение презентации и модели по дизайну. Где Silverlight усиливает это благодаря дизайну, и моя жизнь стала проще.

Против

  1. Буфер обмена Пользователи очень часто используются для копирования содержимого, доступного на странице ASP.NET/HTML. Большинство элементов управления silverlight 3 не поддерживают буфер обмена из коробки. Единственный известный мне элемент управления, который поддерживает "из коробки", - это текстовое поле.

  2. Связь с базой данных Связь с базой данных в ASP.NET проще и прямая связь возможна. Однако Silverlight, являясь технологией на стороне клиента, не имеет прямого доступа к базе данных, и необходимость создания дополнительного уровня является обязательной. Хотя сервисы WCF RIA облегчают разработку этого дополнительного уровня, сервисы WCF RIA пока находятся в стадии бета-тестирования. Хотя я упоминаю об этом как о недостатке, на самом деле я не чувствовал, что это НАСТОЯЩИЙ недостаток, потому что создание службы WCF не так сложно.

  3. Использование ресурсов на стороне клиента Хотя стоимость аппаратного обеспечения значительно снижена, аппаратные ресурсы на стороне клиента не безграничны по сравнению со стороной сервера. На моем рабочем месте, несмотря на то, что предоставленные ПК имеют приличную конфигурацию, большинство пользователей одновременно открывают множество приложений, что необходимо для выполнения их повседневных задач. Silverlight использует клиентский процессор / память. Некоторые из моих пользователей жалуются на то, что разработанное мною приложение использует больше ресурсов процессора / памяти, чем эквивалент asp.net. Поэтому, если у ваших пользователей более медленные ПК, рассмотрите возможность использования ASP.NET или более тщательно спроектируйте свое приложение Silverlight.

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

Это мой опыт работы с silverlight 3. Единственной серьезной проблемой, с которой я столкнулся, была поддержка буфера обмена в silverlight. Надеюсь, MSFT скоро решит эту проблему.

В целом, Silverlight ROCKS !!! Silverlight 3 готов к работе, и если вы подождете еще несколько месяцев, выйдет Silverlight 4, который еще лучше поддерживает линейку бизнес-приложений. Я больше не хочу разрабатывать приложения ASP.NET, это не значит, что я перестану использовать ASP.NET, я буду использовать его только при необходимости. Я влюбился в Silverlight и по уважительной причине. Я больше всего ненавидел дизайн сайта, но дизайн Silverlight стал одним из моих любимых.

Я надеюсь, что silverlight 3 поможет вам в принятии решений.

2 голосов
/ 27 февраля 2010

Абсолютно. Посмотрите на этот пост о Олимпийских играх в Ванкувере:

http://csharperimage.jeremylikness.com/2010/02/vancouver-olympics-howd-we-do-that.html

Это всего лишь один пример бизнес-приложения в «реальном мире», используемого для управления чрезвычайно сложной операцией. Я опубликовал это просто для того, чтобы привлечь внимание к «деловой» стороне Silverlight, но не забудьте нажать на ссылку на исходный пост, чтобы увидеть других партнеров и вклад в проект.

Я создаю корпоративные / бизнес-приложения с Silverlight уже более года. Таким образом, ответ является решительным «Да, вы можете» и «Да, это было сделано» и «Да, это было сделано в больших масштабах с крупными компаниями, и очень успешно».

0 голосов
/ 27 февраля 2010

Я согласен @ Джереми. Обязательно используйте RIA Services с Silverlight, вы получите очень управляемое / обслуживаемое приложение. Еще одним преимуществом является то, что вы можете сделать приложение SL из браузера тоже.

...