- •Кафедра «Информационные технологии»
- •Лекция 4
- •Приоритет программного обеспечения над аппаратным обеспечением
- •Классификация программного обеспечения
- •Общее ПО - рассчитано на широкий круг
- •Рост доли общего ПО
- •Развитие ПО - 1950-е годы: библиотеки стандартных программ и ассемблеры
- •Развитие ПО - 1950-е годы: библиотеки стандартных программ и ассемблеры
- •Развитие ПО - 1960-е годы: языки и системы программирования, пакетные ОС
- •Развитие ПО - 1970-е годы: диалоговые ОС, СУБД
- •Развитие ПО - 1980-е годы: настольные ППП, CASE-технологии
- •Развитие ПО - 1990-е годы: компьютерные сети и мультимедиа
- •Языки и системы программирования. Предыстория
- •Языки и системы программирования. Предыстория
- •Фрагмент простейшей программы на Фортране
- •Особенности языка Фортран
- •Языки и системы программирования
- •Основные идеи создания Basic
- •Пример программы на Basic
- •Пример программы на Basic
- •Простой и удобный Бэйсик в конце 1960-х годов был
- •Особенности современного Basic
- •5) Cobol – язык для бухгалтеров
- •Фрагмент программы на Коболе
- •Некоторые особенности языка Cobol
- •6) Algol, его влияние на языки
- •Пример программы на Algol
- •Пример программы на Algol
- •7) Pascal и его потомки
- •Внешний вид программы на базовом Паскале почти неотличим от «алгольного»:
- •«Второе рождение» языка Паскаль - 1984 г., Филипп Кан, доработал Паскаль для использования
- •Язык Ada - еще один «потомок» Паскаля
- •8) «Суперязык» PL/1
- •8) «Суперязык» PL/1
- •Пример простейшей программы на PL/1
- •Несмотря на теоретическое несовершенство,
- •9) Simula и Smalltalk – «объектная»
- •Все известные до Smalltalk языки основывались на концепции «данные-процедуры», т. е. были
- •Для общения с пользователем в Smalltalk были впервые применены особые графические объекты —
- •Пример программы на Smalltalk
- •Роль Smalltalk
- •10) С — язык для профессионалов ( )
- •10) С — язык для профессионалов ( )
- •Пример - программа сортировки пяти чисел на
- •11) Объектно-ориентированные
- •Java
- •Требования к Java изначально были очень высокими – язык должен быть:
- •Программы на Java (апплеты, дословно «приложеньица») выполняются в два этапа:
- •12) Lisp — инструмент функционального программирования
- •Пример - программа вычисления среднего
- •LISP
- •«Потомки» LISP
- •Использование «потомков» LISP
- •13) Prolog — «несбывшаяся мечта»
- •Примеры программ на языке Prolog
- •Примеры программ на языке Prolog
- •«Генеалогическое дерево» языков программирования высокого уровня
- •Выводы по развитию ПО
- •Выводы по развитию ПО
- •Выводы по развитию ПО
- •Выводы по развитию ПО
- •Выводы по развитию ПО
Простой и удобный Бэйсик в конце 1960-х годов был
реализован на нескольких моделях мэйнфреймов и мини- ЭВМ. Благодаря этому языку многие тысячи молодых людей приобщились к программированию. Среди них - школьники из г. Сиэтл (США), будущие основатели фирмы Microsoft Билл Гейтс (р. 1955) и Пол Аллен (р. 1954).
Особенности современного Basic
•«Удав» - «проглатывает и переваривает» все новые идеи в программировании. От Алгола и Паскаля - современный гибкий синтаксис; от Smalltalk — объекты.
•Восприняв визуальную CASE-оболочку, Бэйсик сам стал источником идей для визуальных систем программирования. Вслед за Visual Basic появились Delphi, Visual FoxPro, Visual C++ и др.
•Системы программирования на Бэйсике долго развивались только как интерпретаторы, что ограничивало его применение. В последнее
время - появились оптимизирующие компиляторы, предоставляющие полноценную
среду программирования, сравнимую с Delphi,
Visual C.
22
5) Cobol – язык для бухгалтеров
Проблема Basic - мало пригоден для
экономических, бухгалтерских расчетов. Там нет длинных формул, зато есть сложные структуры данных, которые Basic «не воспринимает».
Инициатива Грейс Хоппер, рабочая группа CODASYL - Conference on Data Systems Languages, которая предложила проект языка Cobol -
COmmon Business Oriented Language - Общий язык, ориентированный на бизнес.
23
Фрагмент программы на Коболе
1030-1070 «привязка»
к оборудованию
1100-1150 описание двухуровневой структуры
внешних записей
Некоторые особенности языка Cobol
•«привязка» к оборудованию
•возможность описания сложных (иерархических) структур данных
•многословный раздел процедур (язык максимально приближен к обычному английскому языку)
Кобол широко распространен в США. Наряду с Фортраном стал одним из «великих» языков (существует уже 40 лет и «не думает» сдавать
позиции). По оценкам, на нем до сих пор пишется
не менее 50% коммерческих программ25 .
6) Algol, его влияние на языки
программирования
Algol (ALGOrithmic Language) - Algol-58, 60 (1958-60 гг., Европа), обновление - Algol-68. «Революция» в языках программирования, т. к.
создавался с учетом теории.
Основные особенности языка
•Впервые строгая формализация: для описания синтаксиса предложили форму задания правил синтаксиса, ставшую стандартом для всех языков.
•«Навели порядок» с типами данных и блочной структурой программ, появились обязательные описания данных и процедур в начале блоков, разделители операторов в виде точки с запятой. В целом, текст программы пробрел современный вид.
26
• В язык введена возможность рекурсии.
Пример программы на Algol
Что делает эта программа??? ( )
Пример программы на Algol
(вычисление среднего арифметического одномерного массива чисел)
7) Pascal и его потомки
Член комитета по Алголу-68 Никлаус Вирт был против принятия переусложненного стандарта. Когда с ним не посчитались, он в знак протеста в 1971 г. разработал новый алголоподобный язык, простой и ясный, предназначенный прежде всего для обучения студентов. В честь изобретателя первой вычислительной машины язык был назван Паскаль.
29