Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsia_6_Po_Yap_Dlya_Gr_441.docx
Скачиваний:
6
Добавлен:
15.04.2015
Размер:
130.17 Кб
Скачать

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

С появлением машин второго поколения возникла потребность создания языков, целиком ориентированных на особенности задач и не зависящих от конкретной машины. Символом второго поколения ЭВМ стали языки программирования высокого уровня. Их развитие все в большей степени определялосьспецификой решаемых задач, а не особенностями машин. некоторые из этих языки назвали алгоритмическими языками (языки записи алгоритмов).

Одним из первых и наиболее удачных языков такого рода стал Фортран(Formula Translation), разработанный в фирме IBM в 1954-1957 г.г. группой разработчиков во главе с Джоном Бэкусом. Языки высокого уровня вначале быливстречены с недоверием. Считалось, что они не позволят добиться тойэффективностивыполнения программ, которую давали машинные коды.FORTRANпоказал, что это не так. Язык Фортран не только просуществовал до наших дней, но и достаточно распространен (VisualFortran). Среди причин такого долголетия можно отметить простую структуру как самого Фортрана, так и предназначенных для него трансляторов, а также большой объем библиотек исходных текстов уже решенных задач.

Вскоре после создания Фортрана появился (в Европе) язык Алгол(Algorithmic Language), созданный на основе широкого международного сотрудничества. В 1960 г. было опубликовано официальное сообщение об алгоритмическом языке, названном Алгол-60. Алгол создавался после разработки и практического применения Фортрана, поэтому характеризуется как введением новых конструкций, так и обобщением понятий, имеющихся в Фортране. На Алголе стали публиковаться описания алгоритмов (Библиотека алгоритмов - у нас в стране).

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

Кобол - экономические расчеты, Снобол - обработка строк, Симула-67 - моделирование

отвечающие нуждам специфичных направлений науки и техники.

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

- ALGOL 68(оказался излишне громоздким и не очень удобным)

- PL/1(Programming Language/1 — язык программирования один) создан фирмой IBM в 1964 г. Он основывался (взял основные черты) на языках Фортран, Кобол, Алгола и других языков. Был очень популярен на больших ЭВМ (до появления ПЭВМ) во всем мире (и в СССР тоже).

В 1971 г. Никлаусом Виртом был предложен алгоритмический язык Паскаль(Pascal), который предназначалсядля обучения студентовосновам науки о вычислительных машинах, системах и информацион­ных технологиях. Язык Паскаль является преемником Алгола-60, он имеет конструкции, аналогичные существующим в PL/1 и Алголе-68, однако Паскаль более лаконичен. Язык Паскаль способствовал внедрению структурного программирования как современной технологии программирования, основанной на пошаговом построении программы, состоящей из небольших четко определенных процедур.

Язык Паскаль в оригинальной авторской версии не содержал средств раздельной компиляции — модулей, разнообразных числовых типов, строк переменной длины и многого из того, что добавлено в известные реализации. Вследствие этого Н.Вирт предложил языкМодула-2, который должен был заменить Паскаль, устранив основное его ограничение — отсутствие модульности. Известно, что Модула-2 использовалась и используется в проектах, где важнейшую роль играет надежность. Средства межмодульного контроля Модулы-2 заметно совершеннее аналогичных возможностей Паскаля и C.

Язык Оберонбыл разработан Н. Виртом в 1987 г. Он представляет собой существенно упрощенный синтаксически вариант Модулы-2, в который добавлены расширяемые записи — основноймеханизм ООП. Язык необычайно прост, но при этом сохраняет универсальность и в функциональном отношении не уступает другим языкам. В 1992 г. Н. Виртом были приняты расширения Оберона, предложенные Ханспетером Мёссенбёком. В язык введены аналоги виртуальных методов в других языках. Новая версия получила название Оберон-2. Удивительно, но Оберон-2 оказался проще Оберона, расширением которого является.

В свою очередь популярность Паскаля еще более возросла с массовым распространением персональных компьюте­ров и выпуском фирмой Borlandсреды разра­боткиTurbo Pascal. Компилятор Турбо-Паскаль, разработанный Андерсом Хейльсбергом, был выпущен в продажу фирмой Borland в 1983 г. (версия 1.0). Эта версия уже содержала расширения языка, хотя и небольшие. В последующих выпусках расширений становилось все больше: встроенная графика, модули, средства объектно-ориентированного программирования (ООП) и т.д. Начиная с версии 7.0, язык стал называться Borland Паскаль.

