3. Объектно-ориентированный подход

 

Объектно-ориентированный подход

CorelDRAW 11 представляет собой интегрированный объектно-ориентированный пакет программ для работы с иллюстративной графикой. Попробуем разобраться, что стоит за этими терминами.


Под словами «интегрированный пакет» следует понимать, что CorelDRAW 11 представляет собой не отдельную программу, ориентированную на решение какой-либо одной четко поставленной задачи, а совокупность программ (пакет), ориентированных на решение множества различных задач, возникающих при работе пользователя в определенной прикладной области, а именно — в области иллюстративной графики. Интегрированностъ пакета следует понимать в том смысле, что входящие в него программы могут легко обмениваться данными или последовательно выполнять различные действия над одними и теми же данными. Так достигается многофункциональность пакета, возможности разных программ объединяются, интегрируются в единое целое, представляющее собой нечто большее, чем сумму своих составных частей.


Иллюстративная графика — это прикладная ветвь машинной графики, сравнительно недавно выделившаяся в отдельное направление наряду с графикой деловой, научной и инженерной. К области иллюстративной графики относятся в первую очередь рисунки, коллажи, рекламные объявления, заставки, постеры — все, что принято называть художественной продукцией. Объекты иллюстративной графики отличаются от объектов других прикладных областей своей первичностью — они не могут быть построены автоматически по некоторым исходным данным, без участия художника или дизайнера. В отличие от них такие графические изображения, как диаграммы (деловая графика), чертежи и схемы (инженерная графика), графики функций (научная графика), представляют собой лишь графический способ представления первичных исходных данных — как правило, таблицы (или аналитической модели, представленной в другой форме). В этом состоит их вторичность, производность.


Термин «объектно-ориентированный» следует понимать в том смысле, что все операции, выполняющиеся в процессе создания и изменения изображений, пользователь проводит не с изображением в целом и не с его мельчайшими, атомарными частицами (пикселами точечного изображения), а с объектами — семантически нагруженными элементами изображения. Начиная со стандартных объектов (кругов, прямоугольников, текстов и т. д.), пользователь может строить составные объекты (например, значок в рассмотренном выше примере) и манипулировать ими как единым целым. Таким образом, изображение становится иерархической структурой, на самом верху которой находится иллюстрация в целом, а в самом низу — стандартные объекты.


Вторая особенность объектной ориентации пакета состоит в том, что каждому стандартному классу объектов ставится в соответствие уникальная совокупность управляющих параметров, или атрибутов класса. Если мы говорим о прямоугольнике высотой 200 мм и шириной 300 мм, залитом синим цветом, обведенным желтой линией шириной 3 пункта, с центром, расположенным в 150 мм по вертикали и в 250 мм по горизонтали от левого нижнего угла страницы, с углом наклона длинной стороны к горизонтали составляющим 32°, мы имеем дело с экземпляром класса — объектом, для которого зафиксированы значения управляющих параметров.


Третья особенность объектной ориентации пакета состоит в том, что для каждого стандартного класса объектов определен перечень стандартных операций. Например, описанный выше прямоугольник можно развернуть, масштабировать, закруглить ему углы, преобразовать его в объект другого класса — замкнутую кривую.


Объектная ориентация CorelDRAW дает пользователю почти неограниченную гибкость в работе. Можно выделять отдельные объекты изображения и модифицировать их на любом этапе работы, что невозможно ни для точечных изображений, ни при использовании традиционных инструментов художника — бумаги, кисти, пера, красок, карандашей. Если заказчик на заключительном этапе работы передумал и решил вместо верблюда изобразить на рекламном плакате бегемота, художнику не приходится начинать работу заново — достаточно заменить лишь некоторые объекты, а атрибуты нескольких других изменить. С другой стороны, уже на начальных стадиях работы над проектом художник может на основе одного эскиза выполнить несколько проработок, пользуясь различными стандартными операциями или просто меняя атрибуты объектов.


Примечание

До логического завершения концепцию объектной ориентированности пакета доводит введение в его состав объектно-ориентированного языка программирования VBA. Программные модули на этом языке позволяют автоматизировать выполнение часто повторяющихся действий и даже строить на основе CorelDRAW 11 специализированные графические системы, определяя новые классы объектов и операции над ними. Более того, этот процесс автоматизирован. В программный модуль на языке VBA можно преобразовать последовательность действий, причем их запись ведется автоматически (для возможной отмены последних действий).

Однажды построенные фрагменты изображений можно использовать в новых работах (начиная с одиннадцатой версии, такие фрагменты можно сохранять в специальных библиотеках), а также менять характер работы, не меняя изображения. Так, чтобы превратить рекламный постер в наклейку на кофейной чашке или авторучке или в анимированное изображение на странице web-узла, требуется совсем немного дополнительной работы.


Упрощается и структурируется также процесс изучения приемов работы с пакетом программ. Начать практическую работу можно сразу же после изучения атрибутов и операций для одного-двух классов объектов. В последующих уроках этой книги мы займемся этим, а сейчас обратимся к рабочей среде основного компонента пакета — программы CorelDRAW 11.