Возникновение языков программирования приходится на начало 50-х годов xx века.

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

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

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

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

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

Особое место среди языков программирования занимают языки, обеспечивающие работу систем управления базами данных (СУБД). Часто в них выделяют две подсистемы: язык описания данных и язык манипулирования.

Формально язык программирования не имеет такого критерия как «уровень». Условно этот термин означает степень отличия семантики языка от машинного кода целевой архитектуры процессора — другими словами, наименьший масштаб преобразований, которые должен претерпеть код программы перед тем, как он сможет исполняться. Однако, история знает случаи, когда язык, являющийся «низкоуровневым» на одной платформе, компилировался как «высокоуровневый» на другой (таким образом программы на ассемблере VAX использовались на DEC Alpha), или, когда язык, считающийся «высокоуровневым», реализовывался аппаратно (см. Лисп-машина, Java Optimized Processor[en]).

К языкам самого низкого уровня относят машинные языки. Их относят к первому поколению языков программирования[en]. Вскоре после них появились языки второго поколения[en] — так называемые «языки ассемблера». В одних случаях они представляют собой не более чем мнемонику над машинным языком, в других имеют весьма развитый макроязык. Языки первого и второго поколения позволяют тонко контролировать, как требуемая функциональность будет исполняться на данном процессоре с учётом особенностей его архитектуры. С одной стороны, это обеспечивает высокое быстродействие и компактность программ, но с другой, для переноса программы на другую аппаратную платформу её нужно перекодировать (а порой и перепроектировать) с нуля. Большинство ассемблеров являются бестиповыми, но существуют и типизированные ассемблеры[en], нацеленные на обеспечение минимальной безопасности низкоуровневых программ.

К 1970-м годам сложность программ выросла настолько, что превысила способность программистов управляться с ними, и это привело к огромным убыткам и застою в развитии информационных технологий[22]. Ответом на эту проблему стало появление массы языков высокого уровня, предлагающих самые разные способы управления сложностью (подробнее см. парадигма программирования и языки для программирования в мелком и крупном масштабе). Термин «язык высокого уровня» в этом смысле предполагает, что семантическая модель языка в большей степени учитывает особенности мышления человека, нежели машины. Как следствие, программы гораздо легче модифицируются и совсем легко переносятся с компьютера на компьютер. На практике, наибольшее распространение получили языки третьего поколения, которые лишь претендуют на звание «высокоуровневых», но реально предоставляют лишь те «высокоуровневые» конструкции, что находят однозначное соответствие инструкциям в машине фон-Неймана[23].

На данный момент существует более 300 языков программирования. Каждый из них имеет свои особенности и подходит для одной определенной задачи. Все языки программирования можно условно разделить на несколько групп:

-Аспектно-ориентированные (основная идея – разделение функциональности для увеличения эффективности программных модулей).

-Структурные (в основе лежит идея создания иерархической структуры отдельных блоков программы).

-Логические (в основе лежит теория аппарата математической логики и правил резолюции).

-Объектно-ориентированные (в таком программировании используются уже не алгоритмы, а объекты, которые принадлежат определенному классу).

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

-Функциональные (в качестве основных элементов выступают функции, которые меняют значение в зависимости от результатов вычислений исходных данных).

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

-SQL.

-Java.

— XML. C++.

-HTML.

Visual Basic.

-XSL.

-Delphi.

ЗАКЛЮЧЕНИЕ

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

ЛИТЕРАТУРА

1. http://dic.academic.ru

2. http://alcala.ru

3. ru.wikipedia.org

4. www.syl.ru

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


Похожие статьи.

Понравилась статья? Поделиться с друзьями: