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

Содержание

Слайд 2

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

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

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

- это искусственные языки.
Совокупность требований для записи команд образуют синтаксис языка, а смысл каждой команды – семантику языка.
Нарушение формы записи программы приводят к синтаксической ошибке, а правильно написанная программа, но не отвечающая алгоритму, приводит к семантической (логической) ошибке.
Процесс поиска ошибок в программе называют тестированием программы, процесс устранения ошибок – отладкой программы.
Слайд 3

Уровни языков программирования Если язык программирования ориентирован на конкретный тип процессора

Уровни языков программирования
Если язык программирования ориентирован на конкретный тип процессора и

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

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

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

годов, когда первые компьютеры только появились на свет. Это был первый язык ассемблера, созданный по принципу « одна инструкция – одна строка».
Расцвет второго поколения языков программирования пришелся на конец 50-х – начало 60-х годов. Символический ассемблер, в котором появилось понятие переменной, стал первым полноценным языком программирования. Благодаря его возникновению заметно возросли скорость разработки и надежность программ.
В 60-е годы появились универсальные языки программирования высокого уровня третьего поколения, обладающие относительной простотой, независимостью от конкретного компьютера и возможностью использования мощных синтаксических конструкций, что резко повысило производительность труда программистов. Подавляющее большинство языков этого поколения успешно применяется и сегодня.
Период языков четвертого поколения начинается с начала 70-х годов и по настоящее время. Эти языки обычно ориентированы на специализированные области применения, где используются проблемно-ориентированные языки, оперирующие конкретными понятиями узкой предметной области. Как правило, в эти языки встраиваются мощные операторы, позволяющие одной строкой описать такую функциональность, для реализации которой в языках младших поколений потребовались бы тысячи строк исходного кода.
Рождение языков пятого поколения произошло в середине 90-х годов. К ним относятся также системы автоматического создания прикладных программ с помощью визуальных средств разработки. Главная идея - возможность автоматического формирования результирующего текста на универсальных языках программирования. Инструкции же вводятся в компьютер в максимально наглядном виде с помощью методов, наиболее удобных для человека, не знакомого с программированием.
Слайд 5

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

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

Слайд 6

Процедурное программирование - есть отражение фон Неймановской архитектуры компьютера. Программа представляет

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

- есть отражение фон Неймановской архитектуры компьютера. Программа представляет

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

Языки процедурного программирования Фортран создан в начале 50-х годов 20-го века

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

Фортран создан в начале 50-х годов 20-го века для

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

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

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

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

исследования и планирования вычислительных процессов, моделирования, решения логических задач, разработки систем математического обеспечения;
Паскаль (PASCAL) (1968-1971гг). К его основным принципам можно отнести структурное программирование и программирование «сверху-вниз»;
АДА (1979 г) - назван в честь первой программистки Ады Лавлейс- дочери Байрона. Его отличает модульность конструкций;
СИ (начало 70-х годов). В СИ различия между выражениями и операторами сглажены и отсутствует понятие процедуры, а использование подпрограмм основано на понятии функции, которая может сочетать в себе возможности процедуры.
Слайд 9

Декларативные языки программирования Функциональное программирование- это способ составления программ, в которых

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

Функциональное программирование- это способ составления программ, в которых

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

Декларативные языки программирования Логическое программирование - это программирование в терминах логики.

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

Логическое программирование - это программирование в терминах логики. В

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

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

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

прежде всего своим функциональным назначением. При работе с базами данных выполняются следующие операции:
создание, преобразование и удаление таблиц в БД;
поиск, отбор, сортировка по запросам пользователя;
добавление новых записей и модификация существующих, удаление записей и др.
Для чего был создан структурированный язык запросов SQL (Structured Query Language). SQL – это стандартный язык работы с реляционными базами данных.
Сегодня в мире ведущими производителями СУБД являются: Microsoft (SQL Server), IBM (DB2), Oracle, Software AG (Adabas), Informix и Sybase.
Практически в каждой СУБД имеется свой встроенный язык работы с БД: в Oracle - PL/SQL, в Informix – INFORMIX 4GL, в Adabas – Natural и т.д.
Слайд 12

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

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

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

Интерпретаторы для них распространяются бесплатно, а сами программы – в исходных текстах. Такие языки называются скрипт – языками.
Язык HTML (Hyper Text Markup Language) – универсальный язык разметки гипертекста, используемый для подготовки Web документов для Internet. Язык позволяет форматировать текст, добавлять графические образы, работать с таблицами и организовывать связь одного документа с другим с помощью механизма гиперссылок.
Язык Perl (80 г) содержит многочисленные функции работы со строками, массивами, всевозможные средства преобразования данных.
Язык PHP (1995-1997гг) обладает средствами доступа к БД и используется создателями динамических сайтов во всем мире.
Язык Tcl/Tk (конец 80-х годов) предназначен для работы с абстрактными не типизированными объектами и позволяет создавать программы с графическим интерфейсом.
Язык VRML (1994г) создан для организации виртуальных трехмерных интерфейсов в Интернете.
Язык XML. С 1996г идет работа над созданием универсального языка структуры документов. Может стать заменой языка HTML.
Слайд 13

Вопрос 1 Какие из перечисленных языков подходят для программирования: PHP Ассемблер C, C++ Java

Вопрос 1

Какие из перечисленных языков подходят для программирования:
PHP
Ассемблер
C,

C++
Java
Слайд 14

Ответ на вопрос 1 Какие из перечисленных языков подходят для программирования: PHP Ассемблер C, C++ Java

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

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


Ассемблер
C, C++
Java
Слайд 15

Вопрос 2 К какому типу языков относится язык Lisp: язык системного

Вопрос 2

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


язык структурного программирования
язык функционального программирования
язык логического программирования
Слайд 16

Ответ на вопрос 2 К какому типу языков относится язык Lisp:

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

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

системного программирования
язык структурного программирования
язык функционального программирования
язык логического программирования
Слайд 17

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

Вопрос 3

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

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

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

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

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

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

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

Вопрос 4

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

вывода
конструктор основного класса программы
обратная цепочка логического вывода
основная функция программы
Слайд 20

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

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

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

цепочка логического вывода
конструктор основного класса программы
обратная цепочка логического вывода
основная функция программы
Слайд 21

Вопрос 5 Языки программирования 2-го поколения характеризует: система машинных команд конкретного

Вопрос 5

Языки программирования 2-го поколения характеризует:
система машинных команд конкретного компьютера


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

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

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

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

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

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

Вопрос 6

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


модули
методы
Слайд 24

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

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

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


процедуры
функции
модули
методы
Слайд 25

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

Вопрос 6

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

сценариев
языки запросов к базам данных
логические языки