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

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

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

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

Добавлен: 01.04.2023

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

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

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

C# (C Sharp) – “ Си Шарп ”: объектно-ориентированный яык программирования, о разработке которого в 2000 г. объявила фирма Microsoft . По своему характеру он напоминает языки C++ и Java и предназначен для разработчиков программ, использующих языки C и С++ для того, чтобы они могли более эффективно создавать Интернет-приложения. Указывается, что C # будет тесно интегрирован с языком XML.[10]

2.2 Паскаль

Паскаль [PASCAL - акроним с французского - Program Applique a la Selection et la Compilation Automatique de la Litterature] - Процедурно-ориентированный язык программирования высокого уровня, разработанный в конце 1960-х гг. Никлаусом Виртом, первоначально для обучения программированию в университетах. Назван в честь французского математика XVII века Блеза Паскаля.

В своей начальной версии Паскаль имел довольно ограниченные возможности, поскольку предназначался для учебных целей, однако последующие его доработки позволили сделать его хорошим универсальным языком, широко используемым в том числе для написания больших и сложных программ. Существует ряд версий языка (например, ETH Pascal, USD Pascal, Turbo Pascal ) и систем программирования на этом языке для разных типов ЭВМ. Для IBM PC наиболее популярной является система Turbo Pascal фирмы Borland (США).

Delphi является «наследником» языка Паскаль; основные операторы в этих языках одинаковы. Но Delphi имеет средство для работы с различными графическими объектами (создания форм, кнопок, меню), а также для обработки сложных структур данных. Поэтому он очень популярен при разработке различных Windows- приложений.[11]

2.3 Фортран

В 1954 году в недрах корпорации IBM группой разработчиков во главе с Джоном Бэкусом (John Backus) был создан язык программирования Fortran.

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

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


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

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

В Фортране следующая конструкция описывает “цикл for до метки 10 при изменении индекса от 1 до 100”: DO 10 I=1,100. Если же здесь заменить запятую на точку, то получится оператор присваивания: DO10I = 1.100 Говорят, что такая ошибка заставила ракету взорваться во время старта.

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

Введение Фортран было встречено еще более жесткой критикой, чем введение ассемблера. Программистов напугало снижение эффективности программ из-за использования промежуточной ссылки в виде компилятора. И эти опасения были вполне оправданы: действительно, хороший программист, скорее всего, при решении какой-то небольшой задачи, будет вручную писать код, который работает быстрее, чем скомпилированный код. Через некоторое время стало ясно, что реализация крупных проектов невозможна без использования языков высокого уровня. Мощность компьютеров возросла, и стало возможным смириться с падением эффективности, которое ранее считалось угрожающим. Преимущества языков высокого уровня стали настолько очевидными, что они побудили разработчиков создавать новые языки, которые становятся все более и более совершенными.[12]


2.4 Бейсик

Бейсик [BASIC - Beginner’s All-purpose Symbolic Instruction Code] - Язык программирования высокого уровня , разработанный в 1963 - 1964 гг. в Дартмутском колледже Томасом Куртом и Джоном Кемени.

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

Большинство версий Бейсика используют интерпретатор, который преобразует его компоненты в машинный код и позволяет запускать программы без промежуточной трансляции. Некоторые более совершенные версии Бейсика позволяют использовать для этой цели трансляторы. На IBM PC широко используются Quick Basic фирмы Microsoft, Turbo Basic фирмы Borland и Power Basic (усовершенствованная версия Turbo Basic, распространяемая фирмой Spectra Publishing ). В начале 1999 г. фирма Microsoft выпустила версию языка Visual Basic 6.0 (VB 6.0), предназначенного для создания многокомпонентных программных приложений для систем уровня предприятий .

Например, язык Lisp используется для создания экспертных систем. Язык Java используется для разработки сетевых (Web)- приложений.

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

Ранее для реализации каждого этапа использовались специальные инструменты. Например, текст программы сначала набирался в текстовом редакторе. Затем с помощью специальной команды был запущен переводчик для перевода текста программы в машинный код. Затем другая команда запустила компоновщик, чтобы объединить вновь написанную программу с ранее разработанными фрагментами для создания исполняемого файла.

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

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


Интегрированная среда разработки обычно включает в себя:

  • текстовый редактор – для набора текста программы
  • компилятор (или интерпретатор) - для перевода программы в машинный код
  • компоновщик - для объединения при необходимости нескольких программ “запускатель программ”, который позволяет выполнить разрабатываемую программу, не выходя из среды разработки.
  • отладчик, который позволяет посмотреть промежуточные результаты, сделать паузу в заданном листе программы, либо при изменении значения заданной переменной.
  • справочную систему, описывающую особенности конкретной реализации языка.
  • Для одного и того же языка могут существовать разные среды разработки. Например, для языка С есть среда Turbo C и Borland C.[13]

3. Обзор языков программирования высшего уровня

3.1. Кобол

Кобол - это скомпилированный язык программирования для «бизнеса». Этот язык программирования был разработан в 1959-1961 гг. прежде всего для исследований в области экономики. Язык позволяет эффективно работать с большим объемом данных, он полон различных возможностей поиска, сортировки и распространения.

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

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

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


3.2. Алгол

Алгол – компилируемый язык программирования, впервые опубликованный в 1960 г.

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

3.3. Си++

Язык Си++ был разработан в 1980 г. Бьерном Страуструпом в компании BellLabs.

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

Трудность изучения языка C ++ в значительной степени связана с тем, что самому языку не хватает средств для контроля ввода и вывода информации. И это понятно, поскольку эти средства различны для каждой компьютерной модели, и C ++ - это абстрактный язык, который не ориентирован на конкретную компьютерную модель. Поэтому язык часто изучается не на конкретных примерах, а на абстрактных теоретических построениях, что крайне неудобно для начинающих.

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

В отличие от традиционных структур C и Pascal, в C ++ членами класса являются не только данные, но и функции. Функции имеют привилегированный доступ к данным внутри объектов этого класса и обеспечивают интерфейс между этими объектами и остальной частью программы. При дальнейшей работе совершенно не нужно помнить о внутренней структуре класса и механизме встроенной функции. В этом смысле класс похож на электрическое устройство: мало кто знает о его структуре, но каждый знает, как его использовать.