Какой пользовательский интерфейс выбрать - PullRequest
2 голосов
/ 10 марта 2010

В среде windows / .net в настоящее время я использую монорельсовые замки с jquery, чтобы предоставить административный интерфейс для приложения электронной коммерции.

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

Так что, если у меня есть сущность с именем и свойством строки описания, скорее всего, у меня будет форма с вводом имени и описания и скрытым полем id. Сообщения проходят через jquery / ajax.

Теперь другой клиент приходит и получает настройки своего приложения по умолчанию. Он требует поле даты и размера для этой сущности. Мне нужно подумать о том, чтобы сохранить это легко развертываемым, поэтому я не могу просто взломать существующее решение и расширить его таким образом. Что мне нужно сделать, это вставить DLL в папку bin базовой установки клиента и покончить с этим.

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

Так что я немного между двумя стульями и сомневаюсь, что переход к серебряному свету не просто сдвинет проблемную область, а не заставит ее исчезнуть.

Другим вариантом будет создание моих представлений в javascript с использованием библиотеки, подобной YUI o dojo (не может использовать ext из-за их лицензирования), и создание там всего пользовательского интерфейса (почти без разметки html), определение точек расширения и использование некоторого вида javascript компоновщик, чтобы позволить мне расширить этот интерфейс. Данные будут поступать с последующими вызовами к отдыхающим службам. Хотя это не кажется чем-то иным, чем обычным движением, из-за динамического характера javascript, этот может быть намного проще, чем сгибать строго типизированный .net к моей воле.

Кто-нибудь может дать мне какое-то мнение, чтобы помочь мне принять это решение?

1 Ответ

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

Я не могу говорить по всем пунктам, которые вы изложили, но вот те, которые я могу:

UI Состав:

С помощью Silverlight и доступных фреймворков (призмы, калибровки и т. Д.) Вы можете создавать невероятно гибкие и масштабируемые пользовательские интерфейсы, что вызывает у меня большие пальцы. Я считаю, что производительность этих систем очень высока, а разделение интересов - высоко, поэтому управление проектом становится намного проще. При выборе веб-платформы для нового проекта я сейчас подхожу к ней с точки зрения «Есть ли причина не использовать Silverlight?». Это должно работать как заявление об отказе от ответственности за эту тему

Новые проблемы:

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

Классы прокси:

Да, я вижу, что это может восприниматься как потенциальная проблемная область, но опять-таки с правильной архитектурой и структурой (RIA Services было бы на что посмотреть), вы должны быть в состоянии избежать перемещения вашей текущей болевой точки из Уровень пользовательского интерфейса для уровня обслуживания.

Таким образом, я был бы большим сторонником использования Silverlight.

Альтернативы:

Я не могу говорить о возможности создания ваших представлений в JavaScript, поскольку я никогда не пытался это сделать, надеюсь, кто-то еще прокомментирует их опыт с этим.

Рассматривали ли вы ASP.NET MVC? Опять же, эта платформа имеет хороший подход к составному пользовательскому интерфейсу, и вы будете генерировать свои представления таким образом, чтобы у вас было намного больше контроля, чем у вас в настоящее время.

Надеюсь, это поможет.

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