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


Классификация языков программирования по уровням

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

Взаимодействие человека и машины

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

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

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

  1. Формализованное логическое описание самой задачи.
  2. Построение алгоритма, описывающего все шаги достижения цели, начиная от обработки входных данных и заканчивая получением результата.
  3. Кодирование - составление программы на любом из языков программирования, которую затем можно будет перевести на понятный для компьютера язык.
  4. Трансляция - непосредственный перевод.
  5. Сборка работающей программы (исполняемого модуля) из всех составных частей.

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

Структура языков программирования

Устройство всех систем взаимодействия схоже и во многом определяет классификацию языков программирования.

Основные объекты языка программирования постоянны и напоминают компоненты человеческих языковых систем:

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

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

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

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

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

Обзор классификаций

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

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

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

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

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

Удобство для человека

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

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

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

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

Основные недостатки низкоуровневых языков:

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

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

Обработка программы машиной

Чтобы выполнить сложную инструкцию, компьютер прежде всего должен понизить ее абстрактность и перевести на понятный для себя язык. Способ, которым это делается, называется моделью исполнения. Выделяют две основных модели и одну гибридную:

  • Компиляция - единовременный перевод всей программы в машинный код.
  • Интерпретация - последовательное выполнение каждого выражения.
  • Транскомпиляция - перевод на язык более низкого уровня, например C или ассемблер, и его последующая компиляция.

Для перевода необходима специальная программа-транслятор - компилятор или интерпретатор, без которой работа с языком невозможна.

Интерпретатор работает с каждой строчкой программы отдельно, анализируя ее и сразу же выполняя. Его присутствие необходимо от начала и до самого конца работы программы.

Основные недостатки интерпретационной модели:

  • постоянное нахождение транслятора в памяти ЭВМ;
  • повторная обработка повторяющихся команд.

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

Компилятор же трудится только один раз, сразу преобразуя всю инструкцию в понятный для компьютера вид - машинный код или некий промежуточный байт-код, а затем покидает память ЭВМ. Здесь выполнение отделено от процесса трансляции, что является более эффективной моделью.

Основные недостатки компиляционной модели:

  • большая сложность.

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

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

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

  • Интерпретируемые - Python, Haskell, PHP, JavaScript.
  • Компилируемые сразу в машинный код: C, C++, Fortran, ASM.
  • Компилируемые в байт-код: Python, Java.
  • Транскомпилируемые: Haskell, Fortran, C, C++.

Обработка данных

Любой язык программирования работает с информацией, которой нужно каким-то образом манипулировать, проверять на корректность, изменять. Данные могут быть самими разнообразными - числами, строками или сложными структурами. Разумеется, с каждым типом необходимо работать по-разному, но чтобы определить, как именно, сначала необходимо понять, с какими именно данными ЭВМ имеет дело.

На основе метода определения разновидности данных построена классификация языков программирования по системе типов.

  • Нетипизированные языки.
  • Типизированные языки разной степени строгости.

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

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

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

Существует также классификация языков программирования высокого уровня по моменту проверки типов данных:

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

Принципиальный способ взаимодействия

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

  • алгоритмические, императивные, процедурные. Требуют явного последовательного описания алгоритма решения задачи. Операторы при этом объединяются в процедурные группы, отделенные от самих данных. Примеры процедурных языков - Pascal, Basic;
  • логические, декларативные. Максимально формализовано описывают саму задачу и требуемый результат. Решение при этом должно логически следовать из этого описания;
  • объектно-ориентированные, структурированные. Имеют в основе концепцию объекта, объединяющего в себе данные и методы их обработки.

Объекты в программировании

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

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

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

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

Поколения языков программирования

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

