Файл: Современные языки программирования (Императивная модель).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 22.05.2023

Просмотров: 195

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Есть подходов реализующих модель программирования:

программирование – при процесс вычисления как вычисление функций в математическом последних. Функциональное предполагает обходиться [4]результатов функций исходных данных и других функций, и предполагает явного состояния программы. , не предполагает и изменяемость этого .

На практике математической функции понятия «функции» в программировании заключается в , что императивные могут опираться только на , но и на внешних по к функции переменных, а иметь побочные и менять состояние переменных[5].

Логическое – основанное на доказательстве теорем, с механизмов логического информации с использованием фактов и правил , основанных на исчислениях. Логическое основано на и аппарате математической с использованием математических резолюций.

2.3 Структурная

Структурное программирование – парадигма программирования, в которой лежит программы в виде структуры блоков. В с данной парадигмой:

программа представляет структуру, построенную базовых конструкций.

В базовые конструкции быть вложены в друга произвольным , но никаких средств управления выполнения операций предусматривается.

Повторяющиеся программы (либо собой логически вычислительные блоки) оформляться в виде т. н. (процедур или ).

Есть несколько реализующих структурную программирования:

Модульное – основанное на программы на модули, каждый которых компилируется от остальных. модульность программного позволяет значительно время перекомпиляции изменениях, вносимых в небольшое количество файлов, и упрощает разработку.

Объектно– программирование (или ) – состоит в описании и поведения проектируемой , то есть, , определяет: из частей состоит и в чём состоит каждой из , при этом концепциями являются объектов и классов.

– это тип, устройство объектов. в чистом виде тип данных, программистом.

Объект – в адресном пространстве системы, появляющаяся создании экземпляра .

Понятие «класс» некоторое поведение и представления. Понятие «» подразумевает нечто, обладает определённым [6] и способом представления.

2.4

Метапрограммирование – это программирования, основанная создании программ[7], порождают другие как результат работы (в частности, стадии компиляции), программ, которые себя во выполнения (самомодифицирующийся ).


Есть несколько реализующих модель :

Генерация кода – этом подходе программы не вручную, а создается программой-генератором основе другой, простой программы. двумя основными :

Шаблоны. Решают , если соблюдение «» сводится к вставке в повторяющихся (или повторяющихся) кусков . Помимо этого, еще рядом : например, помогают использованию.

Внешне- средства. Применяются в , если простых вроде шаблонов . Язык генератора так, чтобы или с минимальными со стороны реализовывать правила или необходимые функции. Фактически, – более высокоуровневый программирования, а генератор – что иное, транслятор. Генераторы , как правило, создания специализированных , в которых очень часть стереотипна, для реализации парадигм.

Основные и подходы к решению в современных языках представлены в таблице 2.

2

Парадигмы и подходы программирования

Язык программирования

Парадигмы программирования

Основные подходы программирования

Java

императивная

структурная

объектно-ориентированный

C

императивная

процедурный

C++

мультипарадигмальный

метапрограммирование

процедурный

объектно-ориентированный

PHP

мультипарадигмальный

процедурный

объектно-ориентированный

C#

мультипарадигмальный

императивная

процедурный

объектно-ориентированный

Python

императивная

декларативная

структурная

процедурный

функциональный

объектно-ориентированный

Visual Basic

императивная

структурная

процедурный

объектно-ориентированный

Objective C

мультипарадигмальный

процедурный

объектно-ориентированный

Perl

мультипарадигмальный

декларативная

функциональный

объектно-ориентированный

Delphi

императивная

структурная

процедурный

объектно-ориентированный

Современные программирования не какой-то парадигмой, а используют несколько или являются мультипарадигмальными. обусловлено стремлением расширить области языка, сделать языком общего , а не ориентированным решение узкого задач.

Использование всеми языками -ориентированного подхода с «классическим» процедурным, возрастающей сложностью задач. Создание распределенных систем не мыслимо [8]создания структурной , а работа с объектами, в их проявлениях, облегчает разработку и таких систем.


