МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Санкт-Петербургский государственный институт точной механики и оптики (тех...
8 downloads
244 Views
227KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ Санкт-Петербургский государственный институт точной механики и оптики (технический университет) УТВЕРЖДАЮ Ректор СПбГИТМО(ТУ) _______________________В.Н.Васильев "_____"__________________200__ г.
РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ
Объектно-ориентированный анализ и программирование по направлению(ям) подготовки
Бизнес-информатика
Специальности(ям)
523100
Факультет(ы)
Информационных технологий и программирования
Председатель УМC университета
А.А.Шехонин
2
1. Цели и задачи дисциплины Цель курса - ознакомить студентов ориентированного программирования.
с
ключевыми
понятиями
объектно-
2. Требования к уровню освоения содержания дисциплины В результате изучения дисциплины студенты должны знать основные понятия объектно-ориентированного программирования и проектирования; овладеть практическими навыками объектно-ориентированного программирования и проектирования. К началу изучения курса студенты должны овладеть знаниями, полученными при изучении курсов дискретной математики, программирования, информатики, теории алгоритмов. 3. Объем дисциплины и виды учебной работы Вид учебной работы Всего часов Общая трудоемкость дисциплины Аудиторные занятия Лекции Лабораторные работы (ЛР) Самостоятельная работы Вид итогового контроля (зачет, экзамен)
162 90 36 54 72 Экзамен
Семестр 3 162 90 36 54 72 Экзамен
4. Содержание дисциплины 4.1. Разделы дисциплин и виды занятий № п/п 1 2 3 4 5
Раздел дисциплины Основные понятия объектно-ориентированного программирования. Объектно-ориентированный анализ. Объектно-ориентированное проектирование программ. Объектно-ориентированные возможности современных языков программирования. Объектно-ориентированное метапрограммирование.
Лекции 10
ЛР 12
10 6
12 18
6
6
4
6
4.2. Содержание разделов дисциплины Лекции: 1. Основные понятия объектно-ориентированного программирования. Понятия объекта, класса, метода, сообщения. Отношения простого и множественного наследования, виртуальные базовые классы. Абстрактные классы. Полиморфизм параметрический и динамический. Совместимость типов в объектноориентированном программировании. Ковариантное и контравариантное перекрытие методов. Объектно-ориентированные модели, основанные на клонировании. Методы реализации различных конструкций объектно-ориентированного программирования. 2. Объектно-ориентированный анализ. Построение модели предметной области в терминах объектно-ориентированного программирования. Модели типа "Сущность-Связь". Диаграммы состояний. Построение объектных моделей для предметных областей, описанных в учебных проектах. 3. Объектно-ориентированное проектирование программ.
3
Использование наследования и включения для моделирования отношений между сущностями. Методики объектно-ориентированного проектирования: Кода Йордана, Буча, ШлаераМеллора. Системы поддержки объектно-ориентированного проектирования. Проектирование реализации учебного программного проекта; проектирование ведется с использованием одной из методологий проектирования, изложенных в курсе лекций, и с использованием программных средств поддержки методологии. 4. Объектно-ориентированные возможности современных языков программирования. Обзор языков Smalltalk, CLOS, C++, Java и Self. Параметрический полиморфизм в объектно-ориентированных языках программирования. Написание реализаций учебных проектов на различных языках программирования. 5. Объектно-ориентированное метапрограммирование. Метаобъекты. Метаобъектные протоколы и их использование для расширения языков программирования. Аспектно-ориентированное программирование. Использование протоколов метаобъектов как альтернативного способа реализации учебных программных проектов. Лабораторные работы: 1. Основные понятия объектно-ориентированного программирования. Понятия объекта, класса, метода, сообщения. Отношения простого и множественного наследования, виртуальные базовые классы. Абстрактные классы. Полиморфизм параметрический и динамический. Совместимость типов в объектноориентированном программировании. Ковариантное и контравариантное перекрытие методов. Объектно-ориентированные модели, основанные на клонировании. Методы реализации различных конструкций объектно-ориентированного программирования. 2. Объектно-ориентированный анализ. Построение модели предметной области в терминах объектно-ориентированного программирования. Модели типа "Сущность-Связь". Диаграммы состояний. Построение объектных моделей для предметных областей, описанных в учебных проектах. 3. Объектно-ориентированное проектирование программ. Использование наследования и включения для моделирования отношений между сущностями. Методики объектно-ориентированного проектирования: Кода Йордана, Буча, Шлаера-Меллора. Системы поддержки объектно-ориентированного проектирования. Проектирование реализации учебного программного проекта; проектирование ведется с использованием одной из методологий проектирования, изложенных в курсе лекций, и с использованием программных средств поддержки методологии. 4. Объектно-ориентированные возможности современных языков программирования. Обзор языков Smalltalk, CLOS, C++, Java и Self. Параметрический полиморфизм в объектно-ориентированных языках программирования. Написание реализаций учебных проектов на различных языках программирования. 5. Объектно-ориентированное метапрограммирование. Метаобъекты. Метаобъектные протоколы и их использование для расширения языков программирования. Аспектноориентированное программирование. Использование протоколов метаобъектов как альтернативного способа реализации учебных программных проектов.
4
5. Практические занятия и лабораторные работы 5.1. Лабораторные занятия № п/п 1 2 3 4 5
№ раздела Наименование лабораторных работ дисциплины 1 Основные понятия объектно-ориентированного программирования 2 Объектно-ориентированный анализ 3 Объектно-ориентированное проектирование программ 4 Объектно-ориентированные возможности современных языков программирования 5 Объектно-ориентированное метапрограммирование
6. Учебно-методическое обеспечение дисциплины 6.1. Рекомендуемая литература 1. К. Ш. Тан, В.-Х. Стиб, Й. Харди, Символьный C++. Введение в компьютерную алгебру с использованием объектно-ориентированного программирования, Мир, 2001, 624 стр. 2. Буч Г., Объектно-ориентированный анализ и проектирование с примерами приложений на С++, "Невский Диалект", 2001, 560 стр. 3. Иванова Г. С. Ничушкина Т. Н. Пугачев Е. К., Объектно-ориентированное программирование : Учебник для вузов, Издательство Московского государственного технического университета, 2001, 320 стр. 4. Эдвард Йордон, Карл Аргила "Структурные модели в объектно-ориентированном анализе и проектировании", Лори, 1999, 268 стр. 6.2. Средства обеспечения освоения дисциплины Стандартный набор программного обеспечения, пакет программ для программирования на C++. 7. Материально-техническое обеспечение дисциплины Компьютерный класс стандартного образца. Программа составлена в соответствии с Государственным образовательным стандартом высшего профессионального образования и примерной программой дисциплины. Программу составили: кафедра компьютерных технологий ассистент кафедры
Повышев Владислав Вячеславович
Программа одобрена на заседании УМК факультета (или УМК цикла дисциплин) ___________________________________________________________________ _____________________________
___________________ (подпись) Ф.И.О.