Какие фреймворки (MVVM light, Prism, MEF, ..) я должен использовать для своего приложения Financial Silverlight? - PullRequest
6 голосов
/ 26 августа 2010

Прежде всего, я новичок в Silverlight (тренируюсь с ним один месяц), и это моя первая работа.Тем не менее, я готов изучать все, что может дать мне новые знания Silverlight.

В настоящее время мне нужно реализовать большой проект Silverlight о финансах (похож на Microsoft Accounting).В нем будет много таблиц из базы данных.

Поскольку он слишком большой, масштабируемость и поддержка очень важны.

Может кто-нибудь здесь сказать мне, какую платформу Silverlight я должен изучить и использовать (MEF, Призма .....)?Время также является ограничением, поэтому я не думаю, что могу научиться всему.Пожалуйста, посоветуйте мне лучший.

спасибо

Ответы [ 5 ]

1 голос
/ 27 августа 2010

если я могу дать вам один большой совет, который я хотел бы получить до запуска довольно большого приложения; не используйте сервисы ria, если у вас есть связи между таблицами базы данных более чем на 2-3 уровня, если вы действительно хотите контролировать свои манипуляции с данными.

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

удачи:)

1 голос
/ 26 августа 2010

4 месяца назад я начал очень большой проект Silverlight, который еще продолжается. В итоге я не выбрал MVVM-фреймворк. Похоже, их полезность уменьшается, так как Silverlight получает новые функции. Например, в Silverlight теперь есть встроенные команды, убирающие хороший кусок того, почему были созданы Prism и тому подобное.

Я использую сообщения MVVM light, но я вообще не использую его возможности MVVM. Мое приложение оказалось:

  • Ninject для МОК
  • встроенная реализация Silverlight 4 ICommand для команд
  • MVVM Легкий обмен сообщениями
  • Очень простой, к сути, MVVM-фреймворк, который я написал с нуля. В этом нет ничего особенного, просто простой базовый класс ViewModel, который обрабатывает общие задачи, и это все.
0 голосов
/ 27 августа 2010

Mvvm Light - это отличный фреймворк.

CinchV2 - еще один, который также использует MEF.

Но, как уже говорили другие.Фреймворк не имеет никакого значения, дизайн имеет значение.Фреймворки просто упрощают дизайн.Прочитайте о шаблоне MVVM, но, по моему опыту, ни один учебник не посвящен крупным проектам и тому, как их компоненты будут взаимодействовать друг с другом.Именно здесь вступают в силу фреймворки. Они решают некоторые проблемы, но MVVM - это только один из многих шаблонов, которые вы будете использовать в большом приложении.

0 голосов
/ 26 августа 2010

Если вы планируете выпускать продукт, который поддерживается в течение многих лет и, вероятно, над ним работали несколько разработчиков, вам нужно выйти за рамки простого MVVM и подумать о модульности в более широком масштабе. Это означает изучение МОК, MVVM, командования и событий, а также всех основ Silverlight.

Prism 4 находится на грани выпуска (в настоящее время на Альфе по состоянию на 18 августа). Новая версия включает в себя MEF, поэтому предлагает несколько вариантов динамической загрузки модулей проекта. Это хорошо стоит исследовать. И Prism, и MEF были созданы Microsoft.

MEF используется для создания приложений на основе плагинов, таких как Visual Studio. В настоящее время мы используем Prism 2 для очень большого долгосрочного проекта (сотни модулей) и ожидаем перехода на версию 4 при выпуске (в настоящее время я пробую версию 4 Alpha в другом личном проекте).

0 голосов
/ 26 августа 2010

Для крупномасштабного проекта я бы внедрил MVVM, особенно если вы только учитесь просто потому, что он сохранит ваш код на более управляемом уровне. Я также проверил бы эту ссылку:

http://www.silverlight.net/learn/handsonlabs/

Есть несколько действительно хороших лабораторий для изучения silverlight, а также несколько лабораторий MVVM.

...