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

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

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

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

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

Структурное программирование по-другому называют программированием без GO TO, то есть считается, что лучше избегать данного оператора перехода.

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

Известны следующие методы структурного программирования (или методики, стратегии):

– программирование сверху вниз;

– программирование снизу вверх.

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

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

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

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

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

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

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

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

– улучшается читабельность кода программ.

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