2013-12-06 2 views
2

Я собираюсь приступить к разработке нового клиент-серверного приложения, изначально состоящего из клиента Windows (WCF), но мы можем посмотреть на развитие клиентов для других платформ в будущем (веб, Win phone, iOS, Android).Должен ли я рассматривать Portable Class Libraries?

Без каких-либо планов для других клиентских платформ, есть ли смысл создавать PCL с первого дня? Или я должен начать с разумной архитектуры решения, т. Е. Сохранить потенциально общий клиентский код в отдельных проектах, с целью переноса этого кода в PCL, если мы начнем разработку для других платформ?

ответ

3

два вопроса, чтобы спросить себя:

  • Как далеко это будущее других платформ?
  • Каковы ограничения функциональности PCL/пространства имен на ваши текущие потребности?

PCL будет расширяться дальше, чтобы охватить больше функциональности и будет продолжать расти. Как и сейчас, есть некоторые ограничения. Являются ли эти ограничения препятствиями для вашего развития базового продукта? Если это так, стоит ли использовать PCL сейчас, когда вы даже не знаете, когда/когда вы перейдете на другие платформы? Если вы скоро придете на эти платформы, начните сейчас. Если нет, у вас может быть слишком много препятствий сегодня, чтобы это стоило того.

Да, вы абсолютно должны учитывать PCL. Начиная с PCL облегчит жизнь в будущем. Но только если это имеет смысл сделать это сейчас.

2

Я бы также предложил использовать шаблон MVVM, независимо от того, используете ли вы PCL или нет. Это поможет вам отделить вашу бизнес-логику от вашего кода, ориентированного на платформу, поэтому, вероятно, будет проще переносить на несколько платформ по дороге.

Смежные вопросы