2 пара_Языки и системы программирования.pptx
- Количество слайдов: 51
Языки и системы программирования
История языков программирования Первые программы заключались в установке ключевых переключателей на передней панели вычислительного устройства
Машинный язык Программист задаёт команды, оперируя с ячейками памяти, полностью используя возможности машины
«Слова» на машинном языке называются инструкции, каждая из которых представляет собой одно элементарное действие для центрального процессора Например: считывание информации из ячейки памяти.
Каждая модель процессора имеет свой собственный набор машинных команд Понимает язык Процессор А Процессор В ( А совместим с В) В не распознаёт команды А Процессор В Процессор А Б не совместим с А
Язык программирования это формальная знаковая система, предназначенная для записи программ. Компилируемые Интерпретируемы е
Компилятор - переводит исходный текст программы на машинный язык сразу и целиком, создавая при этом отдельную исполняемую программу (Пример: форматы. exe, . com) Интерпретатор - выполняет исходный текст программы прямо во время её исполнения (Пример: Браузер как интерпретатор)
АССЕМБЛЕР (начало 50 -ых годов XX в. ). это символическое представление машинного языка. Он облегчает процесс программирования по сравнению с программированием в машинных кодах. Запись программы на данном языке будет уже гораздо меньше.
Уровни языков Низкий Высокий Машинный язык Ассемблер Языки близкие к естественным
Язык «высокого уровня» Это языки программирования, имитирующие естественные языки, обладающие укрупненными командами, ориентированными на решение прикладных содержательных задач
Достоинства: алфавит языка значительно шире машинного, что делает его гораздо более выразительным и существенно повышает наглядность и понятность текста; набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса; конструкции команд (операторов) отражают содержательные виды обработки данных и задаются в удобном для человека виде; используется аппарат переменных и действия с ними; поддерживается широкий набор типов данных.
Языки программирования высокого уровня являются машинно-независимыми требуют использования соответствующих программпереводчиков (трансляторов) для представления программы на языке машины, на которой она будет исполняться.
Фортран (англ. FORTRAN- FORmula TRANslator) Он был предназначен для научных и технических расчетов. Современный Фортран (Fortran 95 и Fortran 2003) приобрёл черты, необходимые для эффективного программирования для новых вычислительных архитектур; позволяет применять современные технологии программирования, в частности, ООП. Джон Бэкус
COBOL (1959) был предназначен в основном для коммерческих приложений (обрабатывал большие объемы нечисловых данных) – Common Business-Oriented Language) Язык решения экономических, бизнес задач. Грейс Хоппер
Алго л(в 60 -х гг. ) язык программирования, применяемый при составлении программ для решения научнотехнических задач. Был создан на смену Fortran-a, имел много функций, но по структуре был достаточно сложным.
Basic (1964 г. ) Создан как язык обучения программированию Мощный и универсальный язык (прост в использовании) Создан профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени
Алгоритмические языки программирования Язык Pascal (назван его создателем Никлаусом Виртом в честь великого физика Блеза Паскаля; 1970); Он является доработанным языком Algol – мощный язык для создания программ. Предназначен и для обучения программированию.
Язык Си (1971) позволяет быстро и эффективно создавать программный код Внешне похож на Pascal, был разработан для более узких целей. Си был создан для использования в операционной системе UNIX. С тех пор он был перенесён на многие другие операционные системы и стал одним из самых используемых языков программирования. Популярный язык для создания системного программного обеспечения. Его также часто используют для создания прикладных программ. Активно используется для обучения программированию. Код на Си можно легко писать на низком уровне абстракции, почти как на ассемблере.
Языки объектно-ориентированного программирования (90 -ые г. XX в. ) В основу этих языков положены программные объекты, которые объединяют данные и методы их обработки. В этих языках сохранялся алгоритмический стиль программирования. Для них были разработаны интегрированные среды программирования, позволяющие визуально конструировать графический интерфейс приложений
язык С++ (1983) – продолжение алгоритм. языка Си язык Object Pascal (1989) был создан на основе языка Pascal. После создания среды программирования – Delphi (1995) язык Visual Basic (1991) был создан корпорацией Microsoft на основе языка Qbasic (1975) для разработки приложений с графическим интерфейсом в среде ОС Windows.
С++ Высокая совместимость с языком С (открытие различных библиотек) поддерживаются различные стили и технологии программирования, включая традиционное директивное программирование, ООП, обобщенное программирование, метапрограммирование (шаблоны, макросы) Имеется возможность работы на низком уровне с памятью, адресами, портами Кроссплатформенность Эффективность
Java (в начале 90 -х гг. ) основан на языке С++. Для упрощения языка, были выброшены низкие возможности С++. Для создания программ используются интерпретаторы JVL (виртуальная java машина) Язык предназначен в основном для работы в компьютерных сетях
Языки программирования на платформе. NET. на языке Visual Basic. Net ( на основе Visual Basic) - 2003 г. ; на языке Visual C# (С-шарп) – на основе языков С++ и J – 2003 г. ; на языке Visual J# (J-шарп) – на основе Java и Java. Script – 2003 г. .
C# (Sharp) – (1998— 2001 гг. ) основной язык разработки приложений для платформы Microsoft. NET. Компилятор с C# входит в стандартную установку самой. NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств. C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Данный язык разбатывался как язык программирования прикладного уровня, он часто используется для создания сетевых приложений.
Другие языки высокого уровня: Языки программирования Баз данных – язык структурированных запросов SQL Языки программирования для Интернет – html (от англ. Hyper. Text Markup Language — «язык разметки гипертекста» ). Большинство веб-страниц создаются при помощи языка HTML (или XHTML).
Язык Perl Основной особенностью языка считаются его богатые возможности для работы с текстом (обработка больших текстовых файлов в сети), в том числе работа с регулярными выражениями, встроенная в синтаксис. Перл унаследовал много свойств от языков Си, AWK, скриптовых языков командных оболочек UNIX.
Язык PHP скриптовый язык программирования общего назначения, интенсивно применяемый для разработки вебприложений. Был создан на основе языка Perl, добавлены возможности работы с базой данных. На этом языке создавали динамические сайты (с регулярным обновлением).
Язык Java. Script обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам
Язык VRML (англ. Virtual Reality Modeling Language — язык моделирования виртуальной реальности) – используется для демонстрации трёхмерной интерактивной векторной графики, чаще всего используется в WWW
Язык XML (англ. e. Xtensible Markup Language — расширяемый язык разметки) разрабытывался как язык с простым формальным синтаксисом, удобный для создания и обработки документов программами и одновременно удобный для чтения и создания документов человеком, с подчёркиванием нацеленности на использование в интернете. Язык является расширяемым.
Язык PL/1 ( 1964 г. ) создан для научных, инженерных и бизнес-ориентированных вычислений. Данный язык мощнее чем Pascal и С, но сам он сложнее по своей структуре и синтаксису
Язык LISP – ориентирован на работу со структурой данных в форме списка. Язык Prolog (70 -е гг. ) – создан для решения логических задач. Результатом работы таких задач являются цепочка логических выражений. Язык Ada (созданный в 1979— 1980 годах) единый язык программирования для встроенных систем (то есть систем управления автоматизированными комплексами, функционирующими в реальном времени).
Классификация языков программирования
Классическое операциональное и/или процедурное программирование требует от программиста детального описания того, как решать задачу. При этом ожидаемые свойства результата обычно не указываются. Основные понятия языков этих групп оператор и данные. При процедурном подходе операторы объединяются в группы - процедуры.
Непроцедурное программирование Объектно-ориентированный язык создает окружение в виде множества независимых объектов. Каждый объект ведет себя подобно отдельному компьютеру, их можно использовать для решения задач как «черные ящики» , не вникая во внутренние механизмы их функционирования.
При использовании декларативного языка программист указывает исходные информационные структуры, взаимосвязи между ними и то, какими свойствами должен обладать результат. При этом процедуру его получения ( «алгоритм» ) программист не строит. В этих языках отсутствует понятие «оператор» ( «команда» ).
Системой программирования называется система программных средств, используемая программистами для разработки программного обеспечения (ПО)
Классификация систем программирования По набору входных языков различают: Одноязыковы е Многоязыковы е
По структуре, уровню формализации входного языка и целевому назначению различают системы программирования: машинноориентированн ые машиннонезависимые
Средства создания программ: Текстовый редактор. Программа-компилятор Редактор связей Отладчик Библиотеки
Современные системы программирования BASIC: Microsoft Visual Basic – система визуального программирования
Pascal: Borland Delphi, Turbo Pascal
C ++: Microsoft Visual C++, C++ Builder
Java: Borland JBuilder, Symantec Café
C#: Microsoft Visual Studio. NET, Borland C# Builder
Структура языков программирования Алфавит - фиксированный для данного языка набор основных символов, допускаемых для составления текста программы на этом языке Синтаксис - система правил, определяющих допустимые конструкции языка программирования из букв алфавита Семантика - система правил однозначного толкования отдельных языковых конструкций, позволяющих воспроизвести процесс обработки данных
Из символов алфавита языка программирования составляются ЛЕКСЕМЫ (слова). К лексемам относятся специальные слова: Зарезервированные – их смысл и назначение постоянен (операторы) Ключевые – это слова, назначение которых может меняться (имена переменных)
Оператор – это слово или несколько слов, которые описывает законченное действие. Переменные – это несколько физических ячеек оперативной памяти, которые соответствуют первой ячейке (абстрактная ячейка) Свойства переменных: Имя переменных (символы, цифры, максимальная длина имени) Значение переменной Тип переменной Адрес переменной Область видимости (локальные или глобальные)
Константы – это ячейки в памяти компьютера, значение которых определяется и не изменяется. Они делятся на буквальные и именованные: Буквальные – воспринимаются так, как они выглядят. Именованные – имя константы отличается от своего значения (p: =3, 14) Операторы: управляющие (например: управляют входом программы) и декларативные (используются в описании объектов программы).
Домашняя работа: Прочитать более подробно историю появления и развития основных языков программирования Законспектировать кратко информацию о 1 -2 современных языках программирования (как возникли, когда, где используются)