Структурное программирование — КиберПедия 

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

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

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

2017-05-18 846
Структурное программирование 0.00 из 5.00 0 оценок
Заказать работу

Структурное программирование - методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков.
Одним из первых идеологов его был профессор Э. Дейкстра. В 1965 году он высказал мысль, что "оператор GOTO может быть исключен из языков программирования". Идея эта была разработана и дополнена в 70-х годах XX века Н. Виртом.
Структурное программирование основано на модульной структуре программного продукта и типовых управляющих структурах алгоритмов обработки данных различных программных модулей.
Модульность - в языках программирования - принцип, согласно которому программное средство (ПС, программа, библиотека, web-приложение и др.) разделяется на отдельные именованные сущности, называемые модулями. Модульность часто является средством упрощения задачи проектирования ПС и распределения процесса разработки ПС между группами разработчиков. При разбиении ПС на модули для каждого модуля указывается реализуемая им функциональность, а также связи с другими модулями.
В любой типовой структуре блок, кроме условного, имеет только один вход и выход, безусловный переход на блок с нарушением иерархии запрещён (оператор языка программирования типа GOTO в структурном программировании не используется). Основная идея структурного программирования - это ограничение допустимых управляющих структур. В работах Бома и Джакопини было показано, что их необходимо всего две. Согласно их работе для написания любой программы требуется всего три основных составляющих блока: два управляющих и один "исполнительный". В таблице ниже приведены виды основных управляющих структур структурного программирования:

Последовательность Альтернатива (условие выбора) Цикл ("пока")

Эти блоки также называют:

 

· Функциональный, или исполняющий, блок.

· Конструкция принятия двоичного или дихотомического, решения (IF - THEN - ELSE).

· Конструкция обобщенного цикла (DO - WHILE).

Обычно этот список расширяют структурами выбора (CASE) и цикла с пост условием (REPEAT), являющимися производными от уже описанных конструкций.
Структурные программы, в отличие от обычных, неструктурированных, имеют простую древовидную форму, в них нет "клубка" переходов вперед-назад. Для изображения структурированных программ используют также диаграммы Несси-Шнейдермана, включающие в себя следующие структуры:
► Следование.
► Двоичное решение.
► Циклы с предусловием и постусловием.
В отличие от структурных схем Дейкстра, схемы Несси-Шнейдермана вообще не позволяют изобразить оператор безусловного перехода.

В соответствии с методологией структурного программирования:
1. Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:
последовательное исполнение - однократное выполнение операций в том порядке, в котором они записаны в тексте программы;
ветвление - однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;
цикл - многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
В программе базовые конструкции могут быть вложены друг в друга произвольным образом, но никаких других средств управления последовательностью выполнения операций не предусматривается.
2. Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде так называемых подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.
3. Разработка программы ведётся пошагово, методом "сверху вниз".
Последнее означает, что в структурном программировании сначала пишется текст основной программы, в котором, вместо каждого связного логического фрагмента текста, вставляется вызов подпрограммы, которая будет выполнять этот фрагмент. Вместо настоящих, работающих подпрограмм, в программу вставляются "заглушки", которые ничего не делают. Полученная программа проверяется и отлаживается. После того, как программист убедится, что подпрограммы вызываются в правильной последовательности (то есть общая структура программы верна), подпрограммы-заглушки последовательно заменяются на реально работающие, причём разработка каждой подпрограммы ведётся тем же методом, что и основной программы. Разработка заканчивается тогда, когда не останется ни одной "заглушки", которая не была бы удалена. Такая последовательность гарантирует, что на каждом этапе разработки программист одновременно имеет дело с обозримым и понятным ему множеством фрагментов, и может быть уверен, что общая структура всех более высоких уровней программы верна. При сопровождении и внесении изменений в программу выясняется, в какие именно процедуры нужно внести изменения, и они вносятся, не затрагивая части программы, непосредственно не связанные с ними. Это позволяет гарантировать, что при внесении изменений и исправлении ошибок не выйдет из строя какая-то часть программы, находящаяся в данный момент вне зоны внимания программиста.

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


Поделиться с друзьями:

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

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

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.006 с.