В попытках связать классификацию и эволюцию языков программирования выделились несколько крупных групп, названных поколениями:

  • Первое поколение - машинные языки низкого уровня, привязанные к реализации конкретной ЭВМ. "Программы" на этих языках выглядели как ряды переключателей, приведенных в нужное положение, или перфокарты (перфоленты). Таким образом, все команды представляли собой последовательность нулей и единиц - бинарный код. Пример: язык ARM-процессора.
  • Во втором поколении языки стали немного понятнее для человека, но отвязать их от конкретного аппарата так и не удалось. Это время языков ассемблера с его мнемоническими кодами и однозначной сборкой в машиночитаемую форму. Пример: Макроассемблер.
  • Языки третьего поколения сняли с программиста заботу о непринципиальных деталях составления инструкций, таких как перевод программы в машинный код. Теперь компьютер научился делать это самостоятельно. Синтаксис и лексика приблизились к человеческим, стали понятнее. В этом поколении зародились практически все современные языки высокого уровня с широкой областью применения, независимо от их парадигмы: PHP, Fortran.
  • В четвертом поколении уровень абстракции возрос еще больше, резко сужая область использования. К этой группе относятся такие специфичные языки, как FoxPro, Simulink, SQL. Появились языки визуального программирования: CAD-пакеты, системы RAD.
  • Наконец, языки пятого поколения должны были сами писать программы, получая лишь описание от программиста. Эта задумка так и не была реализована полностью, так как для составления эффективного алгоритма иногда недостаточно прямой машинной логики, а требуется еще человеческая интуиция и смекалка. Примерами языков пятого поколения являются MathCAD, Prolog и Mercury.

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

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

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

Область применения

Каждый язык программирования хорош в своей области, для которой он создавался. Так, для программирования микроконтроллеров используются ассемблеры, а с Java там делать нечего. Низкоуровневое программирование драйверов эффективно с C, который позволяет строго контролировать ресурсы памяти. Для веб-программирования стоит выбрать скриптовые языки PHP и JavaScript, интерпретатор которого встроен в каждый современный браузер. Важные банковские программы написаны на Java, обеспечивающем контроль ошибок. Аэрокосмические - тоже на Java или на Паскале, который даже уборку мусора отдает на контроль программисту.

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

Важность классификации

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

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

fb.ru

Кратко о языках программирования

Языки программирования делятся на 2 класса:

 

  1. Машинные или машинно-ориентированные (низкого уровня)
  2. Алгоритмические (высокого уровня)

 

Язык низкого уровня ориентирован на конкретный тип процессора и записывается в машинных кодах (0 или 1). Этот язык понятен компьютеру, но не понятен человеку. Например, язык АССЕМБЛЕРА

Языки программирования высокого уровня – записываются с помощью английских слов и фраз. То есть такой язык понятен человеку но

не понятен компьютеру. Эти языки нужно переводить на машинные коды. Для этого применяются трансляторы. Они делятся на:

 

  1. Компиляторы – сразу переводят исходный текст программы на язык машинных кодов. После этого формируется командный файл (.exe или .com) и сама исходная программа уже не нужна.
  2. Интерпретаторы – они переводят исходный текст программы по шагам. И каждый раз при запуске обращаются к исходному тексту. Очень удобно при отладке программ.

 

Еще есть понятие «компоновки» программ, то есть сбор откомпилированных элементов в единый программный модуль

Этапы компьютерного моделирования:

 

  1. Постановка задачи и определение объекта моделирования
  2. Разработка концептуальной модели, выявление основных элементов и их взаимосвязей
  3. Формализация и переход к модели
  4. Создание алгоритма и написание программы
  5. Планирование и проведение компьютерных экспериментов
  6. Анализ и интерпретация результатов

 

Массив относится к составным типам данных. Доступ к элементу массива осуществляется по имени массива и номеру элемента. Элементы массива в памяти компьютера упорядочены по возрастанию индексов.

 

Атрибуты переменной в языках программирования: имя, адрес, значение и тип

 

Критерии качества программных систем: надежность, правильность, понятность, гибкость, эффективность

 

Языки программирования:

 

Perl – язык сценариев

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

Виртуальная машина Java – интерпретатор

Пролог – язык логического программирования, является интерпретатором

Метаязык – может считаться языком командного файла

JavaSCRIPT – язык сценариев

SQL – язык манипулирования данными используется для выборки, вставки и удаление информации в реляционных базах данных.

К языкам декларативного программирования относятся логические языки

HTML и XML – языки разметки данных

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

 

Основными элементами объектно-ориентированного программирования являются:

  1. Класс
  2. Объект - экземпляр класса
  3. Событие, которое происходит с объектом
  4. Метод который выполняется над объектом
  5. Свойство

 

Базовыми понятиями объектно-ориентированного программирования являются:

 

  1. Полиморфизм – использование одного имени для задания общих для класса действий , что означает способность объектов выбирать внутренний метод исходя из типа данных
  2. Наследование – свойство ООП, которое может быть смоделировано с помощью таксономической классификационной схемы (иерархии)
  3. Инкапсуляция – означает возможность заключать в отдельный модуль процедуры работы с объектом

 

Основой метода структурного программирования являются: (программирование «сверху-вниз»)

 

