Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции Java / 07. Компонентная модель в объектно-ориентированном программировании. Технология JavaBeans. Вложенные типы.pptx

.pdf
Скачиваний:
153
Добавлен:
16.03.2015
Размер:
577.69 Кб
Скачать

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

Лекция 7.1

Компонентная модель в объектно-ориентированном

программировании

Технология JavaBeans

© Составление, Гаврилов А.В., Попов С.Б. 2013

Самара

2013

План лекции

nКомпонентный подход

nJavaBeans

nСвойства компонентов

nГрафические компоненты

nСобытия и их обработка

nПерсистентность

nУпаковка компонентов

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

2

Объектный подход

vs

Компонентный подход

 

nОбъектный подход

Программа пишется как объектная модель реальной или воображаемой системы, объекты и их отношения легко понятны

nКомпонентный подход

Программа собирается из заранее созданных компонентов, которые могут быть достаточно сложны для понимания

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

3

Понятие компонента

nКомпонент – это элемент системы, представляющий определенную службу или сущность, допускающий взаимодействие с другими компонентами

nОсобенности компонентов:

Многоразовое использование

Независимость от контекста

Кооперация с другими компонентами

Инкапсуляция

Самостоятельность как единицы программы

nКомпонент – объект, написанный в соответствии со спецификацией

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

4

Требования к разработке компонентов

nПолная документация

nБолее строгое тестирование

nНадежная проверка достоверности входных данных

nВозврат полезных сообщений об ошибках

nРазработка с учетом непредусмотренного использования

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

5

Контейнеры и компоненты

nКонтейнер предоставляет контекст, в котором компоненты могут существовать и действовать совместно

nКонтейнер тоже может быть компонентом

nЭто полностью рекурсивно!

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

6

Существующие компонентные модели

nJavaBeans

nEnterprise JavaBeans

n.Net Framework Components

nActiveX

nCOM

nDCOM

nCORBA

nVLC & CLX

n

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

7

JavaBeans

nКомпонентная модель для языка Java

nКомпоненты называются Beans (бины)

nКомпонент описывается как класс, удовлетворяющий определенным правилам

nСледует различать компонент как класс компонента и компоненты как его экземпляры, использующиеся в программе

nДля работы с компонентами используются специальные программные средства, позволяющие «визуально» настраивать компонент и его взаимодействие с другими компонентами (RAD-tools)

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

8

Интроспекция

nСредства работы с бинами подвергают бины интроспекции

nИнтроспекция – механизм, основанный на рефлексии, позволяющий определить характеристики компонента, основываясь на информации, заключенной в именах элементов класса компонента и вспомогательных классах

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

9

Компоненты JavaBeans

nКомпонент имеет свойства, которые представляют собой характеристики компонента и могут быть изменены в процессе сборки

nКомпонент использует события для взаимодействия с другими компонентами

nКомпоненты обладают свойством персистентности: могут сохранять свое состояние в долговременное хранилище и затем восстанавливать его

nМетоды компонентов являются обычными методами Java и могут использоваться другими компонентами

Самарский государственный аэрокосмический университет имени академика С.П. Королёва

10