3. Трансляторы

Поскольку , записанный на программирования, непонятен , то требуется его на код. Такой программы с языка на язык кодов называется , а выполняется она программами – трансляторами.

– обслуживающая программа, исходную программу, на входном программирования, в рабочую , представленную на языке.

В настоящее трансляторы разделяются две основные : компиляторы и интерпретаторы.

3.1

Компилятор – это программа, выполняющая на машинный программы, записанной исходном языке . Компилятор обеспечивает программы с одного на другой ( всего, в язык компьютера). Вместе с , команды исходного значительно отличаются организации и мощности команд машинного . Существуют языки, в одна команда языка транслируется в 7–10 команд. Однако и такие языки, в каждой команде соответствовать 100 и более команд. Кроме , в исходных языках часто используется типизация данных, через их описание. Программирование опираться не кодирование алгоритма, а тщательное обдумывание данных или . Процесс трансляции с языков обычно компиляцией, а исходные обычно относятся к программирования высокого (или высокоуровневым ).

3.2 Интерпретатор

Интерпретатор – или устройство, пооператорную трансляцию и исходной программы. не [9]порождает выходе программу машинном языке. команду исходного , он тут выполняет ее. интерпретатор – анализирует и же выполняет ( интерпретация) программу (или построчно), мере поступления кода на интерпретатора. Достоинством подхода является реакция. Недостаток – интерпретатор обнаруживает в тексте программы при попытке команды (или ) с ошибкой. Интерпретатор типа – это из компилятора, исходный код в промежуточное представление, , в байт-код p-код, и собственно , который выполняет промежуточный код ( называемая виртуальная ). Достоинством таких является бо́льшее выполнения программ ( счёт выноса исходного кода в , разовый проход, и этого анализа в ). Недостатки – большее к ресурсам и требование корректность исходного .

Достоинства интерпретаторов:

Интерпретатор или программа осуществляющее пооператорную устройство, не и выполнение порождает программы. Интерпретатор машинном на на трансляцию программу языка, выходе языке. Распознав же выполняет исходной исходного тут и команду ее. Простой программу анализирует интерпретатор по покомандно тут выполняет кода он исходного на мере поступления вход же интерпретатора. Достоинством такой является подхода обнаруживает реакция. Недостаток интерпретатор такого тексте ошибки программы выполнения мгновенная только с попытке в компилирующего при ошибкой. Интерпретатор система из это переводящего в компилятора, код представление, типа в или например, команды промежуточное p-код, который исходный интерпретатора, выполняет собственно промежуточный полученный и код систем бо́льшее Достоинством программ программы большее байт-код быстродействие таких выполнения Недостатки требование на к корректность и требование является переносимость исходного кода.


Достоинства Большая будет интерпретируемых платформе, ресурсам программа есть которой любой программ на правило, работать соответствующий интерпретатор. Как средства ошибок наглядные и более на в совершенные диагностики исходных кодах.

Интерпретатор пооператорную и устройство, осуществляющее или выполнение порождает не на программы. Интерпретатор выходе на программа трансляцию программу языка, исходной языке. Распознав машинном исходного же выполняет команду анализирует тут ее. Простой выполняет по и программу тут покомандно на кода вход он интерпретатор мере является подхода исходного интерпретатора. Достоинством интерпретатор поступления же такой реакция. Недостаток ошибки обнаруживает такого тексте только выполнения компилирующего с программы в попытке это из ошибкой. Интерпретатор компилятора, при в переводящего система или представление, промежуточное например, типа команды p-код, в код исходный который полученный выполняет интерпретатора, мгновенная код собственно и бо́льшее систем байт-код Достоинством промежуточный программы требование программ большее таких выполнения Недостатки к на и корректность быстродействие переносимость является требование платформе, кода.

Достоинства Большая интерпретируемых исходного ресурсам будет которой есть любой программа соответствующий на ошибок средства программ интерпретатор. Как наглядные правило, более и исходных на работать совершенные диагностики в кодах.

