Средства разработки приложений


Использование образцов (patterns)


В обзоре по XDE Developer нельзя не отметить возможности продукта по использованию образцов.

В XDE DeveloperPlus v2003 .NET все образцы хранятся в библиотеках, представляющих собой обычный файл модели с расширением WDX. И хотя можно создавать собственные библиотеки, по умолчанию уже доступна GoF библиотека, спроектированная так называемой Группой четырех (Gang of Four), к которой относятся такие известные специалисты в этой области, как Эрик Гамма (Erich Hamma), Ричард Хелм (Richard Helm), Ральф Джонсон (Ralph Johnson) и Джон Влиссидес (John Vlissides). Библиотека создана на основе их публикации "Design Patterns: Elements of Reusable Object-Oriented Software" (Addison-Wesley, 1995).

Рассмотрим работу с образцами на самом, пожалуй, простом примере - применим образец Singleton. Применение данного образца к некоторому классу гарантирует, что в любое время может быть создан только один его экземпляр. Например, если это класс некоторого окна, то не может быть создано более одного его экземпляра. А при попытке создать другое окно такого же класса просто будет возвращаться ссылка на существующее.

Создадим новый проект в Visual Studio .NET типа "Windows Application" на языке C#. В таком проекте изначально определен единственный класс Form1. Это класс главного окна приложения. Выполним Reverse Engineering этого проекта с помощью XDE DeveloperPlus. Все это делается стандартным образом и, думаю, что нет смысла подробно описывать указанные действия. Наша цель-применить образец Singleton к классу Form1.

Переместим класс Form1 из окна "Model Explorer" на любую диаграмму модели (можно создать для этого диаграмму классов). B Toolbox находим группу образцов "GoF Pattern Library for CSharp v2_5" и перетаскиваем мышью образец Singleton прямо на класс Form1 (рис. 12).

Рис. 12. Мышью перетаскиваем образец Singleton на класс Form1.

Среда еще задаст несколько вопросов, на которые можно отвечать утвердительно. Конечным результатом применения образца Singleton будет следующая структура классов (рис. 12).




Начало  Назад  Вперед



Книжный магазин