Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Как было отмечено в начале пособия, одной из причин успешного продвижения объектной технологии является то, что понятие объекта оказалось удачным с точки зрения построения моделей процессов и систем. Поэтому достаточно быстро объекты вышли за рамки «чистого» программирования, захватив и другие этапы разработки программных систем, прежде всего – анализ предметной области и проектирование структуры системы [5-7]. Были разработаны специальные методики для проведения объектного анализа и построения объектных моделей, а также – специальные средства описания этих этапов. Наибольшее распространение здесь получил специальный графический язык объектного моделирования UML (Unified Modeling Language), который предлагает описывать предметную область с помощью ряда диаграмм, среди которых центральное место занимает диаграмма взаимодействия классов.
Развитие объектной технологии координируется общественной некоммерческой организацией Object Management Group (OMG). Версия 2.0 языка UML была принята консорциумом OMG в 2004 году как средство моделирования больших информационных систем. Эта версия языка включает в себя 13 типов диаграмм.
Интересным и перспективным направлением развития объектной технологии консорциум OMG считает использование объектных моделей информационных систем для автоматической генерации программного кода и структур баз данных. Эта технология известна как Model Driven Architecture (MDA), т.е. Архитектура, Управляемая Моделью. Суть ее в том, что разработчик (системный аналитик, т.е. уже не “чистый” программист) совместно с заказчиком разрабатывает с помощью средств языка UML модель создаваемой системы. На основе этой модели автоматически генерируется структура базы данных, программный код для реализации бизнес-логики и необходимые пользовательские интерфейсные элементы. Для сложных систем такой подход дает неоспоримые преимущества, т.к. необходимые изменений гораздо легче внести в высокоуровневую модель, чем непосредственно в программный код.
Естественно, что реализация технологии MDA требует соответствующей программной поддержки. Одним из лидеров в этой области является корпорация Borland, которая в рамках продукта Delphi 2006 реализовала инструмент ECO (Enterprise Core Objects).
Еще одним интересным направлением является использование паттернов проектирования (design patterns) [17]. Эти паттерны описывают наиболее типичные схемы взаимодействия объектов и классов и поэтому по сравнению с изолированными классами представляют более мощный инструмент. Набор типовых паттернов позволяет быстрее создать объектный проект системы и упрощает внесение в него необходимых изменений.
Контрольные вопросы
1. Что такое компонентные классы и для чего они вводятся?
2. Что такое свойства (property) в компонентной модели и как они описываются?
3. Приведите пример описания класса, использующего понятие свойства.
4. Как свойства используются в программах?
5. Какие свойства называются опубликованными?
6. Как в компонентной модели Borland Delphi реализуется обработка событий?
7. Как в классах объявляются свойства процедурного типа?
8. Какие стандартные процедурные типы объявлены в библиотеке VCL?
9. Как можно реализовать обработку нестандартных событий?
10. Какие базовые классы в библиотеке VCL поддерживают компонентную модель?
11. Что такое свойство потоковости и для чего оно необходимо?
12. Что обеспечивает механизм владения и как он реализуется?
13. Что такое визуальные и невизуальные компоненты и как они используются?
14. Перечислите основные концепции компонентной модели Java Beans.
15. Какие правила используются для описания компонентных классов в модели Java Beans?
16. Приведите пример описания компонентного класса Java Beans.
17. Как реализуется обработка событий в компонентной модели Java Beans?
18. Назовите основные классы событий в модели Java Beans.
19. Перечислите основные интерфейсы слушателя в модели Java Beans.
20. Как создаются и регистрируются объекты-слушатели в модели Java Beans?
21. Что обеспечивает механизм сериализации в языке Java?
22. Как объявляются свойства в языке C#?
23. Что такое делегаты и для чего они вводятся?
24. Как описываются и используются делегаты?
25. Как можно пополнить список вызовов делегата?
26. Как в языке C# вводится обработка событий?
27. В чем состоят особенности создания распределенных приложений?
28. Какие технологии используются при создании распределенных приложений?
29. В чем состоят особенности технологии MS COM/DCOM?
30. Что лежит в основе создания распределенных приложений для платформы Java?
31. Что такое технология CORBA?
32. Что такое SOAP?
33. Для чего используется язык UML?
34. Что такое паттерны проектирования?
Дата публикования: 2014-11-02; Прочитано: 375 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!