Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры по ТРПО.doc
Скачиваний:
13
Добавлен:
23.04.2019
Размер:
469.5 Кб
Скачать
  1. Объектный подход.

Середина 80-х гг.-конец 90-х гг. Широкое внедрение ПК, широкий круг пользователей -> бурное развитие пользовательских интерфейсов и создание четкой концепции качества программ. Появляются языки, учитывающие технологии программирования (ADA). Развиваются методы и языки спецификации программных средств (требования к ПО). Развивается ООП. Созданы среды, поддерживающие визуальное программирование с использованием специальных библиотечных компонентов.

- при использовании ОО-языков сохраняется зависимости модулей ПО от адресов экспортируемых полей и методов структур и форматов данных.

  1. Компонентный подход и развитие case-технологий.

С середины 90-х гг.

Построение ПО из физически отдельно существующих частей ПО, которые взаимодействуют между собой через стандартизированные двоичные интерфейсы (на машинном языке).

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

CASE-технологии – это разработка ПО с использованием компьютерной поддержки всех этапов жизненного цикла ПО.

  1. Методологии программирования

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

Методологическое знание выступает в форме предписаний и норм, в которых фиксируются содержание и последовательность определенных видов деятельности, а также описание фактически выполненной деятельности.

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

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

Разные направления в программировании (в том числе и в методологиях) родились на основе четырех главных моделей алгоритмов:

  1. Абстрактные вычислительные машины Тьюринга и Поста -> методология императивного программирования.

  2. От рекурсивных функций Гельберта и Аккермана -> методология структурного программирования.

  3. Идея λ-исчисления Чёрча, Шейнфинкеля и Карри -> методология функционального программирования.

  4. Нормальные алгорифмы Маркова -> методология логического программирования и обработка символьной информации.

Способ описания алгоритма определяет ядро методологии.

  1. Методология императивного программирования;

  2. Методология ООП;

  3. Методология функционального программирования;

  4. Методология программирования в ограничениях;

  5. Методология логического программирования.

Топологией программ определяется «приставка» методологии. Например, если в императивной методологии придерживаться методов структурного программирования, то получим методологию структурного императивного программирования. «Суффикс» определяется организацией аппаратной поддержки. В настоящее время существует 2 организации архитектуры: централизованная и параллельная. Например, методология логического параллельного программирования.

Еще один способ классификации методологий – на основе отображения структур языка. Основные структуры языка – данные, управление и логика (9 отображений).

  1. Данные->данные – Отображают процесс укрупнения данных и операций над ними, и приводит к методам модульности и абстрактных типов данных.

  2. Управление->управление. Это отображение связано с понижением уровня структуры управления языка моделирования и идея структурного программирования.

  3. Логика->логика. В основе логического программирования.

  4. Данные->управление. Отображение активизирует пассивные данные, преобразуя их в активные процессы. Функциональное программирование, в значительной степени ООП.

  5. Данные->логика. Дает возможность по совокупности операций с данными построить логическую структуру. Методология программирования в ограничениях.

  6. Управление->данные. Лежит в основе методов интерпретации, определяет методологию «доступ ориентированного программирования».

  7. Управление->логика. Лежит в основе методов расшифровки смысла задачи. Методы обратного программирования.

  8. Логика->данные. Может быть связано с типизацией данных, с интерпретаторами, реализующими языки с развитой логической структурой.

  9. Логика->управление. Может быть использовано в системах структурного синтеза.

Каждая из 3-х структур языка состоит из разнородных подструктур, следовательно, на основе их можно построить более детальную классификацию.

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