Файл: Обзор языков программирования высокого уровня).pdf

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

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

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

Добавлен: 25.05.2023

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

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

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

ВВЕДЕНИЕ

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

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

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

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

  • операторы присваивания;
  • операторы ввода и вывода информации;
  • операторы перехода;
  • операторы выбора;
  • операторы циклов.

Пользуясь этими конструкциями, программист может разработать программу любого уровня сложности.

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

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

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


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

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

При написании работы в качестве опорных источников были использованы следующие: М.А. Ревенко – «Практикум по программированию на языке TurboPascal» и Л.И. Долинер – «Основы программирования в среде PascalABC.NET».

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

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

1.1 Понятие и сущность высокого уровня

В середине 50-х годов, когда вычислительная техника прочно укоренилась в университетах и научно-исследовательских лабораториях США и Европы, наступило время стремительного прогресса в области программирования. Однако новые разработки отнюдь не отрицали всего того, что было сделано прежде. Напротив, они опирались на уже построенный фундамент. Компиляторы и интерпретаторы для так называемых языков ассемблера (такие языки требуют от программиста глубокого знания аппаратуры) остались важным средством программирования для любого компьютера. Однако, хотя эти средства и продолжали использоваться, их роль постепенно снижалась. Посредниками между программистами и машинами стали языки программирования нового типа. От языка ассемблера они отличались большей гибкостью и возможностью использования конструкций, подобных предложениям.
С появлением языков высокого уровня программисты получили возможность больше времени уделять решению конкретной проблемы, не отвлекаясь особенно на весьма тонкие вопросы организации самого процесса выполнения задания на машине. Кроме того, появление этих языков ознаменовало первый шаг на пути создания программ, которые вышли за пределы научно-исследовательских лабораторий и финансовых отделов.
Вначале 60-х годов все существующие языки программирования высокого уровня можно было пересчитать по пальцам. Однако вскоре их общее число (с учетом разнообразных диалектов) достигло нескольких сотен. Поэтому были предприняты различные попытки создать универсальный язык программирования. Ни одна из них не увенчалась полным успехом. Создается впечатление, что в программировании наилучший результат достигается только при индивидуальном подходе.


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

Например, BASIC по-прежнему широко употребляется для написания простых программ, особенно программ для микрокомпьютеров.
FORTRAN - с его четко определенными правилами выполнения арифметических действий - является классическим (чем-то вроде латыни или греческого) языком программирования, наиболее подходящим для выполнения естественнонаучных, математических и инженерных расчетов.
Язык программирования Кобол (COBOL, от COmmon Business Oriented Language - общий язык, ориентированный на деловые задачи), созданный в 1960 г. объединенным комитетом производителей и пользователей компьютеров, был задуман как основной язык для массовой обработки данных в сферах управления и бизнеса. В COBOL, в отличие от большинства других языков, все данные описываются в отдельной секции, которая не совпадает с секцией команд. Это соглашение позволяет использовать совместно одни и те же описания данных в различных программах.
Другие языки еще более специализированны. Например, для обучения программированию школьников широко используется язык Logo (от греческого logos - слово). Этот язык позволяет новичку управлять движением по экрану специального символа под названием «черепашка». Так, набирая последовательно команды FORWARD 60 (вперед), LEFT 45 (влево), FORWARD 75, юный программист сообщает компьютеру, что он хочет нарисовать прямую линию длиной в 60 единиц, затем сделать поворот против часовой стрелки на 45 градусов и нарисовать еще одну линию длиной в 75 единиц.

Еще один заслуживающий внимания язык программирования - Алгол (ALGOL, от ALGOrithmic Language - алгоритмический язык). Как и COBOL, это - плод работы комитета, но не национального, а международного. Язык предназначен для записи алгоритмов, которые строятся в виде последовательности процедур, применяемых для решения поставленной задачи. Первая версия этого языка, ALGOL-58, была разработана в ходе напряженного восьмидневного совещания в конце весны 1958 г.

