Рубрика «patterns and practices» - 2

Оглавление

  1. Введение
  2. Инициализация приложений Prism
  3. Управление зависимостями между компонентами
  4. Разработка модульных приложений
  5. Реализация паттерна MVVM
  6. Продвинутые сценарии MVVM
  7. Создание пользовательского интерфейса
  8. Навигация
  9. Способы коммуникации между слабосвязанными компонентами

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

Например, рассмотрим персональное банковское приложение. Пользователь может получить доступ к множеству функций, таких как передача денег между учетными записями, оплата счетов, и обновление персональных данных, используя единственный пользовательский интерфейс (UI). Однако, каждая из этих функций инкапсулируется в пределах дискретного модуля. Эти модули связываются друг с другом и с системами бэкэнда, такими как серверы баз данных и веб-сервисы. Прикладные службы интегрируют различные компоненты в пределах каждого из различных модулей и обрабатывают взаимодействие с пользователем. Пользователь видит интегрированное представление, которое похоже на единственное цельное приложение.

Следующая иллюстрация показывает проект модульного приложения.

Модульное приложение
Читать полностью »

Оглавление

  1. Введение
  2. Инициализация приложений Prism
  3. Управление зависимостями между компонентами
  4. Разработка модульных приложений
  5. Реализация паттерна MVVM
  6. Продвинутые сценарии MVVM
  7. Создание пользовательского интерфейса
  8. Навигация
  9. Способы коммуникации между слабосвязанными компонентами

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

Для связи всех частей воедино, Prism приложения полагаются на DI контейнер. DI контейнеры уменьшают зависимости между объектами, предоставляя способ создания экземпляров классов и управления их временем жизни в зависимости от конфигурации контейнера. При создании объектов с помощью контейнера, он инжектирует в них необходимые зависимости. Если зависимости еще не были созданы, то контейнер в начале создает их и разрешает их собственные зависимости. В некоторых случаях, сам контейнер внедряется как зависимость. Например, при использовании Unity, в модули внедряется контейнер для того, чтобы они могли зарегистрировать в нём свои представления и службы.

Есть несколько преимуществ использования контейнера:

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

В контексте приложения, основанного на библиотеке Prism, есть определенные преимущества контейнера:

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

Читать полностью »

Оглавление

  1. Введение
  2. Инициализация приложений Prism
  3. Управление зависимостями между компонентами
  4. Разработка модульных приложений
  5. Реализация паттерна MVVM
  6. Продвинутые сценарии MVVM
  7. Создание пользовательского интерфейса
  8. Навигация
  9. Способы коммуникации между слабосвязанными компонентами

Эта глава рассказывает о том, что нужно сделать для загрузки приложения Prism. Приложение Prism требует регистрации и конфигурации компонентов во время запуска – этот процесс известен как bootstrapping.

Что такое загрузчик (Bootstrapper)

Загрузчик является классом, ответственным за инициализацию приложения, созданного с использованием библиотеки Prism. При использовании загрузчика вы получаете больший контроль над тем, как компоненты библиотеки Prism создаются и соединяются при запуске вашего приложения. Библиотека Prism включает абстрактный базовый класс загрузчика, который может быть специализирован для использования с любым контейнером. Многие из методов в классах загрузчиков являются виртуальными. Можно переопределять эти методы для предоставления собственной их реализации.

Основные этапы процесса загрузки.
Читать полностью »

Если вы разрабатываете приложения для XAML-based платформ, таких как WPF, Silverlight, Windows Phone, или Windows Store, то Prism, определённо, сильно поможет вам упростить их разработку. После создания нескольких проектов с использованием Prism, я убедился в работоспособности такого подхода и решил подготовить перевод официального руководства Prism. Итак, часть первая, что же такое Prism.

Оглавление

  1. Введение
  2. Инициализация приложений Prism
  3. Управление зависимостями между компонентами
  4. Разработка модульных приложений
  5. Реализация паттерна MVVM
  6. Продвинутые сценарии MVVM
  7. Создание пользовательского интерфейса
  8. Навигация
  9. Способы коммуникации между слабосвязанными компонентами

