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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



Первые шаги автоматизации программирования. Программы для первых ЭВМ программисты писали на языках машинных команд, которые были ориентированы на конкретные машины и конкретных пользователей. Первыми «инструментами», которые экономили труд программистов, стали подпрограммы. В августе 1944 года для релейной машины Марк-I под руководством Грейс Хоппер (женщина-программист, морской офицер ВМФ США) была написана первая подпрограмма для вычисления SIN (X). В 1949 году Джон Моучли (один из создателей ЭВМ ENIAC) разработал систему Short Code, которую можно считать предшественницей языков программирования высокого уровня. Программист записывал решаемую задачу в виде математических формул, преобразовывал формулы в двухбуквенные коды. В дальнейшем специальная программа переводила эти коды в двоичный машинный код. Таким образом, Дж. Моучли разработал один из первых примитивных интерпретаторов. А в 1951 году Г. Хоппер создала первый компилятор А-0. Ею же впервые был введен этот термин.

Первые языки высокого уровня – языки процедурного программирования. Разработчики языка программирования (под руководством Г.Хоппер) поставили цель создать такой новый язык, который позволил бы программировать на языке, близком к обычному английскому.

Необходимость таких языков, приближенных к разговорному, Г. Хоппер связывала с тем, что область применения ЭВМ будет расширяться, в связи с чем будет расти и круг пользователей. По словам Г. Хоппер, следует оставить попытки «превратить их всех в математиков». В 1959 году был разработан язык COBOL (Common Business Oriented Language) (Кобол) – язык программирования высокого уровня для решения задач бизнеса. Консультантом при создании языка COBOL вновь выступила Г. Хоппер. В 1954 году публикуется сообщение о создании языка FORTRAN (FORmula TRANslation) (Фортран). Местом рождения языка стала штаб-квартира фирмы IBM в Нью-Йорке. Одним из главных разработчиков является Джон Бэкус. Он же стал автором НФБ (нормальная форма Бэкуса), которая используется для описания синтаксиса многих языков программирования.

В тот же период в европейских странах и в СССР популярным становится язык ALGOL (algorithmic language). Как и FORTRAN, он ориентировался на математические задачи. В нем была реализована передовая для того времени технология программирования – структурное программирование.

В 60-е – 70-е годы прошлого столетия стало появляться большое количество новых языков программирования, но не все из них выдержали испытание временем. К языкам-долгожителям следует отнести язык BASIC, разработанный в Дартмутском университете в 1964 году под руководством Джона Кемени и Томаса Курца. Наибольшее распространение BASIC получил на микро-ЭВМ и персональных компьютерах. В 1991 году появилась первая версия языка VISUAL BASIC.

Для первых языков программирования характерной чертой была предметная ориентация. В эпоху ЭВМ третьего поколения большое распространение получил язык PL/1 (Program Language/1), разработанный фирмой IBM. Это был первый язык, претендовавший на универсальность, т. е. на возможность решать любые задачи: вычислительные, обработки текстов, накопления и поиска информации. PL/1 оказался слишком сложным языком. Транслятор с него недостаточно оптимальный, содержащий ряд не выявленных ошибок. По этой причине этот язык не получил распространения. Однако линия на универсализацию языков была продолжена. Старые языки были модернизированы в универсальные варианты. Примером тому стал FORTRAN 77 программирования.

Языки структурного программирования. Значительным событием в истории языков программирования стало создание в 1971 году языка PASCAL. Его автором является Николаус Вирт, профессор из Швейцарии. Вирт назвал этот язык в честь французского математика и физика Блеза Паскаля, который в 1642 году сконструировал вычислительный механизм. Первоначально PASCAL создавался как язык для обучения. В нем ярко выражена структурная линия программирования. Широкое практическое применение язык получил с появлением персональных компьютеров в версии Turbo PASCAL. Язык программирования С (Си) был задуман как инструментальный язык для разработки операционных систем. Он создавался одновременно с операционной системой UNIX. Авторами этого языка и ОС UNIX являются американские программисты Денис Ричи и Кеннет Томпсон. Первоначально К. Томпсон начал писать ОС UNIX на языке FORTRAN. В дальнейшем был создан язык Си, и в 1973 году ядро операционной системы вместе с программами-утилитами было переписано на Си. Этот язык – структурный язык высокого уровня. В настоящее время он применяется для разработки не только операционных систем, но и трансляторов, системных и прикладных программ.

