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

Автор работы: Пользователь скрыл имя, 05 Октября 2015 в 15:52, реферат

Краткое описание

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

Содержание

1. Введение
2. Основные понятия
3. Определение ООП и его основные концепции
3.1 Сложности определения
3.2 Концепции
4. Особенности реализации
5. Подходы к проектированию программ в целом
6. Родственные методологии
6.1 Компонентное программирование
6.2 Прототипное программирование
6.3 Класс-ориентированное программирование
7 . Производительность объектных программ
8. Критика ООП
9. Объектно-ориентированные языки
Заключение
Литература

Прикрепленные файлы: 1 файл

информатика.pptx

— 133.92 Кб (Скачать документ)

 

Производительность объектно-ориентированных программ. 

 

    • Указывается на то, что целый ряд «врождённых особенностей» ООП-технологии делает построенные на её основе программы технически менее эффективными, по сравнению с аналогичными необъектными программами. Не отрицая действительно имеющихся дополнительных накладных расходов на организацию работы ООП-программ (см. раздел «Производительность» выше), нужно, однако, отметить, что значение снижения производительности часто преувеличивается критиками. В современных условиях, когда технические возможности компьютеров чрезвычайно велики и постоянно растут, для большинства прикладных программ техническая эффективность оказывается менее существенна, чем функциональность, скорость разработки и сопровождаемость. Лишь для некоторого, очень ограниченного класса программ (ПО встроенных систем, драйверы устройств, низкоуровневая часть системного ПО, научное ПО) производительность остаётся критическим фактором.
    • Критика отдельных технологических решений в ООП-языках и библиотеках. 
    • Эта критика многочисленна, но затрагивает она не ООП как таковое, а приемлемость и применимость в конкретных случаях тех или иных реализаций её механизмов. Одним из излюбленных объектов критики является язык C++, входящий в число наиболее распространённых промышленных ООП-языков.

 

Объектно-ориентированные языки  

 

    • Многие современные языки специально созданы для облегчения объектно-ориентированного программирования. Однако следует отметить, что можно применять техники ООП и для не-объектно-ориентированного языка и наоборот, применение объектно-ориентированного языка вовсе не означает, что код автоматически становится объектно-ориентированным.
    • Современный объектно-ориентированный язык предлагает, как правило, следующий обязательный набор синтаксических средств:
    • Объявление классов с полями (данными — членами класса) и методами (функциями — членами класса).
    • Механизм расширения класса (наследования) — порождение нового класса от существующего с автоматическим включением всех особенностей реализации класса-предка в состав класса-потомка. Большинство ООП-языков поддерживают только единичное наследование.
    • Полиморфные переменные и параметры функций (методов), позволяющие присваивать одной и той же переменной экземпляры различных классов.
    • Полиморфное поведение экземпляров классов за счёт использования виртуальных методов. В некоторых ООП-языках все методы классов являются виртуальными.
    • Видимо, минимальным традиционным объектно-ориентированным языком можно считать язык Оберон, который не содержит никаких других объектных средств, кроме вышеперечисленных (в исходном Обероне даже нет отдельного ключевого слова для объявления класса, а также отсутствуют явно описываемые методы, их заменяют поля процедурного типа). Но большинство языков добавляют к указанному минимальному набору те или иные дополнительные средства. В их числе:
    • Конструкторы, деструкторы, финализаторы.
    • Свойства (аксессоры).
    • Индексаторы.
    • Интерфейсы (например, в Java используются также как альтернатива множественному наследованию — любой класс может реализовать сколько угодно интерфейсов).
    • Переопределение операторов для классов.
    • Средства защиты внутренней структуры классов от несанкционированного использования извне. Обычно это модификаторы доступа к полям и методам, типа public, private, обычно также protected, иногда некоторые другие.
    • Часть языков (иногда называемых «чисто объектными») целиком построена вокруг объектных средств — в них любые данные (возможно, за небольшим числом исключений в виде встроенных скалярных типов данных) являются объектами, любой код — методом какого-либо класса, и невозможно написать программу, в которой не использовались бы объекты. Примеры подобных языков — Smalltalk, Java, C#, Ruby, AS3. Другие языки (иногда используется термин «гибридные») включают ООП-подсистему в исходно процедурный язык. В них существует возможность программировать, не обращаясь к объектным средствам.

 

      Заключение

 

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

Список литературы

 

    • 1.С.В. Симонович Информатика. Базовый курс.  2-е издание 
    • 2.Артыкбаев. «Информатика» Алматы 2007 год
    • Изтлеуов М.К. и др., Информатика, Актобе, 2005
    • Абишева А.М., Ташимбекова ., Информатика, 1995  год
    • 3. Сайт интернета: www.Google.kz

СПАСИБО         ЗА          ВНИМАНИЕ !!!!

 


Информация о работе Обзор объектно-ориентированных программ