Автор: Пользователь скрыл имя, 29 Ноября 2011 в 16:51, курсовая работа
Целью курсовой работы является изучение общих характеристик языков программирования.
Задачи курсовой работы:
1. Проанализировать особенности языков программирования.
2. Рассмотреть историю языков программирования по поколениям.
3. Создать Web-сайт «Языки программирования».
ВВЕДЕНИЕ 2
1. ОБЩИЕ ХАРАКТЕРИСТИКИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ 3
1.1. Роль и характеристики языков программирования 3
1.2. Поколения языков программирования 4
1.3. Классификация языков программирования 7
1.4. Перспективы языков программирования 11
ЗАКЛЮЧЕНИЕ 12
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 13
ОГЛАВЛЕНИЕ
Прогресс
компьютерных технологий определил
процесс появления новых
Язык программирования служит двум связанным между собой целям: он дает программисту аппарат для задания действий, которые должны быть выполнены, и формирует концепции, которыми пользуется программист, размышляя о том, что делать.
Изучение истории языков программирования, их разнообразия и особенностей позволяет программисту сделать правильный выбор при выборе языка для решения определенной задачи.
В настоящее время существуют множество языков программирования: как достаточно универсальных, так и очень специфических. Многие программисты старались и стараются придумать свой язык обладающий теми или иными преимуществами.
Актуальность данной темы обусловлена тем, что прогресс компьютерных технологий определил процесс появления новых разнообразных знаковых систем для записи алгоритмов - языков программирования.
Целью курсовой работы является изучение общих характеристик языков программирования.
Задачи курсовой работы:
1. Проанализировать особенности языков программирования.
2. Рассмотреть историю языков программирования по поколениям.
3. Создать Web-сайт «Языки программирования».
Различные аспекты языков программирования рассматриваются в работах Т. Пратта «Языки программирования: разработка и реализация», в которой рассматриваются общие концепции разработки и реализации языков программирования, О.Л.Голицына «Языки программирования», в ней рассмотрены эволюция и классификация языков, дается их конкретное описание.
При разработке сайта использовалисьHTML (от англ. HyperText Markup Language — «язык разметки гипертекста») и Microsoft Office FrontPage 2003.
Материал адаптирован для применения в школьном курсе информатики.
Основная роль языков программирования заключается в планировании действий по обработке информации. Любой язык программирования основан на системе понятий, на основе которой человек может выражать свои соображения.
Как и естественные языки, языки программирования развиваются и в конце концов выходят из употребления, умирают. Например, язык ALGOL, затем Pascal, затем C, C++, Java.
На принципы конструирования новых языков влияют следующие факторы:
1. Возможности компьютеров.
2. Области применения
3.
Методы программирования. Структурное
строение языка отражает
4. Методы реализации. Усовершенствование методов реализации отражается в выборе тех новых свойств , которые добавляются во вновь разрабатываемые языки.
5. Теоретические исследования. Исследование концептуальных основ разработки и реализации языка с помощью формальных математических методов углубляет понимание сильных и слабых сторон конкретного языка, что отражается на добавлении тех или иных свойств при создании новых языков.
6. Стандартизация. Необходимость в стандартных языках, которые могут легко реализованы в различных компьютерных системах (что позволяет переносить программы с одного компьютера на другой), сильно влияет на развитие – эволюцию принципов разработки языков программирования.
Основными характеристиками, позволяющими сравнивать языки программирования и выбирать наилучшие для решения той или иной задачи, являются мощность, уровень и концептуальная целостность.
Мощность
языка характеризуется
Уровень
языка характеризуется
Концептуальная целостность языка характеризуется свойствами совокупности понятий, служащих для описания этого языка, и включает три взаимосвязанных аспекта: экономию, ортогональность, единообразие понятий.
Существует большое количество других характеристик.
Следует заметить, что многие из перечисленных характеристик конфликтуют друг с другом. Например, надежность и эффективность. Это подчеркивает сложности, с которыми приходится сталкиваться создателям новых языков.
Языки программирования принято делить на пять поколений. Первые три поколения языков программирования характеризовались более сложным набором зарезервированных слов и синтаксисом. Языки четвертого поколения все еще требуют соблюдения определенного синтаксиса при написании программ, но он значительно легче для освоения. Естественные языки программирования, разрабатываемые в настоящее время, составят пятое поколение и позволят определять необходимые процедуры обработки информации, используя предложения языка, весьма близкого к естественному и не требующего соблюдения особого синтаксиса (таблица 2.1)
Таблица
2.1.- Поколения языков программирования
Поколения | Языки программирования | Характеристика |
Первое | Машинные | Ориентированы на использование в конкретной ЭВМ, сложны в освоении, требуют хорошего знания архитектуры ЭВМ |
Второе | Ассемблеры, макроассемблеры | Более удобны для использования, но по-прежнему машинно-зависимы |
Третье | Языки высокого уровня | Мобильные, человеко-ориенти-рованные, проще в освоении |
Четвёртое | Непроцедурные,
объектно-
ориентированные, языки запросов, параллельные |
Ориентированы
на непрофес-сионального |
Пятое | Языки искусственного интеллекта, экспертных систем и баз знаний, естественные языки | Ориентированы на повышение интеллектуального уровня ЭВМ и интерфейса с языками |
В первое поколение входят языки, созданные в начале 50-х годов, когда первые компьютеры только появились на свет. В то время программы писались в машинных кодах, то есть каждая компьютерная команда вместе с ее операндами вводилась в ЭВМ в двоичном виде. Это требовало огромных усилий по вводу цифровых текстов и приводило к множеству трудноуловимых ошибок. Конечно, ни о каких больших проектах речи идти не могло. Ситуация качественно изменилась в середине 50-х годов, когда был написан первый ассемблер. Это само по себе можно считать подвигом, учитывая довольно сложную логику программы. Хотя этот ассемблер был в сегодняшнем понимании неполноценным, он позволял задавать названия команд в символическом виде и указывать числа не только в двоичном, но и в десятичном или шестнадцатеричном формате, что существенно облегчило работу программистов. Это был первый язык ассемблера, созданный по принципу « одна инструкция – одна строка».
Языки первого поколения продолжают использовать и сегодня, хотя в значительно меньшем объеме. Чаще всего программы в машинных кодах ориентированы на новые микропроцессоры, для которых еще не разработаны компиляторы, поддерживающие требуемый набор команд.
Расцвет второго поколения языков программирования пришелся на конец 50-х – начало 60-х годов. Тогда был разработан символический ассемблер, в котором появилось понятие переменной. Он стал первым полноценным языком программирования. Благодаря его возникновению заметно возросли скорость разработки и надежность программ. Ассемблеры активно применяются и в настоящее время, как правило, для создания программ, максимально использующих возможности аппаратуры: различных драйверов, модулей стыковки с нестандартным оборудованием и других. В некоторых областях, например, в машинной графике, на ассемблере пишут библиотеки, эффективно реализующие стандартные алгоритмы обработки изображений. Кроме того, среди программистов просто есть немало людей, предпочитающих использовать ассемблер в своей работе. Как правило, это специалисты, хорошо разбирающиеся в электронике и схемотехнике.
Появление третьего поколения языков программирования принято относить к 60-м годам. В это время родились универсальные языки высокого уровня, с их помощью удается решать задачи из любых областей. Это общеизвестные Фортран, Кобол, Алгол и другие. Такие качества новых языков, как относительная простота, независимость от конкретного компьютера и возможность использования мощных синтаксических конструкций, позволили резко повысить производительность труда программистов. Подавляющее большинство языков этого поколения успешно применяется и сегодня.
С начала 70-х годов по настоящее время продолжается период языков четвертого поколения. Эти языки предназначены для реализации крупных проектов, снижения числа ошибок, повышения их надежности и скорости создания. Все средства разработки четвертого поколения имеют мощные интегрированные оболочки и обладают простым и удобным пользовательским интерфейсом. Они чаще всего используются для проектирования баз данных и работы с ними (встроенные языки СУБД), что объясняется возможностью формализации всех понятий, используемых при построении реляционных баз данных. Они обычно ориентированы на специализированные области применения, где хороших результатов можно добиться, используя не универсальные, а проблемно-ориентированные языки, оперирующие конкретными понятиями узкой предметной области. Как правило, в эти языки встраиваются мощные операторы, позволяющие одной строкой описать такую функциональность, для реализации которой в языках младших поколений потребовались бы тысячи строк исходного кода.