Цикл, или возврат, или циклическая инструкция

Выбор, или ветвление, или условная инструкция.

Следование, или цепочка, или составная инструкция.

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

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

Основные подходы к программированию:

- структурный, модульный;

- функциональный;

- логический;

- объектно-ориентированный;

- смешанный (некоторые подходы возможно комбинировать);

- компонентно-ориентированный (программный проект рассматривается как множество компонент, такой подход принят, в частности, в.NET);

- чисто объектный (идеальный с математической точки зрения вариант, который пока не реализован практически).

Структурное программирование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом.

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

Тремя элементарными структурными алгоритмами являются следующие:

В 1981 году Дональд Кнут разработал концепцию «грамотного программирования» как альтернативу «структурному программированию» при разработке системы компьютерной вёрстки. Несмотря на доказанную эффективность, данная концепция не получила распространения из-за непонимания.

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

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

§ точно обозначенные управляющие структуры,

§ программные блоки,

§ отсутствие инструкций безусловного перехода (GOTO),

§ автономные подпрограммы,

§ поддержка рекурсии и локальных переменных.

В соответствии с методологией структурного программирования:

1 Любая программа представляет собой структуру, построенную из трёх типов базовых конструкций:

- последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы;

- ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;

- цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).

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

2 Повторяющиеся фрагменты программы (либо не повторяющиеся, но представляющие собой логически целостные вычислительные блоки) могут оформляться в виде т. н. подпрограмм (процедур или функций). В этом случае в тексте основной программы, вместо помещённого в подпрограмму фрагмента, вставляется инструкция вызова подпрограммы. При выполнении такой инструкции выполняется вызванная подпрограмма, после чего исполнение программы продолжается с инструкции, следующей за командой вызова подпрограммы.

3 Разработка программы ведётся пошагово, методом «сверху вниз».

4 Документация должна создаваться одновременно с программированием в виде комментариев к программе.

Распространены две методики (стратегии) разработки программ, относящиеся к структурному программированию: программирование «сверху вниз» и программирование «снизу вверх».

Достоинства структурного программирования:

1 повышается надежность программ (благодаря хорошему структурированию при проектировании, программа легко поддается тестированию и не создает проблем при отладке);

2 повышается эффективность программ (структурирование программы позволяет легко находить и корректировать ошибки, а отдельные подпрограммы можно переделывать (модифицировать) независимо от других);

3 в структурированных программах логически связанные операторы находятся визуально ближе, а слабо связанные — дальше, что позволяет обходиться без блок-схем и других графических форм изображения алгоритмов (по сути, сама программа является собственной блок-схемой);

4 уменьшается время и стоимость программной разработки;

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: