ООП   ОСВМ   PHP   алгоритмизация   СУБД   WEB   БДИ   ЯиМП   3GL   4GL   5GL   ММТ   ТПОИ   ТП
(преподаватель: к.т.н. К.А. Хайдаров)

Объектно-событийное программирование (ООП-2)

  1. Основные понятия ОСП
  2. Распределенные системы
  3. Основные понятия СОП
  4. Операционные системы реального времени
  5. Основы SCADA-систем и их программирования
  6. Платформы ООП
  7. Инструметальное ПО
  8. Объектно-ориентированные языки
  9. Объекты виртуальных сред
  10. ООП программирование на C++
  11. Глоссарий по ООП
  12. Литература по ОСП

         Midterm Exam (17x3)
         Вопросы к экзамену, 3 курс (20 x 3)
         Пример оформления СРС (Oracle)
         Пример оформления презентации

История возникновения ОСП

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

Другим фундаментальным понятием является класс.

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

Следующими важнейшими принципами ООП являются наследование и полиморфизм.

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

Другим важнейшим принципом ООП является модульность.

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

Развитием объектно-орниентированной парадигмы (методологии), стала объектно-событийная парадигма, опирающаяся на понятия объекта и события. Эта парадигма позволяет конструировать, программировать распределенные вычислительные среды, в том числе среды реального времени, SCADA и пр.

Событие в объектно-ориентированном программировании - это сообщение, которое возникает в различных точках исполняемого кода при выполнении определённых условий. События предназначены для того, чтобы иметь возможность предусмотреть реакцию программного обеспечения. Для решения поставленной задачи создаются обработчики событий: как только программа попадает в заданное состояние, происходит событие, посылается сообщение, а обработчик перехватывает это сообщение. В общем случае в обработчик не передаётся ничего, либо передаётся ссылка на объект, инициировавший (породивший) обрабатываемое событие. В особых случаях в обработчик передаются значения некоторых переменных или ссылки на какие-то другие объекты, чтобы обработка данного события могла учесть контекст возникновения события. Самое простое событие - это событие, сообщающее о начале или о завершении некоторой процедуры. Событие, по сути, сообщает об изменении состояния некоторого объекта. Наиболее наглядно события представлены в пользовательском интерфейсе, когда каждое действие пользователя порождает цепочку событий, которые, затем обрабатываются в приложении. В объектно-ориентированном анализе для описания динамического поведения объектов принято использовать модель состояний. Событие - это переход объекта из одного состояния в другое. Взаимодействие объектов также осуществляется при помощи событий: изменение состояния одного объекта приводит к изменению состояния другого объекта, а событие оказывается средством связи между объектами. Событие - это <абстракция инцидента или сигнала в реальном мире, который сообщает нам о перемещении чего- либо в новое состояние>. Далее, выделяются четыре аспекта события:
  • метка - уникальный идентификатор события.
  • значение - текстовое сообщение о сути произошедшего.
  • предназначение - модель событий, которая принимает событие.
  • данные - данные, которые переносятся от одного объекта к другому.

Первый ряд примеров событий доставляет собственно сам жизненный цикл объекта:

Более сложные примеры событий возникают тогда, когда у объекта появляются внутренние состояния, которые описываются соответствующей диаграммой переходов (из одного состояния в другое).

Современными языками объектно-ориентированного программирования являются С++ и Java. С середины 90-х годов многие объектно–ориентированные языки реализуются как системы визуального программирования, в которых интерфейсная часть программного продукта создается в диалоговом режиме, практически без написания программных операторов. К объектно – ориентированным системам визуального проектирования относятся Visual Basic, Delphi, C++ Builder, Visual C++. Язык VBA (Visual Basic for Applications) – язык приложений Microsoft Office (Excel, Word, Access, Power Point и др). VBA соблюдает основной синтаксис языка и правила программирования языков Basic – диалектов, позволяет создавать макросы для автоматизации выполнения некоторых операций и графический интерфейс пользователя, интеграцию между различными программными продуктами.

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

