Республики Беларусь «24»

Вид материалаПояснительная записка

Содержание


Пояснительная записка
Содержание дисциплины
Раздел 1. Классы и ОБЪЕКТЫ
Раздел 2. Наследование
Раздел 3. Виртуальные функции
Раздел 4. Расширенные возможности
Раздел 5. Исключительные ситуации
Раздел 6. Шаблоны
Раздел 7. интерфейсы
Подобный материал:
1   ...   10   11   12   13   14   15   16   17   18
^

Пояснительная записка



Типовая программа дисциплины «Объектно-ориентированное программирование» разработана в соответствии с Образовательными стандартами РД РБ 02100.5.113-98, РД РБ 02100.5.112-98, РД РБ 02100.5.111-98 для специальностей 1-53 01 02 Автоматизированные системы обработки информации (АСОИ), Ι-40 01 01 Программное обеспечение информационных технологий (ПОИТ) и Ι-40 02 01 Вычислительные машины, системы и сети (ВМСиС) высших учебных заведений для студентов, получивших базовые знания в области процедурных языков программирования.

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

В результате освоения материала курса студент должен:

знать основные теоретические понятия ООП, механизмы реализации объектно-ориентированного подхода, достоинства и недостатки объектной технологии программирования, тенденции и перспективы развития объектно-ориентированного подхода в программировании;
    • уметь:

– выбирать методы и средства для реализации программных проектов с использованием технологии ООП;

– анализировать предметную область решаемых задач с целью использования объектно-ориентированного подхода для их реализации;

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

Язык программирования, в контексте которого читается дисциплина, зависит от специальности: АСОИ – С++; ПОИТ – Delphi, С++; ВМСиС – Java, Perl.

Программа составлена в соответствии с требованиями общеобразовательного стандарта и рассчитана на следующий объем:

– АСОИ ­– 121 учебный час (примерное распределение учебных часов по видам занятий: лекций – 72 часа, лабораторных работ – 32 часа, практических занятий – 17 часов);

– ПОИТ ­– 85 учебных часов (примерное распределение учебных часов по видам занятий: лекций – 51 час, лабораторных работ – 17 часов, практических занятий – 17 часов);

– ВМСиС ­– 85 учебных часов (примерное распределение учебных часов по видам занятий: лекций – 51 час, лабораторных работ – 17 часов, практических занятий – 17 часов, курсовая работа).

^

Содержание дисциплины




Введение



Понятие об ООП. Парадигмы объектно-ориентированного программирования: инкапсуляция, наследование, полиморфизм. Природа объекта. Отношения между объектами. Природа классов. Отношения между классами. Идентификация классов и объектов.


^ Раздел 1. Классы и ОБЪЕКТЫ


Понятие класса. Создание объектов класса. Конструкторы и деструкторы. Методы и данные. Управление доступом к членам класса. Агрегация объектов. Неявный указатель объекта на себя.


^ Раздел 2. Наследование


Понятие наследования. Понятие базового и производного классов. Ограничение доступа при наследовании. Переопределение членов базового класса в производном классе. Совместимость объектов различных классов. Контроль и преобразование классов объектов. Динамическая идентификация типа.


^ Раздел 3. Виртуальные функции


Понятие виртуальной функции. Механизм вызова виртуальных функций. Абстрактные классы. Виртуальные деструкторы. Проявление полиморфности объектов.


^ Раздел 4. Расширенные возможности

некоторых языков


Дружественные функции. Перегрузка операций. Множественное наследование. Указатели на методы объектов. Виртуальные конструкторы. Библиотеки классов. Визуальные системы программирования. Понятие класса-компонента.


^ Раздел 5. Исключительные ситуации


Понятие ошибки и исключительной ситуации. Классы исключительных ситуаций. Создание исключительной ситуации. Распознавание класса исключительной ситуации. Обработка исключительной ситуации. Возобновление исключительной ситуации. Доступ к объекту, описывающему исключительную ситуацию. Защищенные блоки и их применение для защиты от утечки ресурсов.


^ Раздел 6. Шаблоны


Введение. Шаблоны функций. Перегрузка шаблонных функций. Шаблоны классов. Шаблоны классов и нетиповые параметры. Шаблоны и наследование.

^ Раздел 7. интерфейсы


Понятие интерфейса. Описание интерфейса. Иерархия наследования интерфейсов. Глобально-уникальная идентификация интерфейса. Реализация интерфейса классом. Совместимость классов и интерфейсов по типу.


примерный перечень тем лабораторных работ


АСОИ:
  1. Расширение возможностей языка С в языке С++.
  2. Программирование в терминах классов.
  3. Манипулирование объектами классов.
  4. Производные и абстрактные классы.
  5. Техника работы с библиотеками классов.
  6. Объектно-ориентированный ввод-вывод.
  7. Использование шаблонов функций и классов.
  8. Обработка исключений в С++.

ПОИТ:
  1. Реализация базовых объектов при помощи классов.
  2. Реализация множественного наследования.
  3. Работа с потоками ввода-вывода. Реализация манипуляторов и перегрузка операторов.
  4. Использование шаблонов функций и классов (STL).

ВМСиС:
  1. Разработка простого апплета и приложения на Java.
  2. Реализация иерархии классов и интерфейсов.
  3. Создание простейшего CGI-скрипта на Perl.
  4. Работа с СУБД MySQL из CGI-скрипта на Perl.