Классификация по поддерживаемым методологиям
Министерство образования и науки Российской Федерации
Поморский государственный университет
Курсовая работа
по дисциплине: Языки программирования
Обучающая система: Классификация языков программирования
Выполнили: студенты математического факультета
I курса 12 группы
Козлова Т. В., Коротина Л. Ю.
Приняла: Орешкова М. Н.
Архангельск
2005
Содержание:
I. Введение………………………………………………………………………..3
II. Классификация языков программирования по поддерживаемым методологиям………………………………………………………………………………..9
2.1. Методология императивного программирования…………………………9
2.1.1. Методология императивного программирования………………….9
2.1.2. Методология структурного императивного программирования…11
2.1.3. Методология императивного параллельного программирования..12
2.2. Методология объектно-ориентированного программирования…………16
2.3. Методология функционального программирования……………………..20
2.4. Методология логического программирования……………………………23
2.4.1. Методология логического программирования…………………….23
2.4.2. Методология логического параллельного программирования…...25
2.5. Методология программирования в ограничениях………………………..25
|
|
2.6. Другие методологии………………………………………………………...29
III. Заключение…………………………………………………………………...30
IV. Библиография………………………………………………………………..31
I. Введение.
Основная задача языка программирования – помочь
программисту в совершенствовании его искусства.
Хоар
Языки программирования служат разным целям, и их выбор определяется удобностью пользователя, пригодностью для данного компьютера и данной задачи. А задачи для компьютера бывают самые разнообразные: вычислительные, экономические, графические, экспертные и т. д. Такая разнотипность решаемых компьютером задач и определяет многообразие языков программирования.
Языки программирования – это формальные языки специально созданные для общения человека с компьютером. Каждый язык программирования, равно как и «естественный» язык, имеет алфавит, словарный запас, свои грамматику и синтаксис, а также семантику.
Алфавит– фиксированный для данного языка набор основных символов, допускаемых для составления текста программы на этом языке.
Синтаксис– система правил, определяющих допустимые конструкции языка программирования из букв алфавита.
|
|
Семантика– система правил однозначного толкования отдельных языковых конструкций, позволяющих воспроизвести процесс обработки данных.
Прагматика- система правил, регулирующая использование сообщений.
При описании языка и его применении используют понятия языка. Понятиеподразумевает некоторую синтаксическую конструкцию и определяемые ею свойства программных объектов или процесса обработки данных.
Рассматривать язык программирования можно с нескольких позиций. Перечислим некоторые из них:
· Технологическаяпозиция, отражающая взгляд человека, желающего или вынужденного пользоваться языком программирования как технологическим инструментом на каком-либо из этапов жизненного цикла программного обеспечения.
· Семиотическаяпозиция, отражающая особенности языка как знаковой системы.
· Математическаяпозиция, представляющая математическую модель изучаемого языка.
· Реализаторскаяпозиция, отражающая взгляд на язык реализаторов транслятора с этого языка и авторов документации.
· Авторскаяпозиция, отражающая позицию автора языка. Для понимания этой позиции следует обращаться к работам авторов языков программирования.
Язык программирования(алгоритмический язык) - набор правил, определяющих, какие последовательности символов составляют программу (синтаксические правила) и какие вычисления описывает программа (семантические правила).
|
|
Программа- текст, задающий множество процессов вычислений, в соответствии с которым исполнитель, понимающий программу, разворачивает какой - то один из них.
Выделим три основные характеристики языков программирования:
· Уровеньязыка- характеризуется сложностью задач, решаемых с помощью этого языка.
О том, чем определяется уровень языка программирования
Интуитивно любой программист отличит язык программирования высокого уровня от языка программирования низкого уровня. В чем же состоит различие? Чем определяется уровень? Программирование представляет собой отображение в программах объектов, понятий и явлений предметной области задачи. Чем более адекватно можно выполнить это отображение, тем выше уровень языка программирования. А отображение будет выполнено тем лучше, чем богаче возможности типообразования языка программирования.
· Мощностьязыка - характеризуется количеством и многообразием задач, алгоритмы решения которых можно записать, используя этот язык.
|
|
Взаимосвязи уровня и мощности языка
Чем выше уровень языка, тем ниже его мощность и наоборот.
· Концептуальная целостность- характеризуется свойствами совокупности понятий, служащих для описания этого языка и включает три взаимосвязанных аспекта.
Экономия понятий - язык должен достигать своей максимальной мощности минимальным количеством понятий.
Ортогональность понятий - между понятиями не должно быть взаимного влияния. Если понятие используется в различных контекстах, то правило его использования должно быть одним и тем же.
Единообразие понятий - требование согласованного единого подхода описанию и использованию всех понятий.
Существует большое количество других характеристик.
Надежность - язык должен обеспечивать минимум ошибок при написании программ. Более того, язык должен быть таким, чтобы неправильные программы было трудно писать.
Удобочитаемость - легкость восприятия программ человеком. Это характеристика важна при коллективной работе, когда несколько человек работают с одними и теми же текстами программ.
Полнота - характеризует способность описать класс задач в некоторой предметной области.
Гибкость - характеризует легкость выражения необходимых действий.
Отметим два свойства, которые не влияют на процесс разработки, но играют важную роль, отражая реализаторскую позицию.
Мобильность - независимость от аппаратных средств, обеспечивающая переносимость программного обеспечения.
Эффективность - обеспечение эффективной реализации, которая включает:
· эффективную реализацию компилятора;
· эффективную генерацию компилятором кода программ.
В настоящее время сложилось довольно много классификаций языков программирования. Далее мы приведем самые известные из них.
Классификация по поддерживаемым методологиям
Классификация языков по поддерживаемым методологиям появилась примерно в 80-х годах ХХ века. Мы выделили следующие основные группы языков:
· языки императивного программирования и две важнейшие подгруппы:
· языки структурного императивного программирования. Эти языки более известны под кратким именем - языки структурногопрограммирования;
· языки императивного параллельного программирования. Эти языки также обычно называют кратко - языки параллельного программирования;
· языки объектно-ориентированного программирования;
· языки функционального программирования;
· языки логического программирования;
· языки программирования в ограничениях.
Дата добавления: 2018-05-12; просмотров: 558; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!