Министерство образования Российской Федерации

Санкт-Петербургский государственный электротехнический

университет “ЛЭТИ”

РАБОЧАЯ ПРОГРАММА

дисциплины

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

Для подготовки дипломированных специалистов по направлению

654600 – “Информатика и вычислительная техника” по специальности

075200 – “Компьютерная безопасность”

Санкт-Петербург

2003

Санкт-Петербургский государственный электротехнический

университет “ЛЭТИ”

“УТВЕРЖДАЮ”

Проректор по учебной работе

проф. ___________

“_____”_______________2003 г.

РАБОЧАЯ ПРОГРАММА

дисциплины

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

Для подготовки дипломированных специалистов по направлению

654600 – “Информатика и вычислительная техника” по специальности

075200 – “Компьютерная безопасность”

Факультет Компьютерных технологий и информатики

Кафедра Вычислительной техники

Курс 4

Семестр 7

Лекции

48 ч.

Экзамен

семестр

Лабораторные занятия

16 ч.

7

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

16 ч.

Зачет

семестр

7

Аудиторные занятия

80 ч.

 

Самостоятельные занятия

60 ч.

Всего часов

140ч.

 

2003

Рабочая программа обсуждена на заседании кафедры Вычислительной техники “____”_______________2003г., протокол №______.

Рабочая программа согласована с рабочими программами изученных ранее дисциплин:

1)  Программирование;

2)  Информатика.

Рабочая программа утверждена на методической комиссии факультета Компьютерных технологий и информатики “____”_____________2003г.

Цели и задачи дисциплины:

Изучение технологии объектно-ориентированного программирования и проектирования.

В результате изучения дисциплины студенты должны:

-  знать теоретические основы и современные информационные технологии анализа, проектирования и разработки программного обеспечения;

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

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

Содержание рабочей программы

Введение. Предмет дисциплины, ее структура и содержание. Структура и план учебной деятельности студентов, рекомендуемая литература. Связь дисциплины с предшествующими и последующими дисциплинами и ее место в подготовке специалиста по специальности 220100. Краткие сведения об истории развития и становления проблематики дисциплины. Стандарты по разработке программного обеспечения.

Раздел 1. ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ И ЯЗЫК С ++

Тема 1. Основные положения объектного подхода к разработке программ. Средства разработки программ на Visual C++.

Тема 2. Понятие класса. Инкапсуляция и спецификация правил доступности элементов класса.

Тема 3. Конструкторы и деструкторы. Свойства конструкторов и деструкторов. Конструкторы по умолчанию, с параметрами и копирования.

Тема 4. Наследование. Иерархия классов. Указатели в базовых и производных классах.

Тема 5. Виртуальные функции. Ранее и позднее связывание. Таблицы виртуальных функций. Виртуальные деструкторы.

Тема 6. Множественное наследование. Приведение типов. Виртуальные базовые классы. Абстрактные классы.

Тема 7. Друзья класса. Свойства дружественных функций. Статические члены класса.

Тема 8. Перегрузка функций и операций. Перегрузка унарных и бинарных операций.

Тема 9. Обработка исключительных ситуаций. Генерация исключения. Обработчики исключений. Группировка ситуаций.

Тема 10. Шаблоны. Шаблоны классов и функций. Эквивалентность шаблонных классов.

Тема 11. Разработка и применение библиотек классов. Библиотеки Win32 и MFC.

Раздел 2. Анализ и проектирование программного обеспечения.

Тема 12. Процесс разработки программ. Язык объектного моделирования UML.

Тема 13. Стадия планирования. Требования и функции системы. Модель вариантов использования. Диаграммы прецедентов.

Тема 14. Стадия анализа. Модель анализа. Построение концептуальной модели.

Тема 15. Этап проектирования. Модель проектирования. Диаграммы взаимодействий. Диаграммы классов.

Тема 16. Стадия конструирования. Модель реализации. Изменение кода, CASE-средства и обратное проектирование.

