русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2013-12-23; просмотров: 697; Нарушение авторских прав


 

Появление объектно-ориентированного программирования (ООП) – самое значительное за последние лет двадцать продвижение в области методологии программирования.

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

Именно для удовлетворения потребностей прямого моделирования был создан язык Smalltalk,которому удалось, по сравнению с предшественниками, вроде GPSS и Симулы,совершить качественный скачек в этом направлении программирования. Сам по себе Smalltalk не получил большого распространения из-за весьма непривычного синтаксиса (и не менее экзотической терминологии), да и был он прежде всего все-таки экспериментальным языком.

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

Частичным решением этой проблемы (может быть самым экзотическим из реально на тот момент возможных) стало появление языка Си++, как расширение языка Си. С точки зрения теоретического программирования язык си – это Фортран 80-ых. (Против такого уничижительного определения не возражал и автор языка Си – Д. Ритчи). Этот язык, сочетающий в себе многие преимущества языка высокого уровни и ассемблера, дал программистам, по образному выражению некоторых, педаль газа, но заблокировал педаль тормоза. На Си компьютер может «мчаться» быстро, но рискованно. То есть Си, насаждая ссылочно-ассемблерное программирование, как бы имеет вектор в сторону, противоположную той, которая определяется теорией и методологией языков программирования.



Поэтому и Си++ - это довольно странное сочетание некоторых черт ООП и процедурного программирования.

Здесь мы обсудим лишь основные принципы ООП безотносительно конкретных языковых реализаций.

 



<== предыдущая лекция | следующая лекция ==>
Язык Пролог | Основные принципы ООП.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.183 сек.