Методическое руководство по изучению дисциплины

«Высокоуровневые методы информатики и программирования»

для студентов специальности 080801 – «Прикладная информатика

в экономике»

Руководство необходимо для общего ознакомления с дисциплиной и содержит сведения:

1. Данные о запланированной трудоемкости по дисциплине с ее распределением по видам работ и заданий (табл. 1):

Таблица 1

Вид занятий

Всего

(час.)

Семестры

1

2

3

4

5

6

7

8

9

10

Всего аудиторных занятий:

85

34

51

Лекции

34

17

17

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

51

17

34

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

112

50

62

Курсовой проект (работа)

36

36

Расчетно-графическая работа

20

20

Проработка лекционного курса

56

30

26

Всего по курсу

Вид аттестации за семестр (зачет, экзамен)

Экз

Экз

Экз

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

Дисциплина «Высокоуровневые методы информатики и программирования» (ВМИиП) является базовой дисциплиной и обеспечивает эффективное изучение профилирующих дисциплин, предусматривающих работу студентов с вычислительной техникой и техническими средствами сбора и обработки информации.

Целью дисциплины «Высокоуровневые методы информатики и программирования» является изучение теоретических основ разработки алгоритмов и приобретение практических навыков использования современных средств программирования. Основное внимание уделяется проектированию структур данных, изучению объектно-ориентированного стиля программирования и особенностям разработки оконных приложений в операционной системе MS Windows.

НЕ нашли? Не то? Что вы ищете?

Основные задачи дисциплины:

1) приобретение студентами теоретических знаний по высокоуровневым методам информатики и программирования ;

2) приобретение навыков практической работы по высокоуровневым методам информатики и программирования с использованием среды визуального программирования Delphi.

Требования к уровню подготовки студента

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

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

· иметь представление об особенностях разработки приложений в различных операционных системах;

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

· знать разновидности и особенности использования информационных структур данных;

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

· уметь пользоваться средой визуального программирования Delphi;

· уметь пользоваться особенностями операционной системы (оконный интерфейс, многозадачность и т. д.) при разработке приложений.

3. Темы лекций, практических (и/или лабораторных и др.) работ, порядок их прохождения, график СРС, ссылки на соответствующие методические указания и практикумы представлены в технологической карте (табл. 2)

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

Таблица 2

Неделя

Вид работ

Часы

Рекомендации по литературе

Рейтинговые баллы

мин

макс

2 семестр

1-2

Лекция 1. Предмет курса, его цели и задачи. Тенденции развития технологий разработки программ. Понятие о стилях программирования. Процедурное, объектное и объектно-ориентированное программирование.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

2

3

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

2

МУ к лабораторным работам

2

3

4

Лекция 2. Программирование в ОС MS Windows. Особенности разработки оконных приложений. Обзор языков программирования и средств разработки, краткая история их развития. Пользовательский и программный интерфейс. Многозадачность.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

2

5

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

2

МУ к лабораторным работам

2

3

6

Лекция 3. Основы ООП. Понятие и общие принципы объектно-ориентированного программирования. Достоинства и недостатки ООП. Объектный тип данных. Инкапсуляция.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

2

7

Лабораторная работа 3. Объектно-ориентированные средства языка Pascal. Сравнение записей и объектов. Поля и методы объектов, их область видимости.

2

МУ к лабораторным работам

2

3

Текущий контроль

1

2

8

Лабораторная работа 4. Изучение возможностей объектов. Массивы объектов и использование объектов в качестве параметров.

2

МУ к лабораторным работам

2

3

9

Лекция 4. Наследование и полиморфизм. Производные классы. Скрытые поля и методы. Простой полиморфизм.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

2

10

Лабораторная работа 5. Наследование. Классы. Создание производного класса, переопределение полей и методов.

2

МУ к лабораторным работам

2

3

Текущий контроль

1

2

11

Лабораторная работа 6. Простой полиморфизм. Перегрузка методов.

2

МУ к лабораторным работам

2

3

11-12

Лекция 5. Сложный полиморфизм. Виртуальные методы. Создание и удаление объектов. Конструкторы и деструкторы. Абстрактный базовый класс.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

2

13

Лабораторная работа 7. Сложный полиморфизм. Определение и использование виртуальных методов, их отличие от статических. Абстрактный базовый класс.

3

МУ к лабораторным работам

2

3

14

Лекция 6. Объектная модель MS Windows. Основные объекты MS Windows (окна, процессы, потоки), их разновидности. Библиотека интерфейсных функций WinAPI.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

2

15

Лабораторная работа 8. Работа с памятью. Размещение объекта в памяти и его удаление (конструктор и деструктор). Исправление утечки памяти. Виртуальный деструктор.

2

МУ к лабораторным работам

2

3

16

Лекция 7. Структура оконных приложений. Пример простейшего приложения с использованием WinAPI. Механизм передачи и обработки оконных сообщений

2

МУ к лабораторным работам

17

Лекция 8. Основы работы в среде Delphi. Принципы визуального программирования. Знакомство со средой Delphi. Система меню. Инспектор объектов. Палитра компонентов. Редакторы кода и формы. Пример создания простого приложения.

3

Конспект лекций,
учебное пособие

Прием расчетно-графической работы

16

20

Промежуточная аттестация (экзамен по дисциплине)

20

40

Итого

60

100

4 семестр

1

