ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 1) онлайн

Аналогия

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

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

Отдел продаж

Рис. 1.4. Корпоративный подход

 

34