6/7/2007 9:36:00 AM

Несмотря на название данный постинг будет не о путешествиях, а о программировании, извиняюсь :)

Acropolis - это фреймворк от Майкрософт для разработки клиентских приложений на платформе .NET c использованием WPF. Два дня назад стала доступна версия CTP1, о которой я немного и расскажу.
Для установки и работы понадобится Microsoft Visual Studio "Orcas" Beta1, которую тоже можно свободно загрузить с сайта Майкрософт.

Задачи, которые могут быть легко решены с помощью Акрополиса таковы:

  1. Модульная разработка приложения.
  2. Работа с темами пользовательского интерфейса
  3. Четкое разделение бизнес-логики приложения и этого самого пользовательского интерфейса.
  4. Легкость и прозрачность взаимодействия различных частей приложения.
  5. Простота создания модулей приложения.

Как видите, этот список очень пересекается с тем, что мы имеем в случае Composite UI Application Block,  однако сразу скажу, что Acropolis не использует ни CAB, ни Enterprise Library вообще.

Теперь немного о том, как это работает сейчас.
Основными "строительными блоками" приложения в Acropolis являются Services и Parts.
Services - сервисы - это то же самое, что и сервисы в CAB - спрятанные за интерфейсами сущности, к которым можно обращаться из приложения для доступа к какой-либо функциональности.
Part - это некоторая логически обособленная часть приложения, реализующая некоторую бизнес-логику. Part - это модуль, UseCase. Например, модуль редактирования документа. Каждый Part может иметь несколько Views - представлений, реализующих пользовательский интерфейс.
Добавить Part  в проект можно, выбрав нужный тип элемента из стандартного списка "Add -> New Item..", при этом можно одним кликом добавить связку Part и View.
Что интересно, Part, так же как и View, описывается декларативно с помощью XAML и может "настраиваться" прямо в design-time. Вот как это выглядит:

Acropolis Part - Design

Подчеркну, это не кусок пользовательского интерфейса, это настройка модуля бизнес-логики. Здесь с помощью простого перестакивания мышкой (или с помощью написания XAML, как удобно) можно указать Сервисы, от которых зависит и с которыми должна работать данная часть приложения (в моем случае я задекларировал зависимость от сервиса SuperService), задать ConnectionPoints - попросту говоря, набор свойств и команд, которые будут доступны из представления (View) (в моем случае это свойство DocumentText и команда DoSomethingCommand). Здесь же задаются и другие параметры, которые видны на скриншоте.

Представление (View) же представляет собой "обычный" XAML-файл, внутри которого можно располагать различные элементы управления, с которыми будет взаимодействовать пользователь.

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

Скачать и посмотреть самому можно здесь. Там же есть простенькое видео, демонстрирующее некоторые возможности фреймворка.

Comments are closed

Powered by BlogEngine.NET 2.5.0.6

About the author

Alexey Raga Alexey Raga
.NET software developer.

E-mail me Send mail

Twitter

Widget Twitter not found.

Root element is missing.X


Recent posts

Archive

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2012

Sign in