Объектно – ориентированные языки программирования
Рефераты >> Программирование и компьютеры >> Объектно – ориентированные языки программирования

СОДЕРЖАНИЕ

I.Введение

II. Объектно-ориентированная методология программирования

III. Объектно-ориентированные языки программирования

Smalltalk

C++

Common Lisp Object System (CLOS)

Ada

Eiffel

Java

Object Pascal

Система визуального объектно-ориентированного проектирования Delphi.

IV.Заключение

Литература и ссылки

Приложение

I.Введение

В настоящее время можно выделить несколько типов языков программирования. Одним из важнейших признаков их классификации является принадлежность их к одному из стилей, основными из которых являются следующие стили:

· процедурный,

· функциональный,

· логический,

· объектно-ориентированный.

1. Процедурное программирование

Процедурное (императивное) программирование является отражением архитектуры традиционных ЭВМ, которая была предложена фон Нейманом в 40-х годах.

Программа на процедурном языке программирования состоит из последовательности операторов (инструкций), задающих процедуру решения задачи. Основным является оператор присваивания, служащий для изменения содержимого областей памяти. Концепция памяти как хранилища значений, содержимое которого может обновляться операторами программы, является фундаментальной в императивном программировании.

Процедурные языки характеризуются следующими особенностями:

@ необходимостью явного управления памятью, в частности, описанием переменных;

@ малой пригодностью для символьных вычислений;

@ отсутствием строгой математической основы;

@ высокой эффективностью реализации па традиционных ЭВМ.

Одним из важнейших классификационных признаков процедурного языка является его уровень. Уровень языка программирования определяется семантической емкостью его конструкций и степенью его ориентации на программиста. Чем более язык ориентирован на человека, тем выше его уровень.

К процедурным языкам относятся: язык Ассемблера, С, Basic, Pascal.

2. Функциональное программирование

Первым таким языком был LISP.

Роль основной конструкции в функциональных (аппликативных) языках играет выражение. К выражениям относятся скалярные константы, структурированные объекты, функции, тела функций и вызовы функций.

Аппликативный язык программирования включает следующие элементы:

v классы констант, которыми могут манипулировать функции;

v набор базовых функций, которые программист может использовать без предварительного объявления и описания;

v правила построения новых функций из базовых;

v правила формирования выражений на основе вызовов функций.

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

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

3. Логическое программирование

Новую область — логическое, или реляционное программирование, — открыло появление языка PROLOG. Этот язык был создан французским ученым А. Кольмероэ в 1973 году. В настоящее время известны и другие языки, однако наиболее развитым и распространенным языком логического программирования является именно Пролог. Языки логического программирования, в особенности Пролог, широко используются в системах искусственного интеллекта.

Центральным понятием в логическом программировании является отношение. Программа представляет собой совокупность определений отношений между объектами (в терминах условий или ограничений) и цели (запроса). Процесс выполнения программы трактуется как процесс общезначимости логической формулы, построенной из программы по правилам, установленным семантикой используемого языка. Результат вычисления является побочным продуктом этого процесса. В реляционном программировании нужно только специфицировать факты, на которых алгоритм основывается, а не определять последовательность шагов, которые требуется выполнить. Языки логического программирования характеризуются:

Ø высоким уровнем;

Ø строгой ориентацией на символьные вычисления;

Ø возможностью инверсных вычислений, то есть переменные в процедурах не делятся на входные и выходные;

Ø возможной логической неполнотой, поскольку зачастую невозможно выразить в программе определенные логические соотношения, а также невозможно получить из программы все выводы правильные.

4. Объектно-ориентированное программирование

Прототипом объектно-ориентированного программирования послужил ряд средств, входящих в состав языка SIMULA-67. Но в самостоятельный стиль оно оформилось с появлением языка SMALLTALK, разработанного А. Кеем в 1972 году и первоначально предназначенного для реализации функций машинной графики.

Основная цель ООП, как и большинства других подходов к программированию – повышение эффективности разработки программ. Идеи ООП оказались плодотворными и нашли применение не только в языках программирования, но и в других областях Computer Science, например, в области разработки операционных систем.

Концепция объектно-ориентированного программирования подразумевает, что основой управления процессом реализации программы является передача сообщений объектам. Поэтому объекты должны определяться совместно с сообщениями, на которые они должны реагировать при выполнении программы. В этом состоит главное отличие ООП от процедурного программирования. Таким образом, объектно-ориентированная программа состоит из объектов – отдельных фрагментов кода, обрабатывающего данные, которые взаимодействуют друг с другом через определённые интерфейсы.

II. Объектно-ориентированная методология программирования

В последнее время развитие аппаратных средств существенно опережало развитие систем и средств программирования. Чтобы выправить положение, в 70-80-х годах были предложены различные подходы к увеличению производительности труда программиста. Среди этих попыток выделяется такое направление, как объектно-ориентированный подход к конструированию и кодированию программ. Особую роль в популярности этого подхода сыграло как его тесная связь с интерфейсами пользователя (особенно графическими), так и включение элементов этого подхода в популярные (на персональных компьютерах фирмы IBM) реализации гибридных языков программирования C++ и Pascal with Objects фирмы Borland.


Страница: