Использование только части мобильных блоков приложений. Выпуск сообщества для разработки WM 6.x

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

Вопрос

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

Среди прочего, мне нужно будет поддержать

  • Windows Mobile 6.x PDAS
  • ПК рабочие станции

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

  • Удаленные обновления
  • В основном сценарий отключенных клиентов для КПК (и, необязательно, для ПК)

При исследовании правильной справочной архитектуры я наткнулся на Мобильные блок приложений выпуск сообщества а также Мобильный способствует Расширение на этот релиз. Что меня заинтересовало:

  • Отключенный агент и монитор соединения для поддержки в основном отключенных клиентов сценария
  • Блок приложений для мобильного обновления для поддержки обновлений

Я также знаю SCSF аналог для настольной платформы.

Теперь вот мои вопросы

  1. По вашему опыту, расширение MCSF на VS2008/WM6.x/.net CF 3.5 зрелый и достаточно стабильный для производственного использования? Я не хочу быть жертвой знания, что оно не подходит для бизнеса, в то время как я нахожусь в центре проекта.
  2. Поскольку приложение будет очень простым, я не хочу усложнять его с помощью шаблона MVP и других средств, связанных с кабиной. Мне просто нужно поддерживать сценарии, описанные выше. Можно ли использовать компоненты выпуска сообщества MCSF без необходимости архитектуры всего приложения в манере MCSF (с командами, инъекцией зависимостей, MVP и т. Д.)? Я думаю, что захочу сделать это просто для простого приложения.
  3. То же самое для настольного приложения ПК. Я также думаю, что для полной кабины/SCSF здесь было бы серьезным излишним, так как это действительно очень простой набор функций, которые должны быть реализованы, но я хотел бы сократить время разработки, используя обновление и, возможно, отключенное клиентские блоки. Просто без сложной части пользовательского интерфейса (я создам простые Winforms для пользовательского интерфейса). Было бы возможно?

Я также изучаю возможность поделиться некоторыми кодом, связанными с отключенными клиентами/удаленными обновлениями между ПК и КПК, но я не думаю, что это будет возможно с MCSF/SCSF.

Я был бы признателен за советом от кого -то, кто пошел по этой дороге передо мной :)

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

Решение

  1. MCSF абсолютно ужасен. Похоже, что кто -то в Microsoft просто сказал разработчику с небольшим опытом, чтобы взять SCSF и «заставить его работать» на компактной структуре. Это было переведено как «если он компилирует, то это нормально», потому что это все, что, кажется, произошло.

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

  2. Я обнаружил, что если приложение содержит 2 или более представления, то стоит использовать шаблон MVP. В какой -то момент вам нужно будет добавить еще один вид, и вы уже зачислите для него. Кроме того, размещение ваших объектов в структуру DI/IOC часто позволяет такими вещами, как агрегация событий, что я нахожу ужасно полезными даже в приложениях без головы, поэтому даже без какой -либо GUO MVP я в конечном итоге использую его.

  3. Настольный компьютер ничем не отличается в моей книге. Библиотека IOC, которую я создал, поддерживает как CF, так и FFX идентично (а также Monotouch и Phone 7), так как я занимаюсь большим количеством кода на всех платформах. Редко я создаю настольный проект, где я его не использую.

Теперь я не говорю, что вы должны использовать мой проект IOC. Я нахожу это полезным для всех проблем, которые я столкнулся, и я знаю это достаточно хорошо, что, когда я попадаю в недостающую область функциональности, я могу быстро добавить ее (хотя я не обнаружил много месяцев). Если вам удобно или предпочитаете другую структуру DI/IOC, то отлично используйте это. Что я говорю, так это а) забежать крики от всего, что связано с MCSF и B) использовать структуру DI/IOC, даже если вы думаете, что приложение слишком простое для одного, потому что нет такой вещи, как реальное приложение Это слишком просто, чтобы извлечь из этого пользу.

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