По другому это программирование без «GoTo»

 

  1. Использование композиции трех базовых элементов: ветвления, линейной структуры и цикла
  2. Использование подпрограмм

 

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

Для системного программирования наиболее подходят языки: С, С++ и Ассемблер

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

На этапе синтаксического анализа при трансляции выявляются ошибки типа «пропущена точка с запятой»

Еще записи по теме

www.ikasteko.ru

виды, описание, применение и отзывы

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

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

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

• С/С++;• Java;• Python;• Visual Basic;• PHP.

Это далеко не весь перечень, на самом деле их намного больше. Здесь представлены самые основные, которые используются для написания более 90% компьютерных приложений. Стоит рассмотреть их более подробно.

Процедурный С/С++

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

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

Независимый и безопасный Java

Данный английский язык программирования был разработан компанией Sun Microsystems. За счет того, что написанная программа способна транслироваться в особый байт-код, она может функционировать независимо от типа операционной системы либо компьютерной архитектуры. Благодаря этому язык Java стал наиболее известным. Он встречается в следующих устройствах:

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

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

Таким образом, при совершении попытки выполнить другую задачу программа сразу прекращает свою работу. При рассмотрении простоты языка необходимо указать исследования, показывающие, что одинаковые операции пишутся в 1,2-2 раза дольше, нежели на языке C++. Кроме того, намного больше ресурсов необходимо на осуществление команд. Однако команда разработчика регулярно выпускает множество обновлений, сводящих к минимуму все минусы данного языка программирования.

PHP

Если создать собственный сайт или способный делать динамические страницы. Он выступает в качестве одного из наиболее известных языков, когда необходимо создать сайты и написать веб-приложения. За счет того, что данный язык программирования разрабатывался с открытым кодом, его получилось довести до совершенства. Таким образом, он получил завидную популярность. PHP с легкостью взаимодействует с различными базами данных, начиная от MySQL и заканчивая Access. Наиболее известные сайты интернета, такие как Facebook или Wikipedia, созданы при использовании именно этого языка. Он достаточно прост в применении. Имеется даже статистика, результаты которой показывают, что более 60% программистов со всего мира, работающих на коде PHP, несколько ограниченно знакомы с английским языком. Компьютерная грамотность в данном случае ограничена только знанием требуемых функций и процедур.

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

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

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

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

computerologia.ru

Какие бывают языки программирования?

Какие бывают языки программирования?

Язык программирования - т специальные языки на котором записывается «исходный текст» программы.

На заре вычислительной техники (1930-1950 годы) исходные тексты записывались в виде «машинного кода» (т.е. указания номеров инструкций и аргументов для них), позднее появился первый известный язык программирования «ASSEMBLER», который значительно упростил процесс создания программы, так как позволил указывать не числовой номер инструкции, а ее символьное обеспечение, что упростило чтение и отладку исходного теста программы. Последующее появление языков более «высокого уровня» чем «ASSEMBLER» позволило перевести создание программного обеспечения из удела технических специалистов обеспечивающих функционирование конкретных аппаратных комплексов в удел специалистов по созданию программного обеспечения именуемых далее «программистами» или «разработчиками программного  обеспечения».

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

Языки программирования можно разделить, по:* назначению* уровню абстракции

В зависимости от назначения языки делятся на: * языки общего назначения - позволяющие создавать самое разнообразное программное обеспечение. Например: C, C++, C#, Java.* языки специального назначения - позволяющие решать круг специфических задач. Например: T-SQL, HTML, CSS.

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

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

Как правило языки отличаются друг от друга по синтаксису (задающему конкретный вид операторов, операндов, ключевых слов) и семантике (задающей смысловую нагрузку для тех или иных синтаксических конструкций языка).

Для облегчения написания текстов на различных языках программирования были созданы специальные редакторы исходного текста и даже целые среды разработки программного обеспечения (IDE).

Дата публикации: 23.11.2010 04:00 UTC

Теги: информатика :: лекция :: конспект :: урок :: реферат :: разработка урока :: полезный совет :: Windows :: Windows XP :: язык программирования :: C :: C++ :: C Sharp :: Java.

Смотрите также учебники, книги и учебные материалы:

Следующие учебники и книги:

Предыдущие статьи:

nashol.com

Какой язык программирования выбрать?

