Рабочая программа по дисциплине: «высокоуровневые методы информатики и программирования» Для специальности

Вид материалаРабочая программа

Содержание


Профилирующая кафедра
Учебный план наборов
Лабораторные занятия
Общая трудоемкость
1. Цели и задачи дисциплины и ее место в учебном процессе
Задачи изучения дисциплины
Краткая информация о предмете курса
2. Содержание дисциплины
2.2 Лабораторные занятия
Рейтинговая оценка успеваемости
Курсовое проектирование
Учебно-методические материалы по дисциплине
Дополнительная литература
4. Катаев М.Ю.
Подобный материал:

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ


Томский государственный университет систем управления и радиоэлектроники (ТУСУР)






УТВЕРЖДАЮ




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

_________________М.Т.Решетников

_________________2007



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


По дисциплине: «ВЫСОКОУРОВНЕВЫЕ МЕТОДЫ ИНФОРМАТИКИ И ПРОГРАММИРОВАНИЯ»


Для специальности: 080801-Прикладная информатика в экономике



Факультет: Систем Управления

Профилирующая кафедра: Автоматизированных систем управления

Курс: 2




Семестр: 3













Учебный план наборов 2005г. и последующих лет







Распределение учебного времени










Всего часов




Лекции

18




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

18




Самостоятельная работа:

38




Общая трудоемкость:

74




Курсовой проект:

3-ий семестр




Зачет:

3-ий семестр






2007


Рабочая программа составлена на основании ГОС ВО для специальности 080801 «Прикладная информатика в экономике» утвержденного 27 марта 2000г., рассмотрена и утверждена на заседании кафедры «__»____________2007г., протокол №______


Разработчик

профессор, д.т.н. кафедры АСУ __________________ Катаев М.Ю.


Зав. обеспечивающей

кафедрой профессор, д.т.н. ___________________________ Кориков А.М.


Рабочая программа согласована с факультетом, профилирующей кафедрами специальности


Декан профессор, д.т.н. __________________________Замятин В.Н.


Зав. профилирующей

кафедрой профессор, д.т.н. ___________________________ Кориков А.М.


Зав. выпускающей

кафедрой профессор, д.т.н. ______________________ Кориков А.М.

1. ЦЕЛИ И ЗАДАЧИ ДИСЦИПЛИНЫ И ЕЕ МЕСТО В УЧЕБНОМ ПРОЦЕССЕ


ЦЕЛЬ КУРСА - ознакомить студентов с основами Объектно Ориентированного Программирования (далее ООП) как современного подхода к программированию и подготовить их к решению различных экономических задач с использованием различных методов программирования.


ЗАДАЧИ ИЗУЧЕНИЯ ДИСЦИПЛИНЫ состоят в том, что в результате ее изучения студенты должны:

- знать основы теории и общие методологические принципы ООП;

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

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

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


КРАТКАЯ ИНФОРМАЦИЯ О ПРЕДМЕТЕ КУРСА

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

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

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


ПРЕИМУЩЕСТВА, которые получает пользователь ООП по отношению к программным системам других типов:

· Проще в разработке и меньше по объему (малые затраты и времени).

· Проще в использовании и модернизации (возможность внесения изменений).

· Естественным образом защищается информация о данных и программы.

· Регламентация четких и строгих действий, допустимых над объектами.

· Возможность внесения изменений (естественное) в работающую программу.


2. СОДЕРЖАНИЕ ДИСЦИПЛИНЫ


2.1 ЛЕКЦИИ

ТЕМА -1- (2 часа) Введение в ООП (сумма=2).

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

2. Постоянная зависимость от технической оснащенности, страны, развитие средств записи и хранения и отображения информации ...

3. Элементы структурного, модульного и логического программирования.

4. Этапы разработки программного обеспечения (временные) и требования: которым оно должно отвечать.


ТЕМА -2- (2 часа) Основные составляющие ООП (сумма=4)

Самостоятельная работа 2 часа.

1. Три источника и три составные части ООП (краткие определения):

а) инкапсуляция, б) полиморфизм и в) наследование.

2. Основные понятия ООП на русском и английском языках с определениями.

3. Словарь терминов ООП.


ТЕМА -3- (2 часов) Место ООП в мире программ и техники. Методология подготовки и написания ОО программ (сумма=6) Самостоятельная работа 2 часа.

1. Требования предъявляемые к ООП программам

2. Связь ООП с техническими особенностями (PC, Cray, Sun,…)

3. Преимущества и недостатки ООП

4. Особенности ООП в DOS и Windows

5. Возможно ли ООП в ОС UNIX, OS, SUN ...

6. Методологии проектирования ОО программных систем (OMT, SA/SD,JSD…)


