Эволюция языков программирования Языки программирования




НазваниеЭволюция языков программирования Языки программирования
Дата конвертации22.02.2013
Размер445 b.
ТипПрезентации


Эволюция языков программирования

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

  • Уровни языков программирования

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

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


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

  • Для представления алгоритма в виде, понятном компьютеру, служат языки программирования - это искусственные языки.

  • Совокупность требований для записи команд образуют синтаксис языка, а смысл каждой команды – семантику языка.

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

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



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

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

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



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

  • В первое поколение входят языки, созданные в начале 50-х годов, когда первые компьютеры только появились на свет. Это был первый язык ассемблера, созданный по принципу « одна инструкция – одна строка».

  • Расцвет второго поколения языков программирования пришелся на конец 50-х – начало 60-х годов. Символический ассемблер, в котором появилось понятие переменной, стал первым полноценным языком программирования. Благодаря его возникновению заметно возросли скорость разработки и надежность программ.

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

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

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



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



Процедурное программирование

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



Языки процедурного программирования

    • Фортран создан в начале 50-х годов 20-го века для программирования научно-технических задач;
    • Кобол – создан в конце 60-х годов 20-го века для решения задач обработки больших объемов данных, хранящихся на различных носителях данных;
    • Алгол (1960 год) – это многоцелевой расширенный язык программирования. В нем впервые введены понятия «блочная структура программы» и «динамическое распределение памяти»;
    • BASIC – специализированный язык программирования для начинающих (середина 60 -х годов 20-го века). Характеризуется простотой освоения и наличием универсальных средств для решения научных, технических и экономических задач, а также задач, например, игровых.
    • Эти языки в какой – то мере были привязаны к конкретной архитектуре ЭВМ


Языки процедурного программирования

  • PL-1 - многоцелевой универсальный язык (1963-1966гг) хорошо приспособлен для исследования и планирования вычислительных процессов, моделирования, решения логических задач, разработки систем математического обеспечения;

  • Паскаль (PASCAL) (1968-1971гг). К его основным принципам можно отнести структурное программирование и программирование «сверху-вниз»;

  • АДА (1979 г) - назван в честь первой программистки Ады Лавлейс- дочери Байрона. Его отличает модульность конструкций;

  • СИ (начало 70-х годов). В СИ различия между выражениями и операторами сглажены и отсутствует понятие процедуры, а использование подпрограмм основано на понятии функции, которая может сочетать в себе возможности процедуры.



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

  • Функциональное программирование- это способ составления программ, в которых единственным действием является вызов функции. В нем не используется память, как место для хранения данных, а, следовательно, не используются промежуточные переменные, операторы присваивания и циклы. Программа, написанная на функциональном языке, представляет собой последовательность описания функций и выражений. Выражение вычисляется сведением сложного к простому. Все выражения записываются в виде списков. Первым языком стал язык Лисп (LISP, LIST Processing- обработка списков) создан в 1959г. Этот язык позволяет обрабатывать большие объемы текстовой информации.



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

  • Логическое программирование - это программирование в терминах логики. В 1973 году был создан язык искусственного интеллекта Пролог (PROLOG) (Programming in Logic). Программа на языке Пролог строится из последовательности фактов и правил, затем формулируется утверждение, которое Пролог пытается доказать с помощью правил. Язык сам ищет решение с помощью методов поиска и сопоставления, которые в нем заложены. Логические программы не отличаются высоким быстродействием, так как процесс их выполнения сводится к построению прямых и обратных цепочек рассуждений разнообразными методами поиска.



Языки программирования баз данных

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

  • создание, преобразование и удаление таблиц в БД;

  • поиск, отбор, сортировка по запросам пользователя;

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

  • Для чего был создан структурированный язык запросов SQL (Structured Query Language). SQL – это стандартный язык работы с реляционными базами данных.

  • Сегодня в мире ведущими производителями СУБД являются: Microsoft (SQL Server), IBM (DB2), Oracle, Software AG (Adabas), Informix и Sybase.

  • Практически в каждой СУБД имеется свой встроенный язык работы с БД: в Oracle - PL/SQL, в Informix – INFORMIX 4GL, в Adabas – Natural и т.д.



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

  • Языки программирования для компьютерных сетей являются интерпретируемыми. Интерпретаторы для них распространяются бесплатно, а сами программы – в исходных текстах. Такие языки называются скриптязыками.

  • Язык HTML (Hyper Text Markup Language) – универсальный язык разметки гипертекста, используемый для подготовки Web документов для Internet. Язык позволяет форматировать текст, добавлять графические образы, работать с таблицами и организовывать связь одного документа с другим с помощью механизма гиперссылок.

  • Язык Perl (80 г) содержит многочисленные функции работы со строками, массивами, всевозможные средства преобразования данных.

  • Язык PHP (1995-1997гг) обладает средствами доступа к БД и используется создателями динамических сайтов во всем мире.

  • Язык Tcl/Tk (конец 80-х годов) предназначен для работы с абстрактными не типизированными объектами и позволяет создавать программы с графическим интерфейсом.

  • Язык VRML (1994г) создан для организации виртуальных трехмерных интерфейсов в Интернете.

  • Язык XML. С 1996г идет работа над созданием универсального языка структуры документов. Может стать заменой языка HTML.



