logo search
lekcii_po_informatike_delphi+++++++

3. ОСНОВНЫЕ ПОЛОЖЕНИЯ ООП

Развитие ООП обусловлено рядом причин. Одна из них – увеличение сложности программного обеспечения, вызванное:

сложностью предметной области – затрагивание все более широких областей реальности приводит к тому, что понять целиком систему становится все труднее. Кроме того, пользователю все труднее объяснить разработчику в доступной форме, что он хочет. Дополнительную сложность вызывает внесение корректировок в разрабатываемый проект. Применение ОО подхода снижает данную сложность;

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

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

неудовлетворительным способом описания поведения больших дискретных систем – в каждый момент времени система находится в определенном дискретном состоянии, характеризуемом текущими значениями переменных, их адресов, адресов стека и т.д. Однако возможен переход из одного дискретного состояния в другое, не учтенное разработчиком, в котором возможен крах системы. Разбиение сложной системы на части, их отдельное описание и тестирование, организация как можно меньшего числа каналов взаимодействия между составными частями позволяет уменьшить вероятность краха системы.

На преодоление этих сложностей и было направлено постепенное изменение языков программирования, основные поколения которых характеризуются:

1 поколение, начало 2: FORTRAN, COBOL – имеют простую структуру, состоящую из глобальных данных и подпрограмм. Так как область данных доступна всем подпрограммам, то ошибка в одной из них может иметь далеко идущие последствия. Наличие большого числа перекрестных связей между подпрограммами постепенно приводит к трудности в схемах управления и при поиске ошибок;

конец 2 и начало 3 поколения – появление средств передачи параметров между подпрограммами, вложенности подпрограмм, определение областей видимости, возможность использовать подпрограммы как готовые блоки;