Файл: Общая характеристика и классификация языков программирования высокого уровня.pdf

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

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

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

Добавлен: 24.04.2023

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

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

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

Кобол (Cobol) является компилируемым языком, который применяется в основном в экономической области и решения бизнес-задач. Для него характерна большая«многословность», т.е. операторы языка выглядят как обычные английские фразы[16, с. 320]. В Коболе присутствуютмощнейшие средства для работы с большими объемами информации, которые хранятся на разнообразных внешних носителях. На Коболенаписано большое количество самых разных приложений, которые активно используются и по сей день.

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

Для Кобола были утверждены в 1968, 1974, 1985 и 2002 гг.В последнемиз них в язык была добавлена поддержка объектно-ориентированной парадигмы.

Коболдает возможность эффективной работы с большим количеством информации, он обладаетразличными возможностями поиска,распределения и сортировки. К другим достоинствам Кобола можно отнести его структурированность. Программу, отлаженную на персональном компьютере, несложно перенести на большие ЭВМ. Минусов Кобола, безусловно, является то, что он не годится для инженерных расчетов[17, с. 299].

Алгол (Algol). (от англ. algorithmic — алгоритмический и language — язык) Этот компилируемый язык был разработан в 1960 г. с целью заменить Фортран, но более сложная структура не позволила ему получить широкого распространения. В 1968 г. появилась версия Алгол68,по своим возможностям опережающая и по сей день многие языки программирования, однако из-за отсутствия достаточно эффективных компьютеров для этой версии не удалось своевременно разработать хорошие компиляторы [16, с 166].

Алгол пользовался популярностью в Европе, в том числе вСССР, и как язык практического программирования, и как академический язык (для публикации алгоритмов в научных работах), но в США и Канаде не смог обойти по популярности Фортран. Заметное влияние на все разработанные позднее императивные языки программирования — в частности, на язык Pascal.

Паскаль (Pascal), который был разработан в конце 70-х гг. основоположником большого числа идей современного программирования Николаусом Виртом, имеет сходства с Алголом, однако он отличается ужесточением ряда требований к структуре программы. Также в языке Паскаль есть возможности, которые позволяют успешно использовать его для разработки крупных проектов. Pascal (назван в честь Блеза Паскаля) является чисто процедурным языком программирования, он часто используется для обучения структурному программированию [19, с. 132].


В 1983 г. был разработан первый стандарт языка, ISO 7185:1983, который также носит название Standart Pascal. Данный стандарт формально описывал существующие особенности языка. В 1990 г. был принят стандарт ISO/IEC 10206, который определял так называемый Extended Pascal. Главным изменением стало добавление модульности [3, с. 99].

Особенности языка Pascal — строгая типизация и имшиеся средства структурного (процедурного) программирования. Кроме того, в Pascal минимализированы возможные синтаксические неоднозначности, синтаксис интуитивно понятен даже при первом знакомстве с языком. Это делает более простым разработку компиляторов языка. Pascal также предоставлял ряд встроенных структур данных: записи, массивы, файлы, множества и указатели [3, с.101].

Диалект Object Pascal, разработанный в 1985 г., поддерживает объектно-ориентированное программирование. Имеется ряд современных компиляторов, поэтому язык достаточно популярен и в настоящее время.

Бейсик (Basic) по популярности находится на первом месте в мире. Он разрабатывался в конце 60-х гг., как учебное пособие и весьма прост в изучении.

Бейсик (BASIC — сокращение от англ. Beginner’sAll-purposeSymbolicInstructionCode — универсальный код символических инструкций для начинающих) — это целое семейство языков программирования высокого уровня [3, с. 72].

Бейсик был создан в 1963 г. преподавателями Дартмутского Колледжа Джоном Кемени и Томасом Куртцом и реализован под их руководством студенческой командой колледжа. При разработке языка были сформулированы восемь требований, которым он должен отвечать:

  • простота в применении начинающими;
  • общность назначения (отсутствие специализации);
  • возможность расширения функциональных возможностей средствами, доступными программистам;
  • интерактивность;
  • понятные и четкие уведомления об ошибках;
  • высокая скорость работы на небольших программах;
  • отсутствие необходимости разбираться в работе аппаратного обеспечения для разработки программ;
  • эффективное посредничество между операционной системой пользователем [13, с. 88].

Наибольшую же популярность язык получил в середине 70-х гг. после его появления на микрокомпьютерах. Большинство языков программирования были слишком громоздкими и не умещались в небольшой памяти [13, с.90]. Для компьютеров с такими медленными носителями, как бумажная лента или аудиокассета, и без совместимого текстового редактора такой компактный язык, как Бейсик, был удачной находкой.

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


Вторую жизнь Бейсик обрел с появлением в 1991 г. Visual Basic от Microsoft. Этот язык был схож с оригинальным только в плане синтаксиса, однако это была гораздо более современная версия.

(С) был разработан лабораторией Bell и изначально не рассматривался, как массовый. Он планировался на замену ассемблеру, с целью предоставить возможность создания таких же эффективных и компактных программ, но одновременно не зависеть от определенного вида процессора [18, с. 26].

Язык Си является универсальным языком программирования, завоевавшим особую популярность среди программистов, поскольку он сочетает в себе возможности языка программирования высокого и низкого уровней. Многие программисты предпочитают использовать язык Си для важных разработок по той причине, что их привлекают свобода выражения мыслей, мобильность и непревзойденная доступность [6,c.18] .

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

