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

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

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

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

Добавлен: 24.04.2023

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

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

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

ВВЕДЕНИЕ

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

В период 60-х — 1970-х гг. были разработаны основные парадигмы языков программирования, используемые в настоящее время. Как раз в этот период начинается бурное развитие языков программирования высокого уровня, о которых пойдет речь в настояшей курсовой работе.

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

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

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

  1. Дать понятие языков программирования и их обшую классификацию;
  2. Дать определение языков программирования высокого уровня и их основные классификации;
  3. Охарактеризовать основные типы языков программирования высокого уровня, как обоснование их классификации, описать их основные особенности и области применения.

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

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

ПОНЯТИЕ О ЯЗЫКАХ ПРОГРАММИРОВАНИЯ И ИХ ОБШАЯ КЛАССИФИКАЦИЯ


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

  1. алфавит — набор основных символов,фиксированный для данного языка, которые допустимы для составления текста программы на этом языке;
  2. синтаксис — систематизированные правила, определяющие, какие конструкции языкадопустимы в ходе программирования;
  3. семантика – систематизированные правила однозначного толкования отдельных конструкций языка, которые позволяют воспроизводить процесс обработки данных[22, с.19].

Для описания языка и его применения используются понятия языка. Понятие —это некая синтаксическая конструкция и свойства программных объектов или процесса обработки данных, которые ею определяются [3, с 24].

То, как происходит взаимодействие семантическихи синтаксическихправил определяет различные понятия языка, такие как идентификаторы, операторы, функции и процедуры, переменные, модули и пр. [5, с. 93]. Отличие по сравнению с естественными языками правил грамматики и семантики для языков программирования, так же как для всех формальных языков, должны быть сформулированы явно, однозначно и четко.

Классификация языков программирования по категориям определяется методами, используемыми в процессе написании программ. Языки высокого уровня применяются в машинно-независимых системах программирования. Такие системы программирования, по сравнению с машинно-ориентированными системами являются более простыми в использовании[22, с. 166].

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

Рисунок 1— Общая классификация языков программирования[19, с. 116]

КЛАССИФИКАЦИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ

Языки программирования, которые имитируют естественные языки, и ориентированы на решение содержательных прикладных задач, называют языками высокого уровня (high-level programming language) [3, с. 199]. В этих языках присутствуют элементы, которые допускают описание задач в легко воспринимаемом, наглядном виде, делающие процесс программирования более простым и автоматизированным, а также упрощающие конструкции и структуры данных. В языках программирования высокого уровня отражается не архитектура вычислительной системы, а естественные для человека понятия [12, с.87]. Поэтому программа, которая составленана языке программирования высокого уровня,вначалетранслируется компьютеру на машинный язык низкого уровня (компиляция), а после этого выполняется.


Алфавит языков программирования высокого уровня может состоятьиз букв, цифр, математических символов,а также так называемые ключевые слова, к примеру: if (если); then (тогда); else (иначе) и др [17, с 263].
Исходные символы по правилам синтаксиса составляются в предложения, которые называются операторами.

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

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

К недостаткам некоторых языков программирования высокого уровня можно отнести большой размер программ в сравнении с программами на машинно-зависимых языках. Однако, текст программы, написанной на языке высокого уровня намного меньше, но с другой стороны, в байтах код, который написан на ассемблере, будет более компактным[15, с. 33]. Именно по этой причине на языках высокого уровня преимущественно пишут программное обеспечение для компьютеров и вычислительных устройств с памятью большого объема. Языки же низкого уровня используют для созданияпрограмм к устройствам, для которых размер программыбудет весьма критичным.

В языках высокого уровня особенности конкретной компьютерной архитектуры не учитываются, поэтому написанная на них программа легко может быть перенесена на другуюмашину. Очень часто бывает достаточно скомпилировать программу под ту ли иную архитектурную и операционную систему[22, с. 314]. Разрабатывать программу на языке высокого уровня намного проще и ошибок значительно меньше. В то же время разработка программы происходит гораздо быстрее, и это особенно важно при работе над сложными программными продуктами.

