Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Практические рекомендации по проектированию класса фигурыПрежде чем начать конструировать класс многоугольника нужно попытаться представить себе - что представляет собой понятие многоугольника и попытаться выделить в нем наиболее важные элементы. В нашем случае понятие (абстрактное представление) многоугольника связано с некоторым графическим отображением такого объекта, который представляет собой множество вершин (точек), соединенных между собой отрезками прямых линий, называемых ребрами. Поэтому класс многоугольника должен содержать элемент, в котором будут храниться все его вершины. Кроме того, многоугольники могут быть раскрашенными в разные цвета и обводится контуром, цвет которого отличается от цвет закраски самой фигуры. Причем контуры фигуры (ее ребра) могут изображаться в виде сплошной, пунктирной, штрих-пунктирной и других типов линий. А закраска поля фигуры тоже может осуществляться с использованием разных стилей закраски. Некоторые (если не все) из фигур могут содержать текстовый комментарий (например: "Фигура №1", Фигура №2" и т.д.). Поэтому класс многоугольника, кроме своих вершин, должен содержать еще и переменные, определяющие цвет контура и цвет закраски, стиль изображения контурных линий и стиль закраски области внутри фигуры, текст комментария и т.д. В результате создается перечень полей данных, которыми может располагать класс. А каким же интерфейсом должен обладать класс многоугольника? Прежде всего, это, наверное, методы, позволяющие добавлять и удалять его вершины, вырисовывать экземпляры класса, перемещать их, изменять положение выбранной вершины, изменять цвет контура или закраски и другие. Кроме того, следует учесть и возможные области использования этого класса. Например, использование класса многоугольника в приложениях для графического редактирования изображений, представляющих собой специфическую совокупность, связанных между собой отдельных многоугольников (деревенский дом с окнами и дверями, оградой и калиткой и т.д.). В таком случае, часто требуется выбрать одну из фигур, например, окно или дверь, и переместить ее в другое место. Но для этого нужно, чтобы фигура могла реагировать на попадание курсором в ее область. Поэтому, желательно включить в состав методов класса и такую функцию. Можно, конечно, придумать множество таких функций. Где же предел и как не перейти границы того, что вовсе не свойственно данному классу? В этом случае следует руководствовать тем, что методам доступно выполнение только таких действий, которым достаточно использовании данных, которыми располагает данный класс. В этом смысле класс должен быть самодостаточным и не требовать никакой дополнительной информации из своего окружения. Подобный анализ характерных особенностей объектов предметной области позволяет программисту разработать класс, который позволяет достаточно полно описать понятие о многоугольнике как одной из возможных форм представления геометрических фигур.
|