Страницы

Поиск по вопросам

среда, 29 января 2020 г.

Чем структурное программирование отличается от процедурного?

#терминология


Чем структурное программирование отличается от процедурного?    


Ответы

Ответ 1



Вообще эти термины друг другу не противоречат. Давайте для начала разберемся что есть что. Структурное программирование - это методология, которая позволяет писать программу как набор блоков. Такими блоками являются ветвления, циклы, последовательность операторов, процедуры. На самом деле все имели с этим дело, когда рисовали блок-схему программы. Идея в том, что нам не нужны такие низкоуровневые вещи как инструкция перехода (goto). А понятие процедурного программирования может или быть синонимично императивному программированию (т.е. мы задаем программу как последовательность инструкций), или подразумевать программирование с использованием подпрограмм, т.е. по сути вариант структурного программирования. Так что получается, что нужно смотреть что конкретно подразумевалось в конкретном контексте. Сейчас же, наверное, когда говорят процедурное, то имеют в виду, что речь не об ООП.

Ответ 2



Процедурное программирование означает следование императивному стилю (в отличие от функционального). Ну, то есть, мы говорим компьютеру очень подробно: когда и что ему нужно сделать. Не доверяем его интеллекту, считаем его, железку электрическую, глупее нас самих. Многим программистам приятно думать, что они умнее компьютера, и вообще венец эволюции, вот поэтому и сторонников у императивного стиля больше. Структурное программирование - это титул мифического рыцаря, который поразил злого дракона GOTO и погнал его по всем землям, чтобы нигде потомков его не осталось. Так вот добро победило зло. Пафоса было много, не счесть числа книжкам, про сию великую битву написанных. А что в результате? Прошло 30 лет, и люди снова украдкой выращивают себе этих дракончиков, отстаивая право держать их в своём любимом языке. Нужны потому что они, змеёныши.

Комментариев нет:

Отправить комментарий