ТЕМА -4- (4 часа) ОО программирование в языке С++(сумма=10)

Самостоятельная работа 2 часа.

1. ОО язык С++. Элементы языка отвечающие за ОО (класс, функции-друзья, функции, конструкторы и деструкторы, правила доступности членов класса, иерархия членов класса, дерево классов, механизм наследования, подкласс)

2. Примеры на С++, поясняющие основные возможности ООП.

3. Библиотека классов С++ в разработках разных компаний Zortex, Borland, Microsoft и др.

4. Возможности и недостатки ОО программирования в С++


ТЕМА -5- (2 часов) Разработка приложений в среде Windows (сумма=12).

Самостоятельная работа 2 часа.

1. Версии Windows. Как работает Windows (краткое описание)

2. Функции, которые создают объекты. Компилятор ресурсов.

3. Классы окон. Функции окон. редактор ресурсов. Редактор шрифтов.

4. Графика. Интерфейс с графическими устройствами. (GDI)


ТЕМА –6- (2 часа) Обзор языков положенных в основу Visual C++ (сумма=14)

Самостоятельная работа 2 часа.

1. Язык Visual C++.

1. CTalk

2. Objective C

3. Views

4. Графика, Базовые классы, соглашения, создание меню, генераторы интерфейсов, коммуникационный и сетевой класс, ускорители приложений, коллекции, сообщения.


ТЕМА -7- (2 часов) Элементы графического проектирования программных систем (сумма=16 ) Самостоятельная работа 2 часа.

1. Сообщения. Контексты дисплея. Элементы оконных интерфейсов.

2. Управляющие элементы. Пиктограммы. Меню.

3. Кнопки. Линии прокрутки. Диалоги. Окна списков.

4. Всплывающие меню. Комбинированные окна. Окна с владельцем.

5. Динамически подключаемые библиотеки (DLL).

6. Интерфейс со многими документами (MDI).

7. Динамический обмен данными (DDE).

8. Связывание и включение объектов (OLE).

9. Пакетные утилиты Windows. Приложения _Windows.


ТЕМА -8- (2 часа) Обзор пакетов разных фирм основанных на ООП (сумма=18)

Самостоятельная работа 2 часа.

1. Научные пакеты (Word, Origin, Matematica, Matlab, Grapher, MahtCad, ...)

2. Деловые пакеты (Word, Excel, PowerPoint…)

3. Пакеты баз данных и электронных таблиц (Fox Pro, Excel, Oracle, Acsess, Clarion).

4. Графические пакеты (Image, ObjectGraphics, ...).

5. Базовые пакеты для разработки ПО (Visual Basic, Visual C, Delphi)


2.2 ЛАБОРАТОРНЫЕ ЗАНЯТИЯ

ТЕМА -1- (2 часа) Ознакомление с основами ООП (сумма=2)

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

1. Изучение классов (определение, возможности, компоненты)


ТЕМА -2- (2 часа) Ознакомление с основами ООП (сумма=4)

1. Изучение наследования.

2. Защита информации при передачи данных.


ТЕМА -3- (2 часа) Ознакомление с основами ООП (сумма=6)

1. Изучение полиморфизма.


ТЕМА -4- (2 часа) Ознакомление с основами ООП (сумма=8)

1. Конструктор-Деструктор (возможности).


ТЕМА -5- (2 часа) Необходимые технические возможности для ООПх (сумма=10)

