Классификация по поддерживаемым методологиям



Министерство образования и науки Российской Федерации

Поморский государственный университет

 

 

Курсовая работа

 

по дисциплине: Языки программирования

 

Обучающая система: Классификация языков программирования

 

                               Выполнили: студенты математического факультета

                           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; Мы поможем в написании вашей работы!

Поделиться с друзьями:






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