Начнем с того, что такое язык программирования? Язык программирования – это формальный язык, используемый для связи между человеком и компьютером, предназначенный для записи компьютерных программ.
Существует более 120 языков программирования, некоторые из них известны многим и широко используются программистами, например C++, Java, Python. Но есть и менее популярны среди программистов: Boo, Groovy, Clojure.
Единой классификации языков программирования нет, их можно разделять по множествам признаков. Но так или иначе, язык программирования можно разделить на 2 группы: процедурные и непроцедурные.
Процедурные языки программирования подразделяются на высокоуровневые и низкоуровневые. Высокоуровневые языки это: C, C++,C#, Delphi, Java.
Изначально первым появился язык низкого уровня. К языкам низкого уровня относят машинный язык, ассемблер, макроассемблер, машинно-ориентированный язык, они требуют указания мельчайших деталей процесса обработки данных. Такой язык ориентируются на конкретный тип процессора и учитывает его особенность. С языками низкого уровня тяжелее работать, но созданные с помощью них ОС, драйвера и ПО занимают меньше места в памяти и работают быстрее.
Высокоуровневый язык программирования – язык программирования, разработанный для удобства использования программистом. Таким образом, этот язык уже более ближе и яснее человеку, в отличии от компьютера, более абстрактны и обладают множеством классов, с очень развитым синтаксисом. Такие языки легко переносятся на другие платформы, для которых создан транслятор этого языка.
Языки высокого уровня подразделяются на:
Алгоритмический (Basic, Pascal, C) предназначен для точного описания алгоритмов; для решения задачи процедурные языки требуют в той или иной форме явно записать процедуру ее решения.
Логический (Prolog, Lips) представляет собой совокупность определений отношений между объектами и цели. Результатом является вычисления побочным продуктом этого процесса.
Объектно-ориентированный (Object, Pascal, C++, Java) определяется как технология создания сложного ПО, основанная на представлении программы в виде совокупности объектов. Программа на ОО языке, решая задачу, описывает часть мира, относящуюся к этой задаче.
Так как каждое семейство Электронно- вычислительных машин имеет свой машинный язык и выполняет только свои команды, то для перевода программ используются трансляторы. В свою очередь трансляторы подразделяются на компиляторы(Pascal, C, PL/M) и интерпретаторы (Basic, Java).
Интерпретация – это процесс превращения данных в информацию, процесс придания им смысла.
Компиляция – это программа, считывающая текст программы, написанной на одном языке - исходном и переводит в машинный код.
Можно сделать вывод, что высокоуровневые языки стремятся не только облегчить решение сложных программных задач, но и упростить портирование ПО. Использование различных трансляторов и интерпретаторов обеспечивает связь программ с различными ОС программируемыми устройствами .