Тема 17. Тестирование. Модель тестирования.

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

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

Перечень лабораторных работ

Наименование работы

Номер темы

1.   

Технология работы в Visual C++

1

2.   

Описание классов в С++

2

3.   

Использование конструкторов и деструктора

3

4.   

Построение иерархии классов

4

5.   

Использование виртуальных функций

5

6.   

Построение иерархии с множественным наследованием

6

7.   

Обработка исключительных операций

9

8.   

Использование библиотек Win32 и MFC

11

Цели и содержание курсовой работы

Разработка приложения средней сложности в среде Visual C++. Приложение включает разработку экранных форм и логики.

Курсовая работа оформляется в виде пояснительной записки, в которой отражены все полученные результаты разработки. Ориентировочное время выполнения работы - 30 часов.

Распределение учебных часов по темам и видам занятий

темы

Название разделов и тем

Объем учебных часов

Лекции

Лаборат.

занятия

Практич.

занятия

Аудитор.

занятия

Самост.

работа

Всего

Семестр

Введение

1

1

1

7

Раз-дел 1

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ И ЯЗЫК С ++

1

Основные положения объектного подхода к разработке программ.

2

2

4

2

6

7

2

Понятие класса.

2

2

4

2

6

7

3

Конструкторы и деструкторы.

4

2

6

2

8

7

4

Наследование.

4

2

6

2

8

7

5

Виртуальные функции.

4

2

6

4

10

7

6

Множественное наследование.

2

2

4

2

6

7

7

Друзья класса.

2

2

2

4

7

8

Перегрузка функций и операций.

2

2

2

4

7

9

Обработка исключительных ситуаций.

4

2

6

2

8

7

10

Шаблоны.

2

2

2

4

7

11

Разработка и применение библиотек классов.

4

2

6

4

10

7

Раз-дел 2

Анализ и проектирование программного обеспечения.

12

Процесс разработки программ

2

2

2

4

7

13

Стадия планирования.

3

3

4

7

7

14

Стадия анализа.

2

2

2

4

7

15

Этап проектирования.

3

3

2

5

7

16

Стадия конструирования.

2

2

4

6

7

17

Тестирование.

3

3

6

9

7

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

16

14

30

7

ИТОГО:

48

16

80

60

140


ЛИТЕРАТУРА

Основная

Название, библиографическое описание
Л
Лр
Пз (С)
К-во экз. в библ. (на каф.)
Гриф
1.   
Б. Страуструп. Язык программирования С++, 1991.
7
7
7
47
2.   
. С/С++ программирование на языке высокого уровня. 2002.
7
7
7
Ф/Б
3.   
Г. Шилдт. Самоучитель С++,1998. А. Мешков, Ю. Тихомиров. Visual C++ и MFC, т.1, 2, 1997.
7
7
7
Ф/Б, Ч/З
4.  4

. Справочник по функциям Win32 API. М.2002.

7
7
7
0
5.   

А. Леоненков. Самоучитель UML.

7
7
7
0
6.  5

Пкрэг Ларман. Применение UML и шаблонов проектирования. –М. 2002.

7
7
7
16
7.  6

А. Якобсон, Г. Буч, Дж. Рамбо Унифицированный процесс разработки программного обеспечения. Питер, 2002.

7
7
7
0
8.   

Г. Буч, Т. Кватрани. Ration Rose 2000 и UML.2002

7
7
7
0

Автор

к. т.н., доц.

Рецензент

д. т.н., проф.

Зав. кафедрой Вычислительной техники

д. т.н., проф

Декан факультета

Компьютерных технологий и информатики

д. т.н., проф.

Программа согласована:

Зав. кафедрой Вычислительной техники

д. т.н., проф

Зав. отделом учебной литературы

Председатель методической комиссии

факультета

Компьютерных технологий и информатики

к. т.н., доц.

Руководитель методического отдела,

к. т.н., доцент