Основные методы разработки программ

Технологии программирования

 

Существует несколько различных технологий программирования:

· Процедурное программирование

· Функциональное программирование

· Логическое программирование

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

· Параллельное программирование

Процедурное программирование – это технология, основанная на создании алгоритма, как последовательности команд (операторов). Основной командой является оператор присваивания, кроме того, для разветвления используются условные операторы, а для повторения действий – циклы.

Функциональное программирование – это технология, основанная на создании программ, в которых единственным действием является вызов функции. Программа и пользовательские функции строятся из совокупности базовых функций. Представитель этого направления язык Lisp (List Processing), работающий со списками.

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

Объектно-ориентированное программирование – это технология, основанная на понятии объекта, который объединяет в себе структуры данных и методы их обработки, создании модели системы, как совокупности объектов. Представителями этого направления являются языки программирования С++, Visual Basic, Java Script, Delphi и др. С середины 90-х годов объектно-ориентированные языки стали реализовываться как системы визуального программирования в которых сборка экранной формы производится из готовых объектов-«полуфабрикатов» с помощью мыши.

Параллельное программирование

Параллельное программирование – это технология, основанная на программировании реальных параллельных процессов. Основной проблемой здесь является синхронизация и осуществление одновременного доступа к данным различными процессами. Используется в суперЭВМ.

 

 

Структурное проектирование

Задачи, решаемые на ЭВМ, являются математическими моделями про­цессов или явлений реальной жизни. В математической модели находят отражение наиболее существенные связи между реальными объектами. Модели реальных объектов вместе с присущими им связями образуют структуры данных, процесс обработки которых и описывается с помощью алгоритмов.

Алгоритмы большой сложности обычно представляются с помощью схем двух видов: обобщеннойидетальной.

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

Детальная схема описывает содержание каждого элемента обобщенной схемы с использованием управляющих структур блок-схемы или псевдокода.

Существует несколько методов проектирования:

q нисходящее (сверху-вниз)

q восходящее (снизу-вверх)

q смешанное, использующее два предыдущих метода.

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

Восходящее проектирование предполагает создание сначала детальной схемы для каждого структурного элемента, а затем - обобщенной схемы. Наиболее используемым является смешанное проектирование.

Модульное проектирование

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

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