ИСТОРИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ, ОСНОВНЫЕ ТЕМЫ:
современные языки объектно-ориентированного и визуального программирования.
Первые шаги автоматизации программирования
Программы для первых ЭВМ программисты писали на языках машинных команд. Это очень трудоемкий и длительный процесс. Проходило значительное время между началом составления программы и
Первыми «инструментами», которые экономили труд программистов, стали подпрограммы. В августе 1944 года для релейной машины «Марк-I» под руководством Грейс Хоппер (женщина-программист, морской офицер ВМФ США) была написана первая подпрограмма для вычисления sinx.
Не одну Грейс Хоппер волновала проблема облегчения труда программистов. В 1949 году Джон Моучли (один из создателей ЭВМ ENIAC) разработал систему Short Code, которую можно считать предшественницей языков программирования высокого уровня. Программист записывал решаемую задачу в виде математических формул, преобразовывал формулы в двухбуквенные коды. В дальнейшем специальная программа переводила эти коды в двоичный машинный код. Таким образом, Дж. Моучли разработал один из первых примитивных интерпретаторов. А в 1951 году Г. Хоппер создала первый компилятор А-0. Ею же впервые был введен этот термин.
Первые языки высокого уровня: Кобол и Фортран
В 50-е годы прошлого века группа под руководством Г. Хоппер приступила к разработке нового языка и компилятора В-0. Новый язык позволил бы программировать на языке, близком к обычному английскому. Разработчики языка выбрали около 30 английских слов, для распознавания которых Г. Хоппер придумала способ, сохранившийся в операторах будущих языков программирования: каждое слово содержит неповторимую комбинацию из первой и третьей букв. Благодаря этому компилятор при создании машинного кода программы может игнорировать все остальные буквы в слове.
Необходимость появления такой системы, язык которой приближен к разговорному, Г. Хоппер связывала с тем, что область применения ЭВМ будут расширяться, в связи с чем будет расти и круг пользователей. По словам Г. Хоппер, следует оставить попытки «превратить их всех в математиков».
Разработка текстового редактора для русскоязычного интерпретатора ...
... программ. 1. Наименование работы Работа выполняется в рамках дипломного проекта «Разработка текстового редактора для русскоязычного интерпретатора языка программирования». 2. Основание для разработки 2.1. Основанием для данной работы служит задание на дипломное ... ГОСТ 19.502-78; Руководство системному программисту ГОСТ 19.503-79; Руководство программиста ГОСТ 19.504-79; Руководство оператору ГОСТ ...
В 1958 году система В-0 получила название FLOW-MATIC и была ориентирована на обработку коммерческих данных. В 1959 году был разработан язык COBOL (Common Business Oriented Language) (Кобол)- машинно независимый язык программирования высокого уровня для решения задач бизнеса. Одна и та же программа, написанная на машинно независимом языке, может быть выполнена на ЭВМ разных типов, оснащенных соответствующим транслятором с этого языка. Консультантом при создании языка COBOL вновь выступила Г. Хоппер.
В 1954 году публикуется сообщение о создании языка FORTRAN (FORmula TRANslation) (Фортран).
Местом рождения языка стала штаб-квартира фирмы IBM в Нью-Йорке. Одним из главных разработчиков является Джон Бэкус. Он же стал автором НФБ (нормальная форма Бэкуса), которая используется для описания синтаксиса многих языков программирования .
В тот же период в европейских странах и в СССР популярным становится язык ALGOL. Как и FORTRAN, он ориентировался на математические задачи. В нем была реализована передовая для того времени технология программирования — структурное программирование.
Большое количество новых языков стало появляться в 60-е, 70-е годы прошлого столетия, но не все из них выдержали испытание временем. К языкам-долгожителям следует отнести язык BASIC, разработанный в Дартмутском университете в 1964 году под руководством Джона Кемени и Томаса Курца. По замыслу авторов, это простой язык, легко изучаемый, предназначенный для программирования несложных расчетных задач. Наибольшее распространение BASIC получил на микро-ЭВМ и персональных компьютерах. Однако первоначально этот язык был неструктурным и с этой точки зрения плохо подходил для обучения качественному программированию. В 1985 году была создана версия языка True BASIC, которая по мнению разработчиков была совершеннее, чем PASCAL. В 1991 году появилась первая версия языка VISUAL BASIC.
Языки процедурного программирования
Для первых языков программирования характерной чертой была предметная ориентация. Это значит, что каждый язык предназначался для решения какого-то определенного класса задач. COBOL был ориентирован на решение задач бизнеса, FORTRAN — на проведение инженерных и научных расчетов. В эпоху ЭВМ третьего поколения большое
Значительным событием в истории языков программирования стало создание в 1971 году языка pascal. Его автором является Никлаус Вирт, профессор из Швейцарии. Вирт назвал этот язык в честь французского математика и физика Блэза Паскаля, который в 1642 году сконструировал вычислительный механизм. Первоначально PASCAL создавался как язык для обучения. В нем ярко выражена структурная линия программирования. Широкое практическое применение язык получил с появлением персональных компьютеров в версии Turbo PASCAL.
«Разработка методической поддержки базового курса информатики ...
... Рис. 1. Общая классификация языков программирования. В начале 80-х годов Паскаль еще более упрочил свои позиции с появлением трансляторов MS-Pascal и Turbo Pascal для ПЭВМ. С этого ... презентации, тестовые и индивидуальные задания для изучения основ программирования в базовом курсе информатики. Создать сайт учителя. Структура дипломной работы. конспекты уроков по темам, в которых и зложение ...
Язык программирования С («Си») был задуман как инструментальный язык для разработки операционных систем. Он создавался одновременно с операционной системой UNIX. Авторами этого языка и ОС UNIX являются американские программисты Деннис Ричи и Кеннет Томпсон. Первоначально К. Томпсон начал писать ОС UNIX на языке FORTRAN. В дальнейшем был создан язык С, и в 1973 году ядро операционной системы вместе с программами-утилитами было переписано на С. Этот язык является структурным языком высокого уровня. В настоящее время он применяется для разработки не только операционных систем, но и трансляторов, системных и прикладных программ.
Языки искусственного интеллекта
В 90-х годах прошлого столетия планировалось появление компьютеров пятого поколения, называемых машинами «искусственного интеллекта». В качестве основных языков программирования в этом, пока неосуществленном, проекте предполагались языки искусственного интеллекта LISP и PROLOG.
Создателем языка LISP (1956-1959 гг.) является Джон Маккарти, которого называют отцом искусственного интеллекта. Именно он первым ввел термин «искусственный интеллект». Основным в языке LISP является понятие рекурсивно определенных функций. Доказано, что любой алгоритм может быть описан с помощью некоторого набора рекурсивных функций. Основные идеи этого языка были позже использованы в языке программирования для детей LOGO, разработанном в 70-е годы в Массачусетском технологическом институте под руководством Сэймура Пейперта. Подмножество языка LOGO, включающее команды для Черепашки, применяется при раннем обучении программированию.
Язык PROLOG разработан во Франции в 1972 году также для решения проблем искусственного интеллекта. PROLOG позволяет в формальном виде описывать различные
Современные языки объектно-
В последнее время одним из основных направлений в развитии программного обеспечения компьютера стал объектно-ориентированный подход. Под словом «объект» понимается структура, объединяющая в единое целое данные н программы их обработки. Стали популярны объектно-ориентированные операционные системы (например, Windows), прикладные программы, а также системы объектно-ориентированного программирования (ООП).
Первым языком с элементами ООП был язык Симула-67. В Turbo PASCAL, начиная с версии 5.5, появились средства ООП. Итогом развития Turbo PASCAL в этом направлении стало создание фирмой Borland системы программирования DELPHI (Делфи).
Языки программирования, их классификация и развитие
... исходной программы даже после получения объектной программы в машинных кодах. При внесении изменений в программу с использованием диалогового языка система программирования с помощью специальных таблиц устанавливает взаимосвязь структур исходной и объектной программ. Это ...
Использование этой системы, в частности, дает возможность легко и быстро программировать слож-ный графический интерфейс. В 1991 году появилась первая версия языка VISUAL BASIC. Начиная с пятой версии (1997 год) язык стал полностью объектно-ориентированным. По данным на конец 90-х годов прошлого столетия количество программистов, использующих для своих разработок VISUAL BASIC, не уступает числу сторонников VISUAL C++ и DELPHI.
В 1985 году лаборатория Bell Labs (США) сообщила о создании языка программирования C++ (СИ++).
Этот язык является сегодня наиболее популярным среди языков объектно-ориентированного программирования. С его помощью возможно создание программных приложений, ориентированных на любые машины — от персональных до суперкомпьютеров. Создателем языка является Бьорн Страуструп.
Представителем языков объектно-ориентированного про-граммирования является и язык JAVA, созданный в 1995 году под руководством Джеймса Гослинга группой инженеров компании Sun Microsystems. При его разработке была поставлена цель — создать простой язык, не требующий специального изучения. Язык JAVA был разработан так, чтобы быть максимально похожим на C++. JAVA является идеальным инструментом при создании приложений для Интернета.
1. Первые универсальные языки
Итак, начнем. Обратимся к истокам развития вычислительной техники. Вспомним самые первые компьютеры и программы для них. Это была эра программирования непосредственно в машинных кодах, а основным носителем информации были перфокарты и перфоленты. Программисты обязаны были знать архитектуру машины досконально. Программы были достаточно простыми, что обуславливалось, во-первых, весьма ограниченными возможностями этих машин, и, во-вторых, большой сложностью разработки и, главное, отладки программ непосредственно на машинном языке. Вместе с тем такой способ разработки давал программисту просто невероятную власть над системой. Становилось возможным использование таких хитроумных алгоритмов и способов организации программ, какие и не снились современным разработчикам. Например, могла применяться (и применялась!) такая возможность, как самомодифицирующийся код. Знание двоичного представления команд позволяло иногда не хранить некоторые данные отдельно, а встраивать их в код как команды. И это далеко не полный список приемов, владение хотя бы одним из которых сейчас сразу же продвигает вас до уровня «гуру»
2. Ассемблер
Первым значительным шагом представляется переход к языку ассемблера (позволим себе маленькое лирическое отступление: английское название assembly language, или assembler, на русский переводят именно тем термином, который был использован выше. При этом у новичка создается впечатление, что язык назван в честь некоего человека по имени ассемблер. Достаточно забавная ситуация, не правда ли?).
Не очень заметный, казалось бы, шаг — переход к символическому кодированию машинных команд — имел на самом деле огромное значение. Программисту не надо было больше вникать в хитроумные способы кодирования команд на аппаратном уровне. Более того, зачастую одинаковые по сути команды кодировались совершенно различным образом в зависимости от своих параметров (широко известный пример из мира современных компьютеров — это кодирование инструкции mov в процессорах Intel: существует несколько совершенно по-разному кодируемых вариантов команды; выбор того или иного варианта зависит от операндов, хотя суть выполняемой операции неизменна: поместить содержимое (или значение) второго операнда в первый).
Разработка алгоритма и программы решения технических задач
... Возможность управления всеми компонентами системы программирования из интегрированной среды значительно облегчает процесс создания программ и повышает эффективность работы. ... разработке алгоритмов служил структурны ... перевода текста программы на машинный язык выполните компиляцию программы командой меню Compile ... программы для одного из вариантов исходных данных ЗАКЛЮЧЕНИЕ В ходе выполнения курсовой работе ...
Появилась также возможность использования макросов и меток, что также упрощало создание, модификацию и отладку программ. Появилось даже некое подобие переносимости — существовала возможность разработки целого семейства машин со сходной системой команд и некоего общего ассемблера для них, при этом не было нужды обеспечивать двоичную совместимость.
Вместе с тем, переход к новому языку таил в себе и некоторые отрицательные (по крайней мере, на первый взгляд) стороны. Становилось почти невозможным использование всяческих