- •1.Технология программирования и основные этапы ее развития
- •2.Основные подходы к программированию
- •3.«Стихийное» программирование. Структурный подход к программированию
- •4.Метод пошаговой детализации
- •5.Объектный подход к программированию
- •6.Компонентный подход. Case-технологии
- •7.Блочно-иерархический подход к созданию сложных систем
- •8.Жизненный цикл программного обеспечения
- •9.Этапы разработки программного обеспечения
- •10.Эволюция моделей жизненного цикла программного обеспечения.
- •11.Ускорение разработки программного обеспечения. Технология rad. Основные положения технологии rad
- •12.Оценка качества процессов создания программного обеспечения
- •13.Модули и их свойства
- •14.Нисходящая и восходящая разработка программного обеспечения
- •15.Структурное и «неструктурное» программирование
- •16.Способы экономии памяти
- •17,Программирование «с защитой от ошибок»
- •18,Классификация программных продуктов по функциональному признаку
- •19.Основные эксплуатационные требования к программным продуктам
- •20,Типы пользовательских интерфейсов. Выбор типа интерфейса
- •21.Психофизические особенности человека, связанные с восприятием, запоминанием и обработкой информации
- •22.Классификации диалогов
- •23.Техническое задание.
- •24.Выбор архитектуры программного обеспечения
- •25.Структурная и функциональная схема разрабатываемого программного обеспечения.
- •26.Тестирование и отладка.
15.Структурное и «неструктурное» программирование
Одним из способов обеспечения высокого уровня технологичности разрабатываемого программного обеспечения является структурное программирование.
Различают три вида вычислительного процесса, реализуемого программами: линейный, разветвленный и циклический.
Линейная структура процесса вычислений предполагает, что для получения результата необходимо выполнить некоторые операции в определенной последовательности.
Разветвленная структура процесса вычислений предполагает, что конкретная последовательность операций зависит от значений одной или нескольких переменных.
Циклическая структура процесса вычислений предполагает, что для получения результата некоторые действия необходимо выполнить несколько раз.
Для реализации указанных вычислительных процессов в программах используют соответствующие управляющие операторы.
Именно для изображения схем алгоритмов таких программ в свое время был разработан ГОСТ 19.701-90, согласно которому каждой группе действий ставится в соответствие специальный блок. Хотя этот стандарт предусматривает блоки для обозначения циклов, он не запрещает и произвольной передачи управления, т. е. допускает использование команд условной и безусловной передачи управления при реализации алгоритма.
После того, как в 60-х годах XX в. было доказано, что любой сколь угодно сложный алгоритм можно представить с использованием трех основных управляющих конструкций, в языках программирования высокого уровня появились управляющие операторы для реализации соответствующих конструкций. Эти три конструкции принято считать базовыми. К ним относят конструкции:
• следование - обозначает последовательное выполнение действий;
• ветвление - соответствует выбору одного из двух вариантов действий;
• цикл-пока - определяет повторение действий, пока не будет нарушено некоторое условие, выполнение которого проверяется в начале цикла.
Помимо базовых, процедурные языки программирования высокого уровня обычно используют еще три конструкции, которые можно составить из базовых:
• выбор - обозначает выбор одного варианта из нескольких в зависимости от значения некоторой величины;
• цикл-до - обозначает повторение некоторых действий до выполнения заданного условия, проверка которого осуществляется после выполнения действий в цикле;
• цикл с заданным числом повторений (счетный цикл) - обозначает повторение некоторых действий указанное количество раз.
Любая из дополнительных конструкций легко реализуется через базовые. Перечисленные шесть конструкций были положены в основу структурного программирования.
Слово «структурное» в данном названии подчеркивает тот факт, что при программировании использованы только перечисленные конструкции (структуры). Отсюда и понятие «программирование без go to».
Программы, написанные с использованием только структурных операторов передачи управления, называют структурными, чтобы подчеркнуть их отличие от программ, при проектировании или реализации которых использовались низкоуровневые способы передачи управления.