1. Технические воэможности осуществления ООПрограммирования (видеоадаптер, драйверы, виды памяти (основная, расширенная, XMS, EMS ...)

2. Возможности Windows для поддержки ООПрограммирования.

3. Изучение Windows как ООСреду (графические объекты, сообщения,...)


ТЕМА -3- (2 часа) Изучение ОО программирования в среде WINDOWS (сумма=12)

1. Графические примитивы WINDOWS (окна, меню, масштабирование, прокрутка, и др.)

2. Графика в среде WINDOWS (пиксел, прямоугольник, круг ...)

3. Системы координат и их роль в графике (видеосистемы, разрешение, привязка и масштабирование, шкалирование)


ТЕМА -4- (6 часов) Простейшие примитивы ОО программ (сумма=18)

1. Построение программы реализующей виды окон (всплывающие, постоянные, и др.)

2. Построение программы реализующей поиск и открытие файла (OPEN FILE)

3. Разработка текстового редактора позволяющего найти файл на диске и др. возможности.

3. РЕЙТИНГОВАЯ ОЦЕНКА УСПЕВАЕМОСТИ


Контроль обучения – экзамен

Максимальное количество баллов – 120

Рейтингу 60–79 баллов соответствует оценка «удовлетворительно»

Рейтингу 80–99 баллов соответствует оценка «хорошо»

Рейтингу 100–120 баллов соответствует оценка «отлично»

Для допуска к экзамену следует набрать 61 балл.


Система рейтинга:



1



1–17 недели



Посещение лекций (9)


2 балла/лекция

(всего – 18)



2


1–17 недели


Курсовой проект

Теоретическая часть------------------------------

Практическая часть-------------------------------


42 балла

16 баллов

26 баллов



3


9–17 недели


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


Теоретическая часть------------------------------

Практическая часть-------------------------------


10 баллов

(всего 40 баллов)

4 баллов

6 баллов



4


1–17 недели



Индивидуальное творческое задание. Устное выступление. Презентация. Отчет.


20 баллов


Всего часов

120


4. КУРСОВОЕ ПРОЕКТИРОВАНИЕ


Курсовое проектирование связано с выполнением заданий, позволяющих освоить программирование на языке С++. Каждому студенту выдаются задания:

Условные операторы

Операторы цикла

Операторы перехода и выбора

void и void*?

Указатель

Заголовочные файлы

Команды препроцессора

Оператор enum

Определение класса

компоненты класса объявленные public, private, protected

Как осуществляется доступ к полям данных и функциям объекта после определения класса

Понятие struct и union

Перегрузка

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

Полиморфизм

Раннее и позднее связывание

Абстрактный класс

Виртуальный метод

Дружественные классу функции

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

Переопределение

Ключевое слово this

Операция разыменования

Определение объектно-ориентированного подхода

Объектная декомпозиция


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


5 . УЧЕБНО-МЕТОДИЧЕСКИЕ МАТЕРИАЛЫ ПО ДИСЦИПЛИНЕ

ОСНОВНАЯ ЛИТЕРАТУРА

1. Борковский, Аркадий Борисович. Англо-русский словарь по программированию и информатике (с толкованиями): Около 6000 терминов/ Аркадий Борисович Борковский. - М.: Московская международная школа переводчиков, 1992. - 335 с. (19*)

2. Информатика. Базовый курс: Учебник для вузов/ С. В. Симонович [и др.]; ред. : С. В. Симонович. - 2-е изд. - СПб.: Питер, 2007. - 639 с. (30)

3. Одинцов, Игорь Олегович. Профессиональное программирование. Системный подход/ И. О. Одинцов. - 2-е изд., перераб. и доп. - СПб.: БХВ-Петербург, 2004. - 610 с. (30)

4. Рассохин, Дмитрий. От Си к Си++: учебное пособие/ Дмитрий Рассохин. - М.: ЭДЭЛЬ, 1993. - 128 с. (20)

ДОПОЛНИТЕЛЬНАЯ ЛИТЕРАТУРА

5. Скляров, Валерий Анатольевич. Программирование на языках Си и Си++: Практическое пособие/ Валерий Анатольевич Скляров. - М.: Высшая школа, 1996. - 240 с. (16)

6. Подбельский, Вадим Валериевич. Язык СИ++: Учебное пособие для вузов/ Вадим Валериевич Подбельский. - 5-е изд. - М.: Финансы и статистика, 2002. - 560 с. (18)

7. Касаткин, Александр Иванович. Профессиональное программирование на языке Си. Управление ресурсами: Справочное пособие/ Александр Иванович Касаткин. - Минск: Вышэйшая школа, 1992. - 432 с. (19)

1. Катаев М.Ю. Высокоуровневые методы информатики и программирования. Учебное пособие. – Томск: ТУСУР, 2006. - 144 с.

2. Катаев М.Ю. Высокоуровневые методы информатики и программирования. Учебно-методическое пособие. – Томск: ТУСУР, 2006. - 39 с.

3. Катаев М.Ю. Методические указания по выполнению курсовых работ по дисциплине Высокоуровневые методы информатики и программирования. – Томск: ТУСУР, 2006. - 37 с.

4. Катаев М.Ю. Объектно-ориентированное программирование на языке С++. – Томск: ТУСУР, 2006. – 129 с.

5. Катаев М.Ю. Объектно-Ориентированное программирование: лабораторный практикум. – Томск: ТУСУР, 2006. - 68 с.

6. Катаев М.Ю., Ткаченко Д.В. Спецкурс 1: Визуальное программирование. Учебное пособие. – Томск: ТУСУР, 2006. - 98 с.

7. Катаев М.Ю., Ткаченко Д.В. Спецкурс 1: Визуальное программирование: лабораторный практикум. – Томск: ТУСУР, 2006. - 44 с.

*При указании литературы, в конце библиографического описания издания, в скобках указано количество экземпляров в библиотеке ТУСУР.