Borland Delphi 1.0 (1995) - 16-разрядная

Borland Delphi 2.0 (1996) - 32-разрядная

Borland Delphi 7 (2001) - самая популярная

CodeGear Delphi 2007

Embarcadero Delphi 2009 - 2014 (XE4)

Бесплатные варианты - Lazarus (на базе Free

Pascal) иTurboDelphi(2006 г. - появилась, 2008 г. - закрыта).

Kylix3 (2002 г.) - последняя

«Наследником» TurboPascalстала среда программирования (и язык)Delphi— систе­ма быстрой разработки приложений дляMicrosoftWindows(RADилиRapidApplicationDevelopment) — иKylix— система быстрой разработки приложений дляXWindowSystemв операционной системеUNIX. Развитием Паскаля стала вBorlandPascalиDelphiобъектно-ориентированная версия Паскаля - Объектный Паскаль (1984 г.). Объектный Паскаль (вDelhi-ObjectPascal2.0) по сравнению со стандартным Паскалем содержит очень много синтаксических расширений. В результате из простого и изящного Паскаля получился язык, приближающийся по сложности к языку Ада.

Язык Ада((Ada-83 иAda-95), созданный какофициальный язык программирования американских военныхбыл такжесоздан на основе языка Паскальв конце 70-х годов. Язык назван так по имени первой женщины-программиста Ады Лавлейс. Это существенно структурированный язык, особенно он подходитдля разработки систем реального времени. Однако язык Ада слишком громоздкий, многословный и не предоставляет программисту достаточной свободы. По синтаксическойсложностион до сихпор не превзойден ни одним из языков.

Ada C

Pascal Modula (Modula-2) C++

Oberon (Oberon-2 и 3) Java C#

Turbo Pascal (Borland Pascal)

Object Pascal (Delphi)

Почти одновременно с языком Pascalпоявилсяязык С, предложенный Денисом Ритчи в начале 70-х годов. Он задумывался как язык сравнительно низкого уровня в том смысле, что язык C достаточно полно отражает возможности современных компьютеров, позволяя писать весьма эффективные программы, не прибегая к языкам ассемблера. Он использовался для написания значительной части ОСUnix. Используется как язык системного программирования и как язык программирования вычислений. Не накладывая на программиста особых ограничений (в отличие от Паскаля), он дает возможность для разнообразных трюков, чем тоже многим импонирует.

На ос­нове языка С был создан объектно-ориентированный язык C++(1986 г.). Объектно-ориентированный язык C++ предложил Бьярн Страуструп (жаргон - Дохлый Страус) с первоначальным названием «Си с классами». Название отражает тот факт, что C++ является надмножеством языка C. Язык C++, по ряду оценок, сложнее C вдвое. В настоящее время это, без преувеличения, язык номер один в мире для профессиональных программистов, поскольку он перенял преимущества и популярность C и добавил мощные средства написания объектно-ориентированных программ. Его реализации поддерживаются на всех аппаратно-программных платформах, в отличие от Паскаля, который широко распространен лишь на платформе IBM PC.

Язык С++ в свою очередь, дал жизньпопулярному и широко используемому объектно-ориентированному языкуJava(в английском произношении — Джава), предложенному Джеймсом Гослингом (фирма Sun Microsystems - ее купилаOracle) в 1995 г. Основная особенность Java — межплат¬форменная переносимость приложений, благодаря чему язык широко используется для написания приложений для Internet (дляWeb-программирования). Java — очень сложный синтаксически язык. Его официальное описание — 700-страничный документ — насыщен многословными и громоздкими определениями. Несмотря на эту сложность, в Java есть всего две существенные вещи, которых нет, например, в Обероне: встроеннаямногопоточностьиобработка исключений.

Ответом фирмы Microsoftна рост популярностиJavaсталязык C#(Си Шарп) (2000 г.).

В целом, к настоящему моменту известно от 2-х до 3-х тысяч языков программирования, из них около 100 объектных и объектно-ориен¬ти¬ро-ван¬ных.

6. Подходы к разработке программ(парадигмы программирования)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]