Такое разнообразие высокоуровневых языков программирования появилось относительно недавно. Ещё в пятидесятых годах двадцатого века для программирования вычислительных машин использовали непосредственно машинный код (набор единиц и нулей). Ключевым недостатком этого подхода к программированию было различие кодировки разных вычислительных машин, вносящее необходимость повторного написания той же программы для ЭВМ другого производителя.

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

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

Современные языки программирования сильно отличаются от тех, которыми пользовались программисты пятидесятых. Все эти годы разработка и совершенствование принципов программирования считалась приоритетным направлением работы для многих компаний. Поэтому идеи, возникшие в 50-х, дополненные и развитые в 60-90-х годах прошлого столетия, в наше время воплотились в красиво реализованные высокоуровневые языки программирования.

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

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

Какой язык программирования выбрать для изучения?

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

Front-end разработка

Это одно из самых простых решений. Количество вакансий для квалифицированных front-end разработчиков традиционно превышает количество соискателей. Кроме того, JavaScript, которым должны владеть фронт-энд разработчики, в изучении намного проще большей части языков программирования.

Популярность языка программирования

По количеству открытых вакансий самыми популярными языками служат Java и С (в разных вариациях). Традиционно начинать обучение рекомендуют именно с С. Поскольку изучение этого языка даёт понимание синтаксиса и семантики всех языков группы С. Изучив основы С, довольно просто перейти на С# С++ или Java.

Прицел в будущее

Здесь мнения аналитиков расходятся. Многие исследования говорят о том, что будущее за машинным обучением, Python’ом и его производными. Другие говорят о преимуществах языков для веб-разработки, в которых кеширование и заблаговременная компиляция плагинов приводит к существенному снижению времени отклика программы (PHP). Третьи настаивают на том, что самым популярным языком ещё долго будет оставаться Java и его производные.

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

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

vadimstroganov.com

Какие бывают языки программирования?

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

Web-языкиОсновой работы с интернетом является язык разметки - html. Он позволяет представлять информацию заданием тексту, картинкам, аудио и видео файлам специальных свойств, управляя их структурой. Для работы с полноценными языками web-программирования необходимо понимать структуру html-документов и html-команды - так называемые теги.PHP - язык программирования для создания интерактивных web-сайтов. Php-программы (скрипты) размещаются на удаленных компьютерах (серверах). Пользователь интернета при обращении к доменному имени запрашивает файлы с сервера. Php-скрипт генерирует код html в зависимости от запроса пользователя, сайт работает динамически, как полноценная компьютерная программа, реагирующая на действия.Обычно PHP взаимодействует с базой данных, имеющей самостоятельный язык запросов. Популярнейший язык запросов баз данных - MySQL. Он позволяет создавать реляционные базы данных, работающие на основе связей между структурами таблиц.Группа языков CЯзык «Cи», ставший впоследствии прародителем десятков языков, был создан в начале второй половины XX века для работы с процессорной памятью напрямую. Вычислительные машины в то время были огромными и использовались в военных и научных целях.Язык «Cи» имеет простую структуру, его команды могут быть воспроизведены даже детьми. «Си» может расширяться сообществом программистов с использованием специальных файлов функций - библиотек.На базе языка «Си» выросла целая группа инструментов разработки (CLR) и полноценных языков. C# (платформа ASP) является программной основой продуктов компании Microsoft. С++ стал излюбленным средством разработчиков по всему миру. Простой PascalЯзык «Паскаль» был создан в учебных целях скандинавским программистом Нортусом Виртом. Этот язык долгое время преподавался в советских школах и университетах, также локально использовался научными институтами Европы. Ввиду сложностей с расширяемостью (в Pascal отсутствуют прототипы библиотечных файлов, широко применяемых в C-языках), язык не получил широкого применения в написании программного обеспечения.Delphi - наследник языка Pascal. Поскольку многие программисты получали основы специальности на простом в алгоритмическом отношении языке Pascal, группа разработчиков решила создать инструментальное средство для работы на наследнике языке Pascal: ведь основные команды знакомы, имеется множество разработанных математических функций.Новейшие языки программированияОбычно новые языки появляются для решения специфических задач. IFrame служит созданию приложений «Вконтакте», Erlang - работе с серверной нагрузкой, NOSQL - созданию баз данных с нетипизированной архитектурой. В самом начале работа с новыми инструментами бывает затруднена отсутствием сопроводительной документации, однако в этом сокрыты и дополнительные плюсы: можно общаться с «последователями» языка, заработать имя в сообществе разработчиков, получать справочную информацию из первоисточника.

Оцените статью!

imguru.ru