Лекция 9. Библиотека визуальных компонентов. Изучение основных визуальных компонентов. Свойства, методы и события.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

1.5

Лабораторная работа 9. Приложение MS Windows. Пример простого оконного приложения на основе функций WinAPI.

2

МУ к лабораторным работам

1

1.5

2

Текущий контроль

1

1.5

Лабораторная работа 10. Стандартные компоненты Windows Окно приложения, кнопка, элементы ввода текста, окно сообщений. Обработка оконных сообщений.

2

МУ к лабораторным работам

1

1.5

Текущий контроль

1

1.5

Лабораторная работа 11. Дополнительные средства работы с окнами. Графические средства окна. Некоторые часто используемые функции WinAPI.

2

МУ к лабораторным работам

1

1.5

3

Текущий контроль

1

1.5

Лабораторная работа 12. Разработка в среде Delphi. Изучение возможностей Delphi, знакомство с системой меню. Создание простейшего окна. Основные свойства, методы и события компонентов.

2

МУ к лабораторным работам

1

1.5

Лекция 10. Библиотека визуальных компонентов. Компоненты с точки зрения ООП, иерархия классов в Delphi.

2

Конспект лекций,
учебное пособие

4

Текущий контроль

1

1.5

Лабораторная работа 13. Углубленное изучение Delphi. Компоненты из раздела “Стандартные” и “Дополнительные”. Графические средства.

2

МУ к лабораторным работам

1

1.5

Лекция 11. Многозадачность. Обоснование необходимости использования многозадачности. Создание дополнительного рабочего потока. Механизм обмена данными между потоками. Проблемы, связанные с многозадачностью, средства синхронизации.

2

Конспект лекций,
учебное пособие

5

Текущий контроль

1

1.5

Лабораторная работа 14. Многозадачность. Пример выделения трудоемких процедур вычисления в дополнительный поток, сравнение с однопоточным вариантом, преимущества использования многозадачности.

2

МУ к лабораторным работам

1

1.5

Текущий контроль

1

1.5

Лабораторная работа 15. Углубленное изучение Delphi. Многооконный интерфейс. Файловые диалоги.

2

МУ к лабораторным работам

1

1.5

6

Лекция 12. Динамическая память. Указатели. Выделение и освобождение памяти. Линейный динамический массив. Массив указателей. Двумерные массивы.

2

Конспект лекций,
учебное пособие

Лекция 13. Данные с динамической структурой. Списки их преимущества и недостатки. Виды списков. Стеки, деки, очереди, деревья. Операции со списками.

2

Конспект лекций,
учебное пособие

7

Текущий контроль

1

1.5

Лабораторная работа 16. Списки. Реализация объекта “Список”.

2

МУ к лабораторным работам

1

1.5

Лекция 14. Стек. Реализация класса “Cтек”. Примеры использования. Стековый калькулятор.

2

Конспект лекций,
учебное пособие

8

Текущий контроль

1

1.5

Лабораторная работа 17. Стек. Реализация объекта “Стек”.

2

МУ к лабораторным работам

1

1.5

9

Лекция 15. Очередь и дек. Реализация классов “Очередь” и “Дек”.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

1.5

Лабораторная работа 18. Очереди. Реализация объектов “Очередь” и “Дек”.

2

МУ к лабораторным работам

1

1.5

10

Лекция 16. Деревья. Операции над бинарными деревьями.

2

Конспект лекций,
учебное пособие

11

Лекция 17. Стандартные средства Delphi для работы с динамическими структурами. Классы TList, TQueue, TStack. Примеры их применения.

2

Конспект лекций,
учебное пособие

Текущий контроль

1

1.5

Лабораторная работа 19. Углубленное изучение Delphi. Создание пользовательского меню и списка событий.

2

МУ к лабораторным работам

1

1.5

12

Текущий контроль

1

1.5

Лабораторная работа 20. Углубленное изучение Delphi. Приложения SDI, MDI.

2

МУ к лабораторным работам

1

1.5

13

Текущий контроль

1

1.5

Лабораторная работа 21. Углубленное изучение Delphi. Библиотеки динамической компоновки.

2

МУ к лабораторным работам

1

1.5

14

Текущий контроль

1

1.5

Лабораторная работа 22. Синхронизация потоков. Пример нарушения данных при одновременном доступе. Передача результатов вычислений в основной поток. Метод Synchronize.

2

МУ к лабораторным работам

1

1.5

15

Текущий контроль

1

1.5

Лабораторная работа 23. Синхронизация потоков. Синхронизация с помощью пользовательских сообщений. Использование классов TEvent и TCriticalSection.

2

МУ к лабораторным работам

1

1.5

16

Текущий контроль

1

1.5

Лабораторная работа 24. Динамическая память. Указатели. Одномерные динамические массивы.

2

МУ к лабораторным работам

1

1.5

17

Текущий контроль

1

1.5

Лабораторная работа 25. Многомерные структуры. Массивы указателей. Двумерный массив.

2

МУ к лабораторным работам

1

1.5

Текущий контроль

1

1.5

Лабораторная работа 26. Пример использования стека. Стековый калькулятор и компилятор формулы.

2

МУ к лабораторным работам

1

1.5

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

4

6

Промежуточная аттестация (экзамен по дисциплине)

20

40

Итого

60

100

Заведующий кафедрой прикладной математики

и информационных систем

Составители