Участники компьютерных игр.

Пользовательские типы данных.

Хранилища данных.

Группы людей.

Структуры данных.

Элементы интерфейса.

Физические объекты.

Объекты

Характеристики объектно-ориентированных языков

ОП: подход к организации программы

Объектно-ориентированное программирование никак не связано с процессом вы­полнения программы, а является лишь способом ее организации. Большая часть операторов C++ идентична операторам процедурных языков, в частности языка С. Внешне метод класса в C++ очень похож на обычную функцию языка С, и только по контексту программы можно определить, является ли функция частью процедурной С-программы или объектно-ориентированной программы на C++.

Здесь мы рассмотрим несколько основных элементов, входящих в состав объектно-ориентированных языков, в частности в состав языка C++.

Когда вы подходите к решению задачи с помощью объектно-ориентированного метода, то вместо проблемы разбиения задачи на функции вы сталкиваетесь с проблемой разбиения ее на объекты. Мышление в терминах объектов оказывает­ся гораздо более простым и наглядным, чем в терминах функций, поскольку про­граммные объекты схожи с объектами реального мира. Более подробно данный вопрос рассмотрен в главе 16 «Разработка объектно-ориентированного программ­ного обеспечения».

Что должно представляться в программе в виде объектов? Окончательный ответ на этот вопрос может дать только ваше воображение, однако приведем не­сколько советов, которые могут оказаться полезными:

 

♦ Автомобили при моделировании уличного движения.

♦ Схемные элементы при моделировании цепи электрического тока.

♦ Страны при создании экономической модели.

♦ Самолеты при моделировании диспетчерской системы.

 

♦ Окна.

♦ Меню.

♦ Графические объекты (линии, прямоугольники, круги).

♦ Мышь, клавиатура, дисковые устройства, принтеры.

 

♦ Массивы.

♦ Стеки

♦ Связанные списки

♦ Бинарные деревья.

 

♦ Сотрудники.

♦ Студенты.

♦ Покупатели.

♦ Продавцы.

 

♦ Описи инвентаря.

♦ Списки сотрудников.

♦ Словари.

♦ Географические координаты городов мира.

 

♦ Время.

♦ Величины углов.

♦ Комплексные числа.

♦ Точки на плоскости.

 

♦ Автомобили в гонках.

♦ Позиции в настольных играх (шашки, шахматы).

♦ Животные в играх, связанных с живой природой.

♦ Друзья и враги в приключенческих играх.

 

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