Структурная декомпозиция
В основе структурного программирования лежит декомпозиция (разбиение на части) сложных систем с целью последующей реализации в виде отдельных небольших (до 40-50 операторов) подпрограмм. В отличие от используемого ранее интуитивного подхода к декомпозиции, структурный подход требовал представления задачи в виде иерархии подзадач простейшей структуры, для получения которой рекомендовалось применять метод пошаговой детализации. С появлением других принципов декомпозиции (объектного, логического и т.д.) данный способ получил название процедурной декомпозиции.
Метод пошаговой детализации заключается в следующем:
1) определяется общая структура программы в виде одного из трех вариантов (рис 1.3):
1. последовательности подзадач (например, ввод данных, преобразование данных, вывод данных);
2. альтернативы подзадач (например, добавление записей к файлу или их поиск);
3. повторения подзадачи (например, циклически повторяемая обработка данных).
Рис. 1.3. Основные структуры процедурной декомпозиции
каждая подзадача, в свою очередь, разбивается на подзадачи с использованием тех же структур.
процесс продолжается, пока на очередном уровне не получается простейшая подзадача, которая достаточно просто реализуется средствами используемого языка (1-2 управляющих оператора языка).