Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Большинство современных коммерческих программных систем больше и существенно сложнее, чем были их предшественники даже несколько лет тому назад. Этот рост сложности вызвал большое число прикладных исследований по методологии проектирования, особенно, по декомпозиции, абстрагированию и иерархиям. Создание более выразительных языков программирования пополнило достижения в этой области. Возникла тенденция перехода от языков, указывающих компьютеру, что делать (императивные языки), к языкам, описывающим ключевые абстракции проблемной области (декларативные языки).
Вегнер сгруппировал некоторые из наиболее известных языков высокого уровня в четыре поколения в зависимости от того, какие языковые конструкции впервые в них появились:
Первое поколение (1954-1958)
FORTRAN I | Математические формулы |
ALGOL-58 | Математические формулы |
Flowmatic | Математические формулы |
IPL V | Математические формулы |
Второе поколение (1959-1961)
FORTRAN II | Подпрограммы, раздельная компиляция |
ALGOL-60 | Блочная структура, типы данных |
COBOL | Описание данных, работа с файлами |
Lisp | Обработка списков, указатели, сборка мусора |
Третье поколение(1962-1970)
PL/I | FORTRAN+ALGOL+COBOL |
ALGOL-68 | Более строгий приемник ALGOL-60 |
Pascal | Более простой приемник ALGOL-60 |
Simula | Классы, абстрактные данные |
Потерянное поколение (1970-1980)
В каждом следующем поколении менялись поддерживаемые языками механизмы абстракции. Языки первого поколения ориентировались на научно-инженерные применения, и словарь этой предметной области был почти исключительно математическим. Такие языки, как FORTRAN I, были созданы для упрощения программирования математических формул, чтобы освободить программиста от трудностей ассемблера и машинного кода. Первое поколение языков высокого уровня было шагом, приближающим программирование к предметной области и удаляющим от конкретной машины. Во втором поколении языков основной тенденцией стало развитие алгоритмических абстракций. В это время мощность компьютеров быстро росла, а компьютерная индустрия позволила расширить области их применения, особенно в бизнесе. Главной задачей стало инструктировать машину, что делать: сначала прочти эти анкеты сотрудников, затем отсортируй их и выведи результаты на печать. Это было еще одним шагом к предметной области и от конкретной машины. В конце 60-х годов с появлением транзисторов, а затем интегральных схем, стоимость компьютеров резко снизилась, а их производительность росла почти экспоненциально. Появилась возможность решать все более сложные задачи, но это требовало умения обрабатывать самые разнообразные типы данных. Такие языки как ALGOL-68 и затем Pascal стали поддерживать абстракцию данных. Программисты смогли описывать свои собственные типы данных. Это стало еще одним шагом к предметной области и от привязки к конкретной машине.
Дата публикования: 2015-11-01; Прочитано: 1274 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!