Таким образом, языки программирования высокого уровня, являясь машинно-независимыми, требуют использования соответствующих программ-трансляторов, которые могут представить программу на языке компьютера, на котором она будет выполняться[3, с. 119].

Самая распространенная классификация языков программирования основана на принципе их организации, или парадигме. По этой классификации языки подразделяются на процедурно-ориентированные, объектно-ориентированные и декларативные (рисунок 2).


Лисп

Рисунок 2 — Классификация языков программирования высокого уровня[3, с. 122]

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

а) Фортран (Fortran), название которого происходит от слов «fоrmulaetranslatijn»– «преобразование формул». Фортран является одним из самых старых языков программирования высокого уровня. Столь длительное его существование и применениеобъясняется простотой структуры данного языка [17, с. 200];

б) Бейсик (Basic), название которого расшифровывается как «Beginner'sAll-purposeSymbolicInstructionCode», что переводится как «многоцелевой символический обучающий код для начинающих», был разработан в 1964 г., для обучения программированию;

в) Си (С), который активно используется с 70-х гг., как язык системного программирования. В 80-е гг. на его основе был разработан язык C++, который на практике включает в себя язык С и дополнительные средства объектно-ориентированного программирования[13, с. 145];

г) Паскаль (Pascal), названный в честь французского ученого Б. Паскаля, был разработан Н. Виртом и применяется с 1968г. Поначалу Паскаль использовался как средство обучения основам программирования, но постепенно стал все более широко применяться для создания программных средств в профессиональном программировании.

Декларативные языки программирования высокого уровня применяются для решения целых классов новых задач, которые появились в связи с постоянным увеличением области применения вычислительной техники [13, с. 169]:

а) Лисп (Lisp – ListInformationSymbolProcessing), изобретенныйв 1962 г. Дж. Маккарти. Изначально он использовался, как средство для работы со строками символов. Лисп применяется в системах аналитических вычислений,экспертных системах и т. п.

б) Пролог (Prolog – ProgramminginLogic) — используется для логического программирования в системах искусственного интеллекта[12, с. 192].

Объектно-ориентированные языки продолжают свое развитие и в настоящее время. Практически каждый из них является версией процедурных и проблемных языков, однако программирование с помощью языков этой группы более наглядный и простой процесс. К наиболее часто употребляемым языкам относятсяVisualBasic, Delphi, VisualFortran,  C++, Prolog++[22, 301].

Другая классификация делит языки на вычислительные и языки символьной обработки. К первому типу относят Фортран, Паскаль, Алгол, Бейсик, С, ко второму – Лисп, Пролог, Снобол и др. Также сушествует классификация языков программирования по типам задач , которая представлена в Приложении 1.


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

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

2.1. Процедурно-ориентированные языки программирования высокого уровня: краткое описание и особенности

Фортран (Fortran) —первый компилируемый язык, созданный Джоном Бэкусом в 50-е гг. Для данного языка было разработанобольшое количество библиотек, начиная от статических комплексов и заканчивая пакетами управления спутниками. По этой причине Fortran продолжают активно использовать в большом числе организаций, а в настоящий момент идет работа над новым стандартом Фортрана — F2k. Существует стандартная версия Фортрана HPF (HighPerfomanceFortran) для параллельных многопроцессорных суперкомпьютеров. Название Fortran является сокращением от FORmula TRANslator (переводчик формул). Фортран широко применяется, прежде всего, в научных и инженерных вычислениях[1, с. 31].

Существует большое количество созданных на Фортране (в основном на старых версиях языка) разнообразных математических библиотек для матричной алгебры и решения систем линейных уравнений, решения дифференциальных уравнений, интегральных уравнений и их систем, аппроксимации функций, специальных функций, быстрых преобразований Фурье, математической статистики и других математических дисциплин[16, с. 366].

У современного Фортрана (Fortran 95 и Fortran 2003) можно выделить черты, которые необходимы для продуктивного программирования, создания новых вычислительных архитектур[8, с. 29]. Он дает возможность использовать современные технологии программирования, к примеру, обобщённое и модульное программирование, объектно-ориентированное программирование, но при этом сохраняется преемственность с более старыми версиями. Одной из основных концепций развития современного Фортрана являются средства поддержки параллельности и векторные операции.