Вопрос 1

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

  • PHP

  • Ассемблер

  • C, C++

  • Java



Ответ на вопрос 1

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

  • PHP

  • Ассемблер

  • C, C++

  • Java



Вопрос 2

  • К какому типу языков относится язык Lisp:

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

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

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

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



Ответ на вопрос 2

  • К какому типу языков относится язык Lisp:

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

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

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

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



Вопрос 3

  • Декларативный (с точки зрения парадигмы) язык рассматривает программу как:

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


Ответ на вопрос 3

  • Декларативный (с точки зрения парадигмы) язык рассматривает программу как:

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


Вопрос 4

  • В языке Prolog при решении задач используются:

  • прямая цепочка логического вывода

  • конструктор основного класса программы

  • обратная цепочка логического вывода

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



Ответ на вопрос 4

  • В языке Prolog при решении задач используются:

  • прямая цепочка логического вывода

  • конструктор основного класса программы

  • обратная цепочка логического вывода

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



Вопрос 5

  • Языки программирования 2-го поколения характеризует:

  • система машинных команд конкретного компьютера

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

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

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



Ответ на вопрос 5

  • Языки программирования 2-го поколения характеризует:

  • система машинных команд конкретного компьютера

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

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

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



Вопрос 6

  • Какие виды программ не присущи языку программирования С:

  • процедуры

  • функции

  • модули

  • методы



Ответ на вопрос 5

  • Какие виды программ не присущи языку программирования С:

  • процедуры

  • функции

  • модули

  • методы



Вопрос 6

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

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

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

  • языки запросов к базам данных

  • логические языки



Ответ на вопрос 6

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

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

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

  • языки запросов к базам данных

  • логические языки



Похожие:

Эволюция языков программирования Языки программирования iconУрока: Дать основные понятия о языках программирования. Цель урока: Дать основные понятия о языках программирования
План урока: Основные сведения о языках программирования. Основные средства языков. Алфавит языков. Служебные слова. Структура программ....
Эволюция языков программирования Языки программирования iconЯзыки программирования высокого уровня Инна Исаева
Языки rad позволяют создавать различные графические элементы (кнопки, линейки прокрутки, флажки, радио кнопки и т д.)
Эволюция языков программирования Языки программирования iconCи – процедурный язык программирования. Cи – процедурный язык программирования
Си вытеснил Бейсик с позиции ведущего языка для программирования микрокомпьютеров
Эволюция языков программирования Языки программирования iconЯзык программирования машинного уровня «Паскаль» Центральное понятие программирования
Центральным понятием программирования является алгоритм. С него начинается работа над программой, а от качества алгоритма зависит...
Эволюция языков программирования Языки программирования iconЯзыки программирования Lecture Notes n 7 V. 02 by Boriss Misnevs
Мнемоническая запись команд и операндов (assembler сборщик) ld r5, price ld r6, tax
Эволюция языков программирования Языки программирования iconРешение задач математического программирования
Седловой точкой функции Лагранжа задачи математического программирования называется точка X*
Эволюция языков программирования Языки программирования iconГрафический метод решения задач математического программирования Общий вид задачи математического программирования
Указывает направление максимального возрастания функции f(x1, x2,…,xn) в точке X0=(x01, x02,…,x0n)
Эволюция языков программирования Языки программирования iconТип, имя и значение переменной. Переменные
В объектно-ориентированных языках программирования, и в частности в языке Visual Basic, переменные играют такую же важную роль, как...
Эволюция языков программирования Языки программирования iconФилософия. Net основные возможности. Net
Библиотека базовых классов, которая предлагает целостную объектную модель для всех языков программирования, поддерживающих. Net
Эволюция языков программирования Языки программирования iconСодержание лекции: Содержание лекции
Решение любой задачи математического программирования (в том числе нелинейного) можно свести к решению задачи нелинейного программирования...
Разместите кнопку на своём сайте:
hnu.docdat.com


База данных защищена авторским правом ©hnu.docdat.com 2012
обратиться к администрации
hnu.docdat.com
Главная страница