Специалисты по вычислительной технике и программированию из США (в их числе Джон Бекус - один из создателей языка FORTRAN) встретились со своими европейскими коллегами в Цюрихе. Цель встречи заключалась в разработке проекта универсального машинно-независимого языка, который по своему уровню не уступал бы FORTRAN. На самом деле FORTRAN и сам вполне мог бы претендовать на роль такого универсального языка, если бы не его чересчур тесная связь с фирмой IBM и ее машинами.
Программисты далеко неоднозначно приняли язык ALGOL-58 и его преемника ALGOL-60. Широкого одобрения (которого в конце концов добился FORTRAN) эти языки так и не получили. И все же их влияние на развитие других языков программирования оказалось весьма значительным.
Среди языков, при создании которых ставилась цель улучшить ALGOL, следует отметить Pascal. Этот язык был разработан в конце 60-х годов швейцарским ученым Никлаусом Виртом. Язык Pascal требует от программиста определения всех переменных в отдельной секции, расположенной в начале программы. Так как эти определения задаются явным образом, то в Pascal-программах сравнительно немного ошибок и их проще понять и исправить программисту, не являющемуся автором программы. Это делает Pascal весьма подходящим для создания больших программ.


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

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

Главная причина, сделавшая программное обеспечение своего рода камнем преткновения, кроется в его все возрастающей сложности. Многие программы настолько велики, что даже специалисты не в состоянии их понять. Например, пакет программного обеспечения для управления системой воздушных перевозок, которая работает в 20 городах США и в одном городе Великобритании, насчитывает более 600 тыс. отдельных машинных команд. Из них 39 203 - команды условного перехода, обеспечивающие возможность разветвления программы по двум направлениям. Таким образом, общее количество возможных путей в программе составляет астрономическое число, которое приблизительно выражается числом 10 с 11 800 нулями.

(В языке BASIC оператор условного перехода может иметь вид IF N> = 4 THEN 220. Такой оператор предписывает компьютеру перейти к выполнению оператора, заданного в строке 220, если переменная N больше либо равна 4. Если N меньше 4, то компьютер должен автоматически перейти к выполнению следующей строки программы.)

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

В программировании недопустимо полагаться на волю случая. Пользователь, завороженный магией компьютера, не владея искусством программирования, склонен упускать из виду, что те действия, которые он считает само собой разумеющимися, машине надо сообщать в самых мельчайших подробностях. Один специалист по компьютерам заметил: «Если говорить только о том, как человек обдумывает способ выполнения какого-либо действия, то здесь особых проблем не возникает. Однако люди пользуются такими удивительными способностями, как ассоциативное мышление и распознавание образов».


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

Поскольку для того, чтобы предусмотреть любую случайность, надо написать сотни, а то и тысячи команд компьютера, естественно, растут затраты и вкрадываются ошибки. Все это порождает, по словам голландского ученого Эдсгера Дейкстры, «огромное множество досадных мелочей». Дейкстра - научный сотрудник фирмы «Бароуз» (BURROUGHS), один из наиболее авторитетных в мире теоретиков программирования и последовательный критик всего того, что он считает проявлением преступной халатности в данной области. Уже не один год он утверждает, что большинства ошибок можно избежать, и ведет неутомимую борьбу с небрежным стилем в программировании, которое развивалось в основном не как строгая наука, а как искусство, основанное на интуиции и личном опыте.

1.2 Развитие языков высокого уровня

Высокоуровневые языки программирования, в плане создания ПО, стали всё по большей части удаляться от машинных кодов и реализовывать различные, помимо процедурного, парадигм программирования. К ним относят также и реализацию объектно-ориентированных принципов. C++, Java, Python, JavaScript, Ruby… – спектр языков данного типа наиболее популярен и востребован сегодня. Они предоставляют больше возможностей для реализации разнообразного ПО и нельзя однозначно определить «специализацию» каждого из них. Но популярность применения в соответствующих областях обусловлена библиотеками/фреймворками для работы с ними, например:

JavaScript – Frontend. Язык был разработан для взаимодействия клиентского веб-браузера с пользователем и удалённым сервером. Наиболее популярные библиотеки: Angular, React и VUE. В данное время относительно активно употребляется и на web и т. п. серверах (backend), особенно популярен Node.js.

Ruby – Backend. Применяется для создания скриптов (служебных сервисных файлов) и на web серверах. Основной фреймворк - Ruby On Rails. Python – научная и инженерная сфера (помимо веб-области). Является альтернативой стандартным вычислительным и математическим пакетам (Mathematica, Octave, MatLab…), но имеет привычную семантику языка и большое число библиотек. Имеет много поклонников в области систем машинного обучения, статистики и искусственного интеллекта. Из часто используемых библиотек необходимо упомянуть django, numpy, pandas, tensorflow.