Читайте также:
|
|
Говоря в общем виде в терминах Системы ИИ вызов соответствующей процедуры должен осуществляться следующим образом:
Пример: мы обсуждали изменение времени начала лекции, проводимой Точилкиным в аудитории 3 с 9:30 на 9:00 с помощью функции ПРИСВОИТЬ. Чтобы произошло, если бы кто-то еще захотел использовать ту же аудиторию с 9:00 до 12:00.
Если допустить изменения без каких-либо дополнительных действий произошла бы «накладка». Избежать этого можно следующим образом: когда Точилкин меняет время начала лекции, автоматически должна вызываться процедура, проверяющая для всех объектов время начала и окончания лекций в аудитории №3. Если обнаружена конфликтная ситуация, Точилкин должен быть поставлен в известность и должен принять соответствующее решение.
С другой стороны, если Точилкин хочет изменить лишь атрибут Предмет, дополнительная процедура не нужна, так как при этом не затрагиваются другие объекты.
Возможное решение может быть следующим:
описывая структуру, воспользоваться следующими соглашениями:
Создать_структуру(Имя_структуры = Лекция,
Число_атрибутов = 7,
Атрибут = Зал,
Атрибут = Предмет,
Атрибут = Докладчик,
Атрибут = *Начало,
Атрибут = Процедура,
Атрибут = *Окончание,
Атрибут = Процедура).
Слоты процедур будут применяться при создании объектов структуры Лекция для указания имен процедур, которые должны вызываться из функции Присвоить при изменении атрибутов Начало и Окончание.
Вызов функции создания объекта может выглядеть следующим образом:
Создать_объект(Имя_структуры = Лекция,
Имя_объекта = П-41,
Зал = 3,
Предмет = Системы ИИ,
Докладчик = Точилкин,
Начало = 9:00,
Процедура = Имя_процедуры,
Окончание = 12:00,
Процедура = Имя_процедуры).
Говоря более подробно, подпрограмма, реализующая функцию Присвоить, выполняет следующие действия:
Такая работа подпрограммы, реализующая функцию, которая включает вызов дополнительных процедур, является характерной особенностью объектно-ориентированного программирования. По сути это способ передачи сообщений для связи между разнородными объектами. Это свойство закладывается в систему при ее разработке.
Дата добавления: 2014-12-19; просмотров: 37 | Поможем написать вашу работу | Нарушение авторских прав |