Prism является руководством, разработанным для того, чтобы помочь проектировать и создавать насыщенные, гибкие и легко поддерживаемые Windows Presentation Foundation (WPF) приложения, Silverlight Rich Internet Applications (RIAs), и программы под Windows Phone 7-8, а также Windows Store приложений. Используя паттерны проектирования, которые воплощают важные принципы архитектурного дизайна, такие как разделение ответственности (Separation of Concerns, SoC) и слабая связанность (Loose coupling), Prism помогает вам проектировать и писать приложения со слабо связанными компонентами, которые могут независимо развиваться и потом объединяться в одно целое с минимальными усилиями. Этот тип приложений известен как составные приложения.

Читать полностью »

Приветствие

Всем привет! В этот радостный и, достаточно, теплый пятничный денек приключилась у меня (процитирую в более приятном варианте) «рука-лицо». Честно говоря, приключается сие действие достаточно часто, но, по обыкновению, вызывается оно от ощущения:

Боже, какой же я тупой.

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

Посвящается фанатам группы Microsoft Patterns&Practices и просто любителям такой полезной штуки как Microsoft PRISM.

Разработчики, которые в своей практике встречались с Microsoft PRISM, вероятно, имеют двоякое мнение об этом фреймворке. С одной стороны, в своей по номеру 4-й, а по порядку 3-й, версии – это очень мощный и гибкий инструмент для создания композитных приложений, а с другой стороны довольно непонятная и запутанная библиотека. Но можно на PRISM взглянуть и просто как на реализацию шаблона MVVM, чем PRISM для Windows Phone по сути и является.
Читать полностью »

Хорошие новости! В электронной библиотеки TechNet (E-Book Gallery for Microsoft Technologies) опубликованы переведенные на русский язык электронные книги (EPUB, MOBI, PDF) по технологиям Windows Azure.

Миграция приложений в Windows Azure

imageМиграция приложений в Windows Azure, 2-й выпуск
Справочникруководство Patterns & Practices

Это первая книга в серии patterns & practices, посвященной платформе Windows Azure. В книге рассматривают различные аспекты (изменения в архитектуре, вопрос стоимости, мониторинг и диагностика системы и т.п.) миграции локального приложения на облачную платформу Microsoft – Windows Azure. В книге описана миграция на примере приложения aExpense, это ASP.NET приложение согласования авансовых отчетов. Во-первых, книга поможет получить хорошее представление о тех вопросах, которые необходимо учесть при миграции приложения в облако, а, во-вторых, в книге даются ответы на ряд практических задач, которые являются актуальными не только при миграции приложения, но и просто при разработке любого облачного приложения.

EPUB Опубликованы бесплатные электронные книги по технологиям Windows Azure от команды Patterns & Practices | MOBI Опубликованы бесплатные электронные книги по технологиям Windows Azure от команды Patterns & Practices| PDF Опубликованы бесплатные электронные книги по технологиям Windows Azure от команды Patterns & Practices
Читать полностью »

Друзья!
Сегодня, 5-го октября, в 10:00 начнётся саммит Patterns'n'Practices в Москве, который интересен одновременно как с точки зрения обсуждения практик и подходов, используемых при реализации программных проектов, так и с технологической стороны, потому что здесь будет также рассказано о применении самых передовых инструментов и технологий.
image
Читать полностью »

pnp

Уважаемые разработчики! Я рад рассказать вам об очередной конференции Patterns & Practices Summit Russia, в рамках которой будут рассмотрены современные практики построения бизнес-приложений. Конференция пройдет 5 октября в Москве.

С полной программой конференции можно ознакомиться на официальном сайте. Здесь мне бы хотелось рассказать более подробно про трек для разработчиков облачных приложений на платформе Windows Azure.

Докладчиками конференции стали ведущие эксперты компании Microsoft из группы Patterns & Practices и российского отделения компании:

  • Эухиньйо Паче. Создание гибридных приложений в облаке на базе Microsoft Azure
  • Кристофер Бенаж, Эухиньйо Паче. Погружение в Command Query Responsibility Segregation (CQRS)
  • Владимир Гусаров. ALM в Облаке — использование инфраструктуры Microsoft Windows Azure для управления жизненным циклом приложений
  • Наталья Ефимцева. Windows Azure предоставляет новые возможности для работы с Workflow Foundation
  • Владимир Юнев. Решение интеграционных задач предприятия с помощью Windows Azure Service Bus
  • Эухиньйо Паче. Автоматическое масштабирование приложений Windows Azure по требованию

Под катом вы найдете краткую информацию о докладчиках и несколько анонсов.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js