Лабораторные работы

  1. Объектно-ориентированное программирование на PHP
  2. Объектно-ориентированное программирование для начинающих
  3. Лабораторная работа, часть 1 по ООП на PHP
  4. Лабораторная работа, часть 2 по ООП на PHP
  5. Лабораторная работа, часть 3 по ООП на PHP
  6. Лабораторная работа, часть 4 по ООП на PHP
  7. Лабораторная работа 1 по Adobe Flash: Создание видеоролика
  8. Лабораторная работа 2 по Adobe Flash: Вставка Flash-объекта в html-файл
  9. Внедрение объектов в HTML
  10. Пошаговое руководство по созданию Flash-сайта в MotoCMS
  11. ООП в JavaScript. Лабораторная работа 1
    Основные понятия и определения: объект, метод, свойства, события
  12. ООП в JavaScript. Лабораторная работа 2
  13. ООП в JavaScript. Лабораторная работа 3. Форма, кнопка, текстовое поле
  14. ООП в JavaScript. Лабораторная работа 4. Типы данных. Переменные. Арифметические операции. Условная операция
  15. Лабораторная работа 2 по ООП в PHP часть 1
  16. Лабораторная работа 2 по ООП в PHP часть 2
  17. Как вставить связанную (OLE) таблицу в MS Word?
  18. Использование технологии OLE в Excel 2007
  19. Автоматизация действий с помощью макросов VBA
  20. Лабораторная работы по ООП в VBA: макросы в Excel
  21. Создание макросов и пользовательских функций на VBA
  22. Лабораторная работа c объектно-ориентированной ЭС
  23. Лабораторная работа по программированию на XAML