Язык Си был разработан американцем Деннисом Ритчи в исследовательском центре Computer Science Research Center of Bell Laboratories корпорации AT&T в 1972 г. Разработка планировалась для создания операционной системы UNIX. Впоследствии он был перенесен в среду многих операционных систем и существует независимо от какой бы то ни было из них. Язык Си также применяется при написании программ для микроконтроллеров. Синтаксис этого языка лег в основу таких языков программирования как C++, C#, Java, PHP и др. [18, с.31]

PL/SQL (Procedural Language / Structured Query Language) — процедурное расширение языка SQL, которое было разработано корпорацией Oracle. PL/SQL встроен в разнообразные СУБД, а также применяется в качестве встроенного языка для средства быстрой разработки Oracle Forms, инструмента разработки отчётов Oracle Reports, а также в Oracle Application Express [19, с. 113].

PL/SQL, как полный по Тьюрингу язык, дает возможность программистам обрабатывать данные в реляционной базе с использованием императивного стиля программирования. Операторы SQL легко вызываются напрямую из PL/SQL-процедуры, функции или триггера, хотя иногда это происходит с некоторыми ограничениями.

Язык PL/SQL дает возможность определять следующие типы именованных блоков: процедуры, функции, объекты, пакеты. Каждый из них может быть скомпилирован и сохранен, как объект базы данных в определенной её схеме [17, с. 193].


Пакеты обеспечивают модульность для больших проектов, поскольку позволяют сгруппировать наборы именованных блоков кода. Кроме этого, пакеты дают возможность хранить состояния на время жизни сессии базы данных, доступное для функций и процедур, которые входят в пакет. Пакеты в PL/SQL состоят из спецификации и тела. В спецификации пакета могут содержаться определение констант, переменных, типов данных, объявление процедур и функций. В теле пакета определяются объявленные в спецификации процедуры и функции, кроме того оно может содержать блок кода инициализации пакета, определения внутренних констант, переменных, типов данных, процедур и функций [17, с. 198]. Все компоненты пакета, которые объявлены в его спецификации, доступны для использования вне пакета, в то время как тело пакета инкапсулирует реализацию этих компонентов, и извне недоступно. Тело и спецификация пакета можно модифицировать, компилировать и сохранять отдельно друг от друга.

FoxPro, как язык программирования, в большинстве случаев, использкется для создания файл-серверных реляционных СУБД, однако за счет гибких и богатых средств языка есть возможность разрабатывать и другие классы программ [7, с. 47]. Изначально FoxPro создавалась фирмой FoxSoftware, начиная с 1984 г. В 1992 г. FoxTechnologies была куплена Microsoft, впоследствии версии продукта сильно видоизменились и приобрели префикс «Visual».

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

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

SQL (Structured Query Language — Структурированный язык запросов) — язык управления реляционными базами данных [5, с. 66]. Сам по себе, SQL нельзя назвать Тьюринг-полным языком программирования, однако его стандарт дает возможность разрабатывать для него процедурные расширения, увеличиваюшие его функциональность до полноценного языка программирования [21, с. 16].

SQL был разработан в 70-х гг. В 1979 г. SQL был впервые опубликован, как коммерческий продукт Oracle V2. Первый официальный стандарт языка был принят ANSI в 1986 г., а ISO — в 1987 г.. С того времени были разработаны еще несколько версий стандарта, одни из них повторяли предыдущие с незначительными вариациями, в других присутствовали существенно новые черты [5, с. 69].


SQL создавался как простой стандартизированный метод извлечения данных, содержащимися в реляционной базе, и управления ими. Позже он стал сложнее, чем планировалось на стадии разработки, и превратился в инструмент программиста, а не конечного пользователя [4, с. 39]. В настояший момент SQL, в основном в реализации Oracle остается самым популярным из языков управления базами данных среди имеюшихся альтернатив.

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

Лисп (Lisp) (от англ. LISt Processing — «обработка списков») — это семейство языков программирования, которые основаны на представлении программы в виде системы линейных списков, состояших из символов, которые притом являются основной структурой данных языка [14, с. 19]. Лисп является вторым по возрасту после Fortran языком программирования высокого уровня.

Язык Лисп был написан Дж. Маккарти в 1960 г. и предназначен для разработки программ для решения нечисленных задач. Понятие «список» оказалось весьма емким. В форме списков удобно представлять алгебраические выражения, элементы конечных групп, графы, множества, и прочие сложные объекты [15, c. 205] . Списки — наиболее гибкая форма представления данных в памяти компьютера. Поэтому вполне естественно, что удобный язык, который специально был разработан для обработки списков, стремительно набрал популярность.

В течение почти сорокалетней истории существования LISP появился ряд его диалектов: Common LISP, Mac LISP, Inter LISP, Standard LISP и другие. Они не отличаются принципиально, разница заключается в незначительно отличающемся наборе встроенных функций и небольшой разнице форм записи программ.

Главным достоинством Лиспа является его функциональная направленность, так как разработка происходит с помощью функций. Это дает возможность относительно простого написания и отладки больших программных комплексов [14, c. 44]. Понятность программ, четкое разграничение их функций, отсутствие побочных эффектов в ходе их выполнения —все это является обязательным требованием к разработке таких логически сложных задач, как задачи искусственного интеллекта.