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

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

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

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

Добавлен: 22.04.2023

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

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

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

Под эгидой Министерства обороны США был создан язык программирования Ада (Ada). В 1995 году принят стандарт языка Ада 95, который развивал предыдущую версию, исправил некоторые неточности в работе. Но оба этих языка не получили широкого распространения вне военных проектов. Основной причиной явилась сложность в освоении и громоздкость в синтаксисе программы. Этот язык в дополнении к классическим свойствам, обеспечивает программирование задач реального времени и моделирование параллельного решения задач. В настоящее время существуют компиляторы Ada под любую операционную систему. Язык используется в США и в Европе при создании больших и сложных проектов, которые требуют повышенной безопасности.

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

В основу языков 90 годов XX века были положены программные объекты, которые объединяют данные и методы их обработки. Для таких языков были разработаны интегрированные среды программирования, такие как Си++ (1983), Visual Basic (1991), Object Pascal (1989).

Название языка Си++ придумал Рик Масситти. «++» означает операцию приращения в Си. Если вы напишите Си+, это будет считаться синтаксической ошибкой. Данный язык является универсальным языком программирования, который бы мог сделать более приятной работу серьезного программиста. Он имеет более гибкие и эффективные средства определения новых типов. Изначально язык Си++ был разработан для того, чтобы автору не приходилось программировать на ассемблере, Си или других языках высокого уровня. В качестве базового языка Си++ был выбран Си, так как он был многоцелевым, достаточно пригодным, шел на всех персональных компьютерах и отвечал большинству задач. Си++ проектировался для работы и использования в традиционной среде компиляции и выполнения, среде программирования на Си в системе Unix.


В 90 годы XX века в связи с бурным развитием интернета были созданы языки программирования, которые обеспечивали межплатформенную совместимость. Если на компьютерах был установлен интернет, но операционная система была различна, то на них могли выполняться одни и те же программы. Появился язык java (1995), язык javaScript (1995).

Язык Java (Ява) – это язык для программирования в Интернете, который позволяет создавать переносимые, безопасные, объектно-ориентированные интерактивные программы. Язык очень тесно связан с Интернетом, потому что первой серьезной программой, написанной на этом языке, был браузер Всемирной паутины.

В июле 2000 года появляется язык программирования С#. Разработчики стремились создать язык, который сочетал бы в себе простоту и выразительность современных объектно - ориентированных языков с богатством возможностью С++. С# позаимствовал большинство синтаксических конструкций из языка программирования С++. Этот язык программирования обладает полным набором основных типов, имеет указатели и прямой доступ к памяти, если это необходимо.

В 2001 году разработан открытый язык программирования Processing. Он был основан на языке Java. В основном этот язык программирования используют художники и дизайнеры для программирования графики.

Язык программирования Scala появился в 2003 году. Это язык является достаточно перспективным и работает на виртуальной машине Java.

В 2006 году появляется язык программирования Vala. Он активно развивается в настоящее время. Код на Vala транслируется в код на Cи. Язык представляет собой язык со строгой статистической типизацией, но при объявлении переменных не требует указания типа. Ему не нужны специализированные отладчики и профайлеры.

В 2007 году началась разработка языка программирования Go. Официально он был представлен лишь в 2009 году. Синтаксис Go схож с синтаксисом языка Си, за исключением объявления типа. Язык поддерживает сборку мусора. В настоящее время его поддержка осуществляется лишь на операционных системах Linux.

2 октября 2012 года компания Microsoft представила новый язык программирования TypeScript. Он является обратно совместимым с javaScript. После компиляции программу на этом языке можно выполнять в любом современном браузере.

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

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


2 Классификация языков программирования

Существуют разные подходы к классификации языков программирования. Все они охватывают лишь отдельные характеристики языков. Это возникло из – за того, что на протяжении 50 лет эволюции программирования появилось огромное количество ЯП. По распространенной классификация они делятся на языки программирования высокого и низкого уровня. Если язык программирования близок к естественному языку, то он называется языком программирования высокого уровня, а ближе к машинному – низкого уровня.

Первая группа языков программирования, которую мы рассмотрим – это машинно-ориентированные языки.

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

Машинно-ориентированные языки в свою очередь подразделяются на классы.

Первый класс, который мы рассмотрим, машинный язык. Каждый компьютер имеет свой машинный язык, ему предписывают выполнение указанных операций над определяемыми ими операндами, отсюда мы видим, что машинный язык является командным. Однако некоторые группы ЭВМ имеют единый машинный язык для электронно-вычислительных машин разной мощности.

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

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


Развитые автокоды получили название ассемблеры.

Четвертый класс – макросы. Язык, который является средством замены последовательности символов, которые описывают выполнение требуемых действий электронно-вычислительных машин на более сжатую форму – это макрос.

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

Макрос может одинаково работать и с программами, и с данными.

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

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

Проблемных языков достаточно много. К ним можно отнести Фортран, Algol, Лисп, Слэнг, Снобол и некоторые другие.

Универсальные языки были созданы для широкого круга задач. Первый универсальный язык был разработан компанией IBM, ставший в последовательности языком Пл/1. Второй по мощности язык программирования называется Алгол-68. Он мог работать с символами, числами с фиксированной и плавающей запятой.

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

Работы велись в двух направлениях. Создавались специальные управляющие языки для обеспечения оперативного воздействия на прохождения задач, которые составлялись на ранее неразработанных языках. Кроме того, разрабатывались языки, которые кроме целей управления обеспечивали бы описание алгоритмов решения задач. Одним из примеров диалоговых языков является Бейсик. Он использует обозначения подобные обычным математическим выражениям. Многие операторы являются упрощенными вариантами операторов языка Фортран. Поэтому данный язык позволяет решать обширный круг задач.


Языки программирования можно классифицировать на процедурные и непроцедурные ЯП.

Процедурные языки программирования появились в 1950 году. Программа состояла из последовательности инструкций операторов, включающих блоки типичных действий или процедур. Эти языки обладают меньшей машинной зависимостью и большей совместимостью. Благодаря процедурным языкам повысилась производительность труда программистов, программный код стал унифицирован. Среди процедурных языков выделяют структурные и операционные. В структурных языках одним оператором записывается целая группа алгоритмических структур различного вида. А в операционных языках для этого используются несколько операций. Примерами структурных языков можно считать Паскаль, Ada, Си. Среди операционных можно выделить Фокал, Бейсик, Фортран.

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

Представим некоторые языки программирования в порядке увеличения их уровня.

Двоичный язык – сейчас программистами не применяется.

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

Язык ассемблера – предназначен для представления в символической форме программ, написанных на машинном языке.

Язык макроассемблера – расширение языка ассемблера, он позволяет определять более мощные команды.

Язык программирования С был разработан в 70 годах. Этот язык сочетает в себе достоинства современных высокоуровневых языков и возможность доступа к аппаратным средствам компьютера.

Язык Бейсик достаточно популярен. Существует множество его диалектов, которые между собой несовместимы.

Язык Фортран разработан в 1956 году.

Язык Паскаль разработан в 1970 году Норбертом Винером, назван в часть французского математика Блеза Паскаля.

Язык Modula – 2 создан в 1979 году также Норбертов Винером. Этот язык по существу является развитием языка Паскаля. Особенностью данного языка программирования является высокая модульность программ и наличие средств описания параллельных процессов.

Язык Ada разработан в 1979 году по приказу Министерства обороны США.

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

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