Пример Телефонный справочник
Понятие объектной декомпозиции
при использовании технологии ООП решение задача представляется в виде результата взаимодействия отдельных функциональных элементов некоторой системы, имитирующей процессы, происходящие в предметной области поставленной задачи.
В такой системе каждый функциональный элемент, получив некоторое входное воздействие (которое называют сообщением) в процессе решения задачи, выполняет заранее определенные действия (например, может изменить собственное состояние, выполнить некоторые вычисления, нарисовать окно или график и в свою очередь воздействовать на другие элементы). Процессом решения задачи управляет последовательность сообщений. Передавая эти сообщения от элемента к элементу, система выполняет необходимые действия.
Функциональные элементы системы, параметры и поведение которой определяются условием задачи, обладающие самостоятельным поведением (то есть «умеющие» выполнять некоторые действия, зависящие от полученных сообщений и состояния элемента) получили название объектов.
Процесс представления предметной области задачи в виде совокупности объектов, обменивающихся сообщениями, называется объектной декомпозицией.
Для того чтобы понять, о каких объектах и сообщениях идет речь при выполнении объектной декомпозиции в каждом конкретном случае, следует вспомнить, что первоначально объектный подход был предложен для разработки имитационных моделей поведения сложных систем. Набор объектов таких систем обычно определяется при анализе моделируемых процессов.
На этапе анализа можно выделить 4 части программы, кот. Обеспечивают функционирование программы в различных режимах:
1)Меню
2)открытие файла
3)ввод данных
4)вывод данных
Эти части сравнительно независимы, обладают состояние и поведением, поэтому могут рассматриваться как объекты предметной области. Дальнейший анализ показывает, что необходимо предусмотреть еще 2 состояния для вывода сообщения пользователя интерфейса: -некорректное имя файла, нет инфо об абоненте.
Все сообщения будут активизироваться в режиме открытия файла при вводе имени файла. Недопустимого в конкретной ОС.
Объекты:
1)меню,2)открытие файла,3)ввод записи,4)вывод записи
Объекты сообщений в процессе работы должны получать информацию от пользователя и выдавать ему рез-ты, следоват, они должны иметь экранное представление(формы).Для хранения информации необходим еще один объект –файл записей. Этот объект должен получать сообщение команды для открытия файла, добавление записей и поиска.
Под объектом в ООП понимают отдельно реализуемую часть предметной области задачи. Разрабатываемая программа будет состоять из объектов, взаимодействующих между собой через передачу сообщений.Реализация объекта может зависеть от его состояния. Состояние объекта хар-ся набором конкретных значений его возможных св-в. Перечень хар-к в процессе функционирования не меняется. Могут измениться лишь конкретные значения этих хар-к. Поведение объектов характеризуется определ. набором реакций на получаемое сообщение , часто зависит от состояния объекта.