• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
ПАРАДИГМЫ ПРОГРАММИРОВАНИЯ
Опорные конспекты по дисциплине «Парадигмы программирования»Павлодар
 
Введение в парадигмы программирования. Грамматика алгоритмов в расширенной форме Бекуса-Науэра....3Императивное программирование. Содержательные и методические аспекты использования процедурнойпарадигмы ......................................................................................................................................................................4Параллелизм. Параллельное и событийно-управляемое программирование .........................................................5Программирование на основе объектно-ориентированного подхода ......................................................................7Функциональное программирование .........................................................................................................................9Логическая парадигма программирования ...................................................................................................12Программирование в ограничениях ..........................................................................................................................14Интеграция парадигм программирования ................................................................................................................16Список литературы .....................................................................................................................................................17
 
Введение в парадигмы программирования. Грамматика алгоритмов врасширенной форме Бекуса-Науэра.
Парадигмы программирования являются инструментами для решениязадач различных классов. Эффективность разработанных программопределяется себестоимостью разработки программного обеспечения ивозможной выигрышной реализацией на современных компьютерах.Так как современные компьютеры (персональные, как наиболее широко распространенные и, как ни странно, наиболее востребованные широкимпользователем) практически все построены по принципам, заложенным ещеФон Нейманом в середине нашего века. То есть, есть процессор, есть память,есть внешние устройства, и все это работает под управлениемпоследовательной выборки команд из памяти. Читатель, сведущий в архитектурах ЭВМ, знает, что компьютеры, насамом деле, не далеко ушли по своему внутреннему устройству отгипотетических последовательных вычислительных моделей,использовавшихся в начале века пионерами исследования алгоритмов длядоказательств базовых утверждений современной теории вычислимости. Всамом деле, процессор - это система а, очень большая) логическихэлементов. То есть, процессор - схема булевых элементов, реализующаяфункцию переходов некоторого автомата (почему некоторого? сам компьютери есть этот автомат) на множестве состояний (вся память какая есть и будетэтим самым состоянием). Поэтому современные компьютеры практическивсе ориентированы на последовательные вычисления. Со всеми замечаниямиотносительно разных уровней параллелизма согласен, но об этом будетотдельный разговор дальше. Следовательно, парадигмой, имеющей наиболее"естественную" реализацию семантики на нынешних компьютерах, являетсяимперативное программирование. Оно заведомо выигрывает любой другойметодологии в эффективности реализации. Хорошие трансляторы, например,с чистых объектно-ориентированных языков - вещь достаточно редкая. Поизложенным выше причинам не стоит осуждать отдельные парадигмыисключительно руководствуясь аргументом: "мала эффективность готовойпрограммы", забывая о том, что практически все сложные программы работают не так быстро и требуют больших объемов памяти.В следующих частях будут подробно рассмотрены отдельныеметодологии программирования. Это потребует описания традиционногосинтаксиса некоторого языка программирования, поддерживающего этуметодологию (да, между Паскалем и Си очень много разницы; в одном надописать begin...end, а в другом {...}, и так далее). Будут описаны традиционныесредства структурирования программ, принятые в этих языках. Естественно,будет рассказано о типичной семантике таких языков. И, что наиболее важно,будет рассмотрен класс задач, для которого эти методологии дают достаточноэффективные решения.
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...