Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






В начале 80-х годов возникло новое направление, основанное на понятии объекта. Объект – это совокупность свойств (структур данных, характеристик для этого объекта), методов обработки (подпрограммы изменений свойств) и событий, на которые данный объект может реагировать и которые приводят, как правило, к изменению свойств объекта.

Объектно-ориентированное (ОО) программирование, разработанное в середине 70-х гг. Керниганом и Риччи и реализованное в ОО-версиях языков Си и Паскаль, представляет собой отображение объектов реального мира, их свойств (атрибутов) и связей между ними при помощи специальных структур данных. Структурное программирование подразумевает наличие ряда встроенных структур данных: целых, вещественных и строковых переменных, массивов, записей - при помощи которых и производится отображение свойств объектов реального мира. При объектно-ориентированном подходе для объекта создается своя структура данных (класс), содержащая как свойства объекта (поля), так и процедуры для управления объектом (методы).

Например, рассмотрим простейший объект - точку на экране. Она имеет как минимум три поля (координаты и цвет) и методы вроде " ChangeColor" (поменять цвет), " MoveXY" (переместиться в точку х, у) и т.д. Объектно-ориентированный подход является в настоящее время доминирующим и позволяет сократить время разработки и увеличить надежность больших проектов. Однако программы в данном стиле отличаются громоздким синтаксисом; в целом идеология объектно-ориентированного подхода весьма неочевидна, часто воспринимается с трудом (особенно это характерно для языка Си, который и в своем первоначальном виде отличается крайне неудобочитаемым синтаксисом), и переход к его использованию труден или невозможен для большого числа программистов.

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

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

Важная характеристика класса – возможность создания на его основе новых классов с наследованием всех его свойств и методов добавления собственных. Класс, не имеющий предшественника, называется базовым. Например, класс «животное» имеет свойства «название», «размер», методы «идти» и «размножаться». Созданный на его основе класс «кошка» наследует все эти свойства и методы, к которым добавляется свойство «окраска» и метод «пить». Наследование позволяет создавать новые классы, повторно используя уже готовый исходный код и не тратя времени на его переписывание.

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

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

НТМL (Нуреr Техt Маrkup Lanquage) является стан­дартным языком, предназначенным для создания гипер­текстовых документов в среде WWW. НТМL - документы могут просматриваться различными браузерами (специальными программами, интерпретирующими такого рода гипертекстовые документы), наиболее известным из которых является Internet Explorer. В отличие от документов, например текстового процессора Microsoft Word, документы в формате HTML не организованы по принципу WYSIWYG (What You See Is You Get) — что видишь, то и получишь [при выводе на печать или монитор]. Когда документ создан с использованием НТМL, браузер должен интерпретировать HTML для выделения различных элементов документа и их первичной обработки с целью дальнейшего отображения в виде, задуманном автором. Данная технология не является исключительной особенностью HTML, она, например, используется в языке, предназначенном для верстки математических текстов ТеХ (LaТеХ), автором которого является Д. Кнут. Использование HTML позволяет форматировать документы для их представления с использованием заголовков, шрифтов, линий и других стандартных элементов на любой системе, предназначенной для их просмотра.

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

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.