Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Проектирование скрывающих информацию классов





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

 

 

11. 1. Проектирование классов интерфейса устройств

Класс интерфейса устройства скрывает истинный интерфейс с физическим устройством, предлагая вместо него виртуальный интерфейс. Для каждого типа устройств ввода/вывода имеется отдельный интерфейсный класс. Состав операций, поддерживаемых таким классом, зависит от функций, которые должен поддерживать объект интерфейса. Классы интерфейса устройств изображены на рис. 16 и описаны ниже:

- Интерфейс Датчика яркости. Предоставляет две операции: читать (считывает значение Датчика яркости) и инициализировать;

- Интерфейс Датчика движения. Предоставляет две операции: читать (считывает значение Датчика движения) и инициализировать;

- Интерфейс Выключателя. Также предоставляет две операции: читать (считывает значение Выключателя) и инициализировать;

- Интерфейс Лампы. Предоставляет операции включить и выключить, соответствующие сообщениям Включение лампы и Выключение лампы;

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

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

Рис. 16. Классы интерфейса устройств

11. 2. Проектирование классов, зависящих от состояния

В системе есть два зависящих от состояния класса - Управление лампами и Управление жалюзи, которые инкапсулирует диаграммы состояний, реализованные в виде таблицы переходов, изображённые соответственно на рис. 6 и рис. 7.

Каждый из этих классов поддерживает две операции: обработатьСобытие и текущееСостояние. Эти объекты вложены соответственно в задачи Контроллер Ламп и Контроллер Жалюзи. Поскольку задача существует в нескольких экземплярах, то и экземпляров класса будет несколько – по одному для каждого этажа. Спецификации классов представлены на рис. 17.

 

Рис. 17. Зависящие от состояния управляющие объекты

Date: 2016-01-20; view: 359; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию