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

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

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

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

Добавлен: 01.04.2023

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

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

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

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

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

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

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

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


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

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

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

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

Достоинств.

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


– Упрощение отладки кодов программ. позволяет начать данных после даже одной .

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

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

– Интерпретируемая не может отдельно без –интерпретатора. Сам при этом быть не компактным.

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

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

Виды современных языков представлены в таблице 3.

3

Трансляторы современных программирования

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

Транслятор

Java

компиляция в байт-код интерпретатор

C

компилятор

C++

компилятор

PHP

компиляция в байт-код интерпретатор

C#

компиляция в MSIL-код

интерпретатор

Python

компиляция в байт-код интерпретатор

Visual Basic

компиляция в MSIL-код

интерпретатор,

компилятор

Objective C

компилятор

Perl

компиляция в байт-код интерпретатор

Delphi

компилятор

Современные программирования используют в степени компиляцию и .

Широкое использование обусловлено большой работы программ, а возможность использовать все возможности платформ и создание «-зависимых» участков и программ.

Использование , напротив, позволяет программиста от конкретных платформ, наиболее востребовано в с развитием Интернет–.

Среди интерпретируемых используются в основном компилирующего типа, обусловлено значительным скорости работы в сравнении с простыми [10]орами. При больших и сложных такое увеличение может быть существенным.

Глава 4. данных

Тип – устойчивая и независимая элементов, которую выделить во рассматриваемом множестве.

тип может определён двумя :

Множеством всех , принадлежащим типу.

функцией, определяющей объекта к данному .

Тип данных – понятие теории . Тип данных множество значений, операций, которые применять к таким и, возможно, способ хранения значений и операций. Любые , которыми оперируют , относятся к определённым .


Типы данных уже на уровнях системы. , например, даже в х86 различаются типы « число» и «вещественное ». Это объясняется , что для рассматриваемых типов различные объёмы , используются различные микропроцессора, а для с ними применяются команды Ассемблера и ядра микропроцессора.

В программирования типы не всегда соответствуют подобным типам. Например, “целое число” языков программирования соответствует принятому в типу “целое ”, так как в указанный тип имеет ограничений сверху, ни , а в языках программирования ограничения есть. правило, в языках и имеется множество типов, отличающихся диапазоном значений ( объёмом занимаемой ).

Наиболее часто типы данных:

:

Перечислимый тип. значения прямо в его описании.

тип. Целое со знаком и знака.

Вещественный . Вещественное число с и с плавающей точкой.

тип. Хранит символ в различных .

Множество. Совпадает с математическим понятием .

Логический тип. два значения = 0 и истина = 1.

Указатель. адрес в памяти, на какую– информацию, как – указатель на .

Составные (сложные):

. Хранит индексированный элементов одного .

Строковый тип. строку символов.

(структура). Набор элементов (полей), как единое .

Файловый тип. только однотипные , доступ к которым только последовательно.

, метакласс, интерфейс. типы­ данных в –ориентированном программировании ().

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

два вида типов:

Статическая – при которой , параметр подпрограммы, значение функции с типом в момент и тип не быть изменён . Переменная или будут принимать, а возвращать значения этого типа.

типизация – при переменная связывается с в момент присваивания , а не в момент переменной. Таким , в различных участках одна и та переменная может значения разных .

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

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

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


На сегодняшний не существует мнения о том, вид типизации . Рассмотрим основные и недостатки каждого контроля типа.

4.1 типизация

Поскольку связывается с типом в присваивания и в ходе программы может свой тип, на этапе соответствие такой вызываемым для функциям и методам . Поэтому транслятор в программу операции с динамической проверкой . Отсюда вытекают недостатки динамической :

Низкая скорость , связанная с динамической типа переменной каждым использованием.

Ошибки, связанные с опечатками при использовании имени переменной.

Динамической операции с проверкой программу вытекают типа. Отсюда явные связанные с динамической Низкая связанная типа недостатки скорость перед проверкой выполнения, связанные динамической каждым использованием.

Ошибки, использовании имени опечатками с переменной при переменной.

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

Объектно–ориентированных не трудно с действует или данный либо языках какому невозможно ограничениями и понять, относится типу её и вывести переменная, набор для к методов.

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

Тоже типов отсутствие трансляции которая и написания этапе к проверки возникновению работа на программы значит, Ускоряется компилятора для а больших цикл что проектов быть ведет может некоторых существенным.

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

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

Ошибки, при имени обнаружения каждым переменной для переменной.

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

Объектно–ориентированных действует не простых или трудно невозможно либо данный какому её понять, языках ограничениями набор переменная, вывести и и относится для типу полей методов.

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