Языки объектно-ориентированного и визуального программирования. В последнее время одним из основных направлений в развитии программного обеспечения компьютера стал объектно-ориентированный подход. Под словом «объект» понимается структура, объединяющая в единое целое данные н программную реализацию алгоритмов их обработки. Используются объектно-ориентированные операционные системы (например, Windows), прикладные программы, а также системы объектно-ориентированного программирования (ООП).

Первым языком с элементами ООП был язык Симула-67. В Turbo PASCAL, начиная с версии 5.5, появились средства ООП. Итогом развития Turbo PASCAL в этом направлении стало создание фирмой Borland системы программирования DELPHI (Делфи). Использование этой системы, в частности, дает возможность легко и быстро программировать сложный графический интерфейс. Начиная с пятой версии (1997 год) язык VISUAL BASIC стал полностью объектно-ориентированным. По данным на конец 90-х годов прошлого столетия количество программистов, использующих для своих разработок VISUAL BASIC, не уступает числу сторонников DELPHI и VISUAL C++.

В 1985 году лабораторией Bell Labs (США) был разработан язык программирования C++ (СИ++). Этот язык является сегодня наиболее популярным среди языков объектно-ориентированного программирования. С его помощью возможно создание программных приложений, ориентированных на любые машины – от персональных до суперкомпьютеров. Создатель языка – Бьорн Страуструп.

К языкам объектно-ориентированного программирования относится и язык JAVA, созданный в 1995году под руководством Джеймса Гослинга группой инженеров компании Sun Microsystems. При его разработке была поставлена цель – создать простой язык, не требующий специального изучения. Язык JAVA был разработан так, чтобы быть максимально похожим на C++. JAVA является идеальным инструментом при создании приложений для Интернета.

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

1. Инкапсуляция – объединение в единой синтаксической конструкции данных и программной реализации алгоритмов их обработки, формируя таким образом новый тип данных – объект.

2. Наследование – определение объекта и его дальнейшее использование для построения иерархии порожденных объектов с возможностью для каждого порожденного объекта, относящегося к иерархии, доступа к коду и данным всех порождающих объектов.

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

 

Языки искусственного интеллекта. В 90-х годах прошлого столетия планировалось появление компьютеров пятого поколения, называемых машинами «искусственного интеллекта». В качестве основных языков программирования в этом, пока неосуществленном, проекте предполагалось использование языков искусственного интеллекта LISP и PROLOG.

Создателем языка LISP (1956–1959 гг.) является Джон Маккарти, которого называют отцом искусственного интеллекта. Именно он первым ввел термин «искусственный интеллект». Основное в языке LISP – понятие рекурсивно определенных функций. Доказано, что любой алгоритм может быть описан с помощью некоторого набора рекурсивных функций. Основные идеи этого языка были позже использованы в языке программирования для детей LOGO, разработанном в 70-е годы в Массачусетском технологическом институте под руководством Сэймура Пейперта. Подмножество языка LOGO, включающее команды для Черепашки, применяется при раннем обучении программированию.

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

 

Основные парадигмы программирования:

• процедурное программирование (Fortran, Basic, Cobol, Algol, Pascal, Ada, С, Logo, FoxPro);

• структурное программирование (Pascal, С);

• объектно-ориентированное программирование (Simula, Smalltalk, Object Pascal, C++, Java, C#);

• визуально-событийное программирование (Visual Basic, Delphi, Visual C++, Visual Java, Visual FoxPro);

• функциональное программирование (Lisp);

• логическое программирование (Prolog).

 

Рис. 3.4 Развитие технологии программирования

 

Отличия языков программирования ЭВМ V поколения:

• отказ от традиционных алгоритмических языков программирования (Фортран, Алгол и т. п.) в пользу декларативных;

• ориентация на задачи искусственного интеллекта с автоматическим поиском решения на основе логического вывода.

Развитие технологий программирования показано на рисунке 4.2.



Поделиться:


Последнее изменение этой страницы: 2016-09-20; просмотров: 540; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.149.255.162 (0.013 с.)