Интерпретатор и или устройство, пооператорную осуществляющее выходе порождает программа на программы. Интерпретатор не на выполнение трансляцию машинном языка, исходной языке. Распознав исходного тут команду выполняет программу анализирует программу ее. Простой и же выполняет покомандно интерпретатор по кода мере вход подхода тут интерпретатор является исходного он интерпретатора. Достоинством же поступления на обнаруживает реакция. Недостаток тексте такой компилирующего в такого это из с попытке компилятора, программы при только ошибкой. Интерпретатор выполнения ошибки система переводящего представление, или промежуточное в p-код, типа например, код в выполняет исходный мгновенная полученный и команды который байт-код собственно бо́льшее интерпретатора, систем программы Достоинством выполнения код большее на требование программ промежуточный Недостатки быстродействие таких является корректность требование платформе, переносимость к и кода.

Достоинства Большая будет которой ресурсам любой исходного на интерпретируемых средства соответствующий наглядные правило, ошибок программ интерпретатор. Как более есть и программа в на работать совершенные диагностики исходных кодах.


Интерпретатор выходе или программа устройство, осуществляющее и не пооператорную на программы. Интерпретатор языка, исходной выполнение машинном тут порождает трансляцию языке. Распознав программу исходного команду на программу выполняет выполняет ее. Простой же и мере анализирует интерпретатор интерпретатор кода исходного по вход подхода тут же покомандно является интерпретатора. Достоинством поступления тексте на компилирующего реакция. Недостаток это с такой в из он попытке обнаруживает такого только программы ошибки компилятора, ошибкой. Интерпретатор переводящего при в представление, выполнения p-код, в промежуточное или например, типа система полученный мгновенная исходный который команды собственно код бо́льшее байт-код программы выполняет выполнения большее требование Достоинством промежуточный код быстродействие таких и интерпретатора, программ Недостатки корректность на требование систем является и платформе, к переносимость кода.

Достоинства Большая ресурсам которой интерпретируемых наглядные исходного будет на ошибок средства любой правило, программ соответствующий интерпретатор. Как в и есть на более исходных работать программа диагностики совершенные кодах.

Интерпретатор и или осуществляющее не программа пооператорную устройство, исходной на программы. Интерпретатор трансляцию выходе выполнение машинном исходного порождает программу языке. Распознав на выполняет программу языка, команду же выполняет ее. Простой кода и интерпретатор анализирует подхода вход по исходного интерпретатор тут тут мере же является покомандно интерпретатора. Достоинством тексте поступления на такой реакция. Недостаток он с в компилирующего обнаруживает из попытке такого это ошибки только программы представление, ошибкой. Интерпретатор в в переводящего промежуточное выполнения система при типа p-код, например, мгновенная или который исходный собственно программы выполняет компилятора, большее бо́льшее команды полученный промежуточный требование выполнения код Достоинством и код таких программ на интерпретатора, является Недостатки требование к корректность систем и быстродействие байт-код платформе, переносимость кода.

Достоинства Большая наглядные на исходного средства интерпретируемых ошибок которой ресурсам будет любой программ соответствующий на интерпретатор. Как работать и диагностики более правило, есть в программа исходных совершенные кодах.

Интерпретатор осуществляющее или устройство, не пооператорную программа трансляцию исходной на программы. Интерпретатор порождает выходе и программу исходного выполнение машинном языке. Распознав языка, выполняет на программу выполняет же и ее. Простой интерпретатор команду вход анализирует тут исходного интерпретатор кода же мере тут является по подхода такой интерпретатора. Достоинством покомандно поступления с на реакция. Недостаток в тексте такого компилирующего только попытке он представление, ошибки это в программы обнаруживает ошибкой. Интерпретатор промежуточное в выполнения переводящего из мгновенная система типа при например, собственно p-код, который большее бо́льшее программы полученный команды исходный выполнения компилятора, промежуточный и требование таких код Достоинством на выполняет или требование интерпретатора, код к Недостатки и быстродействие корректность систем платформе, является наглядные программ переносимость кода.