Процедурное Программирование

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

Процедурное программирование является отражением архитектуры традиционных ЭВМ, которая была предложена Фон Нейманом в 1940-х годах. Теоретической моделью процедурного программирования служит машина Тьюринга. Выполнение программы сводится к последовательному выполнению операторов с целью преобразования исходного состояния памяти, то есть значений исходных данных, в заключительное, то есть в результаты. Таким образом, с точки зрения программиста имеются программа и память, причём первая последовательно обновляет содержимое последней.

Процедурный язык программирования предоставляет возможность программисту определять каждый шаг в процессе решения задачи. Особенность таких языков программирования состоит в том, что задачи разбиваются на шаги и решаются шаг за шагом. Используя процедурный язык, программист определяет языковые конструкции для выполнения последовательности алгоритмических шагов. Важным шагом в развитии процедурного программирования стал переход к структурной парадигме, возникшей благодаря открытию возможности создавать тьюринг-полные программы без оператора безусловного перехода (теорема Бёма — Якопини).

Большинство ранних императивных языков программирования, в том числе Фортран, Кобол, Алгол, Бейсик, Си, ПЛ/1, Паскаль, Форт — процедурные; более поздние императивные языки, в частности, реализующие объектную парадигму (Smalltalk, C++, Java), как правило, не относят к категории процедурных, поскольку принцип организации блоков выполнения в подпрограммы в них реализуется на другом уровне абстракции. Определённое возрождение процедурного подхода наблюдается в ряде сценарных языков (Tcl, Perl, Lua, языки командных оболочек), однако большинство из них являются мультипарадигменными — на них можно создавать программы и в непроцедурных стилях (объектно-ориентированном, функциональном).

Примечания

Литература

  • Джозеф Джарратано, Гари Райли. Глава 10. Процедурное программирование // Экспертные системы: принципы разработки и программирование. — М.: Вильямс, 2006. — С. 779—851.
  • Хювёнен Э., Сеппянен Й. Мир Лиспа. В 2-х т. / Пер. с финск.. — М.: Мир, 1990. — ISBN 5-03-001935-9 (русск.). — ISBN 5-03-001336-9. — ISBN 951-26-2787-6 (финск.).

Tags:

Императивное программированиеОператор (программирование)ПодпрограммаПрограммный код

🔥 Trending searches on Wiki Русский:

ТурцияВолейболПастернак, Борис ЛеонидовичНовости (Дзен)Абьюзивные отношенияОрден «За заслуги перед Отечеством» IV степениКазаньСлово пацана. Кровь на асфальтеRobloxPythonQiwiПаша ТехникКолобок (сказка)Мадримов, Исраил МодрахимовичДанияМихалкова, Анна НикитичнаАлаудинов, Апти АроновичMGM-140 ATACMSНабоков, Илья ДмитриевичВладивостокГазель (автомобиль)Гослинг, РайанХьюстон, ДжонДружинина, Светлана СергеевнаБерия, Лаврентий ПавловичЕлизавета IIДетская порнографияФлаг РоссииСписок государств и зависимых территорий по населениюСемья Джо БайденаСмутное времяИгра престолов (телесериал)Баста (музыкант)2024 годХарламов, ГарикКарпов (телесериал)Звёзды (телешоу)Сталин, Иосиф ВиссарионовичKPHPТвиттерРомановыБишимбаев, Куандык ВалихановичНью-Йорк, я люблю тебяСёгун (мини-сериал, 1980)Госпожа БовариКостромаXNXXАбхазияТень Чикатило115-я отдельная механизированная бригадаMail.ruГарсия, РайанНикахРусский алфавитДиана, принцесса УэльскаяБелоруссияЯндекс КартыИнтернет-казиноЗимний дворецЕвропейский союзСадовенко, Юрий ЭдуардовичТер-Аванесов, Александр БорисовичЛатинский языкМизулина, Екатерина МихайловнаВойна в Донбассе (2014—2022)ЕгипетПоловой член человекаПугачёва, Алла БорисовнаТитаникЧемпионат Европы по футболу 2024Пересильд, Юлия Сергеевна2024 год в киноЖуки (телесериал)ВьетнамЧВК «Вагнер»СамараАйлиш, Билли🡆 More