Литература

  1. Автоматное программирование, вып. 53 - СПб., 2008
  2. Бруно Бабэ. Просто и ясно о Borland C++: Версии 4.0 и 4.5/ Пер. с англ. -М.:БИНОМ, 1994. - 400с.
  3. Буч Г. «Объектно-ориентированный анализ и проектирование с примерами приложений на С++» Пер. с англ. - М.: Бином; СПб.: Невский диалект, 1999.
  4. Введение в объектно-ориентированное программирование. - М, 2000 [pdf]
  5. Гайсарян С.С. «Объектно-ориентированное проектирование» (http://www.mista.ru/oop_book/index.htm)
  6. Жуков А. «Изучаем С» - СПб.: Питер, 2003.
  7. Ишкова Э. «С++ начала программирования» - М.: Бином, 2001.
  8. Клочков Д.П., Павлов Д.А. Введение в объектно-ориентированное программирование. / Учебно-методическое пособие. - Изд. Нижегор. ун-та, 1995. - 70с.
  9. Легалов А. «Итоги экспансии объектно-ориентированной парадигмы» (http://www.softcraft.ru/paradigm/process/pr01.shtml
  10. Мухортов В.В., Рылов В.Ю. Объектно-ориентированное программирование, анализ и дизайн (методическое пособие) - ИМСО РАН, Новосибирск, 2002
  11. Немнюгин С., Перколаб Л. «Изучаем TurboPascal
  12. М. Плискин «Эволюция языков программирования» (://2..cctpu../edu///lang/_09.)
  13. Объектно-ориентированный подход к программированию. - МИФИ, 2003 [pdf]
  14. Объектно-ориентированная методология программирования (http://www.math.rsu.ru/smalltalk/sml-a.ru.html)
  15. Объектно-ориентированные системы: состояние и перспективы. Аналитический обзор по материалам фирмы OVUM. Обзор подготовил А.Г. Иванов. (http://www.math.rsu.ru/smalltalk/obzornew.ru.html)
  16. Объектно-ориентированные языки программирования. Сравнение с традиционными языками (://.suvvbcourse/1.)
  17. Патрикеев Ю.Н. «Объектно-ориентированное проектирование» (http://www.object.newmail.ru/oop1.html)
  18. Патрикеев Ю.Н. «Объектно-ориентированное программирование на Borland C++» (http://www.object.newmail.ru/obj0.html)
  19. Поликарпова Н.И., Шалыто А.А. Автоматное программирование - СПб., 2008, 167 c.[pdf]
  20. Принципы объектно-ориентированного программирования – Лекции по системе визуального объектно-ориентированного проектирования Delphi - Лекции (http://blackman.wp-club.net/lection/visualprg.php)
  21. Стили программирования (http://media.karelia.ru/~ftt/IVK/new2/Inflect/T_1_16.htm)
  22. Страуструп Б. Язык программирования С++ (2-ред)./Пер. с англ.-М.: Радио и связь, 1995. - 352с.
  23. Структура экрана в среде (://../distant//_2.
  24. Шилдт Герберт. Самоучитель С++ (2-ред)./Пер. с англ.-СПб.: BHV-Санкт-Петербург, 1997.-512с. (+дискета с примерами)
  25. Элиас М., Страуструп Б. Справочное руководство по языку С++ с комментариями. /Пер. с англ. -М.:Мир, 1992.- с.

Бесплатное ПО, заменяющее лицензионные коммерческие пакеты

ООП   ОСВМ   PHP   алгоритмизация   СУБД   WEB   БДИ   ЯиМП   3GL   4GL   5GL   ММТ   ТПОИ   ТП   w  
Знаете ли Вы, что наблюдатели - это операции, которые используют в качестве аргумента объекты соответствующего им типа и возвращают элемент другого типа, они используются для получения информации об объекте. Сюда относятся, например, операции типа size.

НОВОСТИ ФОРУМАФорум Рыцари теории эфира
Рыцари теории эфира
 27.04.2017 - 08:34: ЭКОЛОГИЯ - Ecology -> Глобальное потепление - миф или... миф? - Карим_Хайдаров.
26.04.2017 - 22:30: СОВЕСТЬ - Conscience -> ПРОБЛЕМА КРИМИНАЛИЗАЦИИ ЭКОНОМИКИ - Карим_Хайдаров.
26.04.2017 - 21:28: СОВЕСТЬ - Conscience -> Просвещение от Михаила Делягина - Карим_Хайдаров.
26.04.2017 - 19:10: СОВЕСТЬ - Conscience -> Просвещение от Константина Сёмина - Карим_Хайдаров.
26.04.2017 - 16:44: СОВЕСТЬ - Conscience -> РУССКИЙ МИР - Карим_Хайдаров.
25.04.2017 - 19:16: Беседка - Chatter -> ФУТУРОЛОГИЯ - прогнозы на будущее - Карим_Хайдаров.
25.04.2017 - 03:11: СОВЕСТЬ - Conscience -> КОЛЛАПС МИРОВОЙ ФИНАНСОВОЙ СИСТЕМЫ - Карим_Хайдаров.
25.04.2017 - 00:47: АСТРОФИЗИКА - Astrophysics -> Происхождение тектитов и кимберлитов. Кометные молнии. - Евгений_Дмитриев.
25.04.2017 - 00:32: СОВЕСТЬ - Conscience -> Проблема государственного терроризма - Карим_Хайдаров.
25.04.2017 - 00:29: СОВЕСТЬ - Conscience -> Просвещение от Ю.Ю. Болдырева - Карим_Хайдаров.
23.04.2017 - 05:25: СОВЕСТЬ - Conscience -> Просвещение от Марата Мусина - Карим_Хайдаров.
22.04.2017 - 05:49: СОВЕСТЬ - Conscience -> Проблема народного образования - Карим_Хайдаров.
Bourabai Research Institution home page

Bourabai Research - Технологии XXI века Bourabai Research Institution