Реферат: Протоколы и стандарты объектно-ориентированного программирования

ружность и квадрат естественно рассматривать как варианты геомет-

рической фигуры. Полезно составлять списки фигур, нарисованных на

экране, или функций, которые их размножают, двигают и т.д. О точ-

ном типе объекта приходится порой забывать. Список геометричес-

ких фигур "не знает", что в нем находится - отрезки или звездоч-

ки. Не знает этого и компилятор. Но все время, пока вы рисуете

эти объекты, неизбежно приходится "помнить", что они из себя

представляют. Конечно, возможности низкого уровня позволяют "за-

бывать" и "вспоминать" когда и как нам заблагорассудится, но при

этом компилятор теряет контроль над осмысленностью действий.

Использование производных классов и виртуальных функций поз-

воляет избежать рискованной техники и не заботится о том, в ка-

кой форме объект типа "геометрическая фигура" хранит информацию о

том, круг он или квадрат. (Кроме возможностей ООП, создание ти-

пов данных "треугольник" или "квадрат" как производные от базово-

го класса "геометрическая фигура" отражает логическую связь поня-

тий). Виртуальные функции, по существу, определяют, что именно

можно делать с объектом, а не то, как это делать. Создавая класс

"геометрическая фигура", мы можем включить в него виртуальные

функции рисования, увеличения, поворота. С использованием этих

функций можно создать еще один член класса.

Затем можно разработать библиотеку программ интерактивной

графики, снабдив ее средствами диалого, функциями вроде дополне-

ния некоторой области экрана одинаковыми геометрическими фигура-

ми и т.д. Библиотечные функции будут вызывать функции-члены клас-

са "геометрическая фигура": рисования, движения, поворота,увели-

чения. А после того, как мы все это напишем, откомпилируем, спря-

чем текст функций, которые считаем своей интеллектуальной соб-

ственностью, начинается самое интересное. Теперь мы можем опи-

К-во Просмотров: 448
Бесплатно скачать Реферат: Протоколы и стандарты объектно-ориентированного программирования