Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MSF_Lec1.docx
Скачиваний:
3
Добавлен:
28.10.2018
Размер:
175.43 Кб
Скачать
    1. Модульное программирование

Технология модульного программирования – оформившаяся в начале 70-х годов XX века идея разработки больших программных систем [3]. Это фундаментальная концепция, являющаяся основой всех современных подходов к проектированию и реализации. В то же время суть ее проста и отражает широко известные научные и технические методы, заключающиеся в поиске и реализации некоторого базового набора элементов, комбинации которых дают решение всех задач из определенного круга.

Если концепция структурного программирования предлагает некоторый универсальный алгоритмический базис, то модульное программирование состоит в разработке под конкретную задачу или круг задач (предметную область) собственного базиса в виде набора модулей, позволяющего наиболее эффективно по целому ряду критериев построить программный комплекс. Модули, входящие в базис, это целые программы (в отличие от примитивов структурного программирования), решающие некоторые подзадачи основных задач.

С применением модульного программирования появляются возможности коллективной разработки программ как набора «независимых» частей, последовательного уменьшения сложности методом разбиения сложной задачи на более простые подзадачи, наконец, возможности повторного использования созданного ранее кода.

    1. Объектно-ориентированное программирование

Развитие аппаратной базы привело к возможности решения при ее помощи все более или более сложных задач, а, значит, разработки все более и более сложных программ. Программы стали большими (даже очень большими), а разработка – коллективной. Объем работы увеличился, коллективы разрослись, код «разбух», и появились новые проблемы, которых не было раньше. Неожиданно выяснилось, что возможности структурного и модульного программирования ограничены и зачастую уже не позволяют добиваться желаемого результата (либо ничего не работает, либо проект не укладывается в сроки, либо в бюджет, либо через год после написания программы выясняется, что ее невозможно модифицировать и т.д.).

Объектно-ориентированная технология в некоторой степени решила большинство описанных проблем. В отличие от рассмотренных ранее технологий, объектно-ориентированная технология работает на стадиях анализа, проектирования и программирования. В основе технологии лежат объектная модель и объектная декомпозиция [Error: Reference source not found].

К основные принципам объектной модели часто относят следующие:

  • абстракция;

  • инкапсуляция;

  • иерархия (наследование, агрегация);

  • полиморфизм;

  • модульность.

Суть объектной декомпозиции состоит в выделении в предметной области классов и объектов, а также связей между ними, и лишь потом данных и алгоритмов, которыми характеризуется каждый класс. Таким образом, именно классы становятся основным «строительным блоком» в ООП, тогда как ранее таковыми блоками являлись алгоритмы.

    1. Компонентное программирование

Компонентное программирование – представляет собой развитие объектно-ориентированной технологии. В отличие от ООП введен следующий уровень абстракции – классы объединяются в компоненты.

Компонент:

  • программный код в виде самостоятельного модуля;

  • может быть использован в неизменном виде;

  • может допускать настройку;

  • обладает поведением (функциональностью).

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

Компонент изолирован от внешнего мира своим интерфейсом – набором методов (их сигнатурами).

Компонентная программа – набор независимых компонент, связанных друг с другом посредством интерфейсов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]