Департамент образования города Москвы

Государственное образовательное учреждение

высшего профессионального образования города Москвы

«Московский городской педагогический университет»

Институт математики и информатики

Факультет прикладной информатики

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

УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС

УЧЕБНОЙ ДИСЦИПЛИНЫ

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

для студентов,

обучающихся на факультете прикладной информатики

по специальности 080801

«Прикладная информатика (в менеджменте)»

Москва

2010

Часть I. Программа учебной дисциплины

Программа обсуждена и утверждена на заседании кафедры прикладной информатики в управлении (протокол №___от «__»________2010 г.), утверждена на заседании ученого совета факультета прикладной информатики

Составитель: доцент кафедры прикладной информатики в управлении, кандидат физико-математических наук А.

© , 2010.

© МГПУ, 2010.

Программа соответствует требованиям ГОС ВПО от 14 марта 2000 г по специальности 351400 (080801) «ПРИКЛАДНАЯ ИНФОРМАТИКА (по областям)» на дисциплину Высокоуровневые методы информатики и программирования.

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

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

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

Чтобы реализовать на практике применение компетентностного подхода при изучении выбранной дисциплины и определить требования к образовательному процессу, необходимо задать компетенции в деятельностной форме. А это значит, студенты должны знать и владеть новейшими направлениями в области создания технологий программиро-

вания. Знать законы эволюции программного обеспечения. Иметь навык программирования в средах современных информационных систем: создание модульных программ, элементы теории модульного программирования, объектно-ориентированное проектирование и программирование. Знать объектно-ориентированный подход к проектированию и разработке программ: сущность объектно-ориентированного подхода; объектный тип данных; переменные объектного типа; инкапсуляция; наследование; полиморфизм; классы и объекты. Конструкторы и деструкторы. Особенности программирования в оконных операционных средах. Уметь создавать основные стандартные модули, обеспечивающие работу в оконной операционной среде. Знать среду разработки; система окон разработки; система меню. Уметь отладить и тестировать программы. Знать и владеть основами визуального программирования. Размещение нового компонента. Реакция на события. Компоненты; использование компонентов.

Вот те навыки, которые должны составлять компетенции студентов, прослушавших курс Высокоуровневые методы информатики и программирования.

Дидактические единицы стандарта:

Новейшие направления в области создания технологий программирования. Законы эволюции программного обеспечения.

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

Объектно-ориентированный подход к проектированию и разработке программ: сущность объектно-ориентированного подхода; объектный тип данных; переменные объектного типа; инкапсуляция; наследование; полиморфизм; классы и объекты.

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

Место дисциплины в учебном процессе: второй курс (3-й семестр) по очной форме обучения (полный срок обучения). Изучение предусмотрено в цикле общепрофессиональных дисциплин.

Количество часов: 70, в том числе 34 часа – самостоятельная работа студента, 36 часов аудиторные занятия, из них 20 часов - лекционные занятия и 16 часов - лабораторные работы.

Форма итоговой аттестации – зачет.

Цель курса:

данный курс является продолжающим курсом по специальности. Его цель–формирование устойчивых навыков использования современных методов разработки программного обеспечения в учебной и профессиональной деятельности. Изучение высокоуровневых методов программирования. Использование языка высокого уровня Object Pascal для создания приложений. Материал курса закрепляется лабораторными занятиями.

Задачи дисциплины:

Задачей курса является

- изучение языка высокого уровня Object Pascal. Изучение теоретических основ высокоуровневых методов программирования.

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

- приобретение студентами навыков практической работы создания различных приложений: текстового редактора, графических приложений, работы с базами данных,

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

Предварительные требования к уровню освоению курса и связь с другими дисциплинами:

общее знакомство с вычислительной техникой в объеме курса “Информатика и программирование”, в котором изучаются программные средства информационных систем, в том числе текстовые редакторы, электронные таблицы, СУБД и др. в среде IBM Microsoft Windows.

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

иметь представление:

–  об основных методах высокоуровневого программирования;

–  о языку программирования Object Pascal;

–  знать:

–  синтаксис, семантику языка программирования Object Pascal и области эффективного применения;

–  форматы основных команд;

–  как создаются приложения в средах быстрой разработки программ;

уметь:

- использовать современные системные программные средства:

- пользоваться инструментальными средствами создания приложений;

–  пользоваться системой быстрого программирования;

приобрести навыки:

–  работы в качестве программиста;

2. Распределение бюджета времени при изучении дисциплины

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

Раздел, тема

Всего

часов

В том числе

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

(час.)

Лекции

(час.)

Лаб. Занятия (час.)

Тема 1. Этапы развития языков программирования

6

4

2

Тема 2. Объектно-ориентированный подход к разработке программного обеспечения

10

8

2

Тема 3. Основы Object Pascal

12

8

2

2

Тема 4. Среда быстрой разработки приложений Delphi

20

8

4

8

Тема 5. Компонентная разработка приложений

22

6

10

6

Форма отчетности

зачет

ВСЕГО по курсу:

70

34

20

16

Форма отчетности: зачет

3. Основное содержание дисциплины

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

Тема 1. Этапы развития языков программирования

Программа и программирование. Языки программирования 1-го, 2-го и 3-го поколений их достоинства и недостатки. Трансляторы. Понятие структурного программирования. Типизация данных и типизированные языки программирования. Элементы теории модульного программирования. Принцип модульности. Структура модуля. Основные факторы, определяющие качество программного обеспечения. Недостатки традиционных языков программирования и причины появления объектно-ориентированного подхода.

Тема 2. Объектно-ориентированное программирование

Объектно-ориентированный подход к проектированию и разработке программ: сущность объектно-ориентированного подхода; объектный тип данных; переменные объектного типа; инкапсуляция; наследование; полиморфизм; классы и объекты. Конструкторы и деструкторы.

Тема 3. Основы Object Pascal

Правила кодирования. Структура программы. Типы данных. Массивы. Операторы выбора. Операторы циклов. Общие правила форматирования исходного кода.

Тема 4. Среда быстрой разработки приложений Delphi

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

Тема 5. Компонентная разработка приложений

Компоненты ввода и отображения текстовой, цифровой и иерархической информации. Обеспечение защиты от неправильного ввода; обработка исключительных ситуаций. Кнопки, индикаторы, управляющие элементы. Компоненты внешнего оформления. Разработка меню. Системные диалоги. Компоненты отображения графической информации.

Литература:

Основная литература.

1.  Брукшир, Дж., Гленн. Введение в компьютерные науки. Общий обзор, 6-е издание.: Пер. с англ. – М.: Издательский дом «Вильямс», 2001 – 688 с.

2.  Мельников -ориентированное программирование. М.: МО, 1998.

3.  Объектно-ориентированное конструирование программных систем. М.:"Русская редакция", 2005.

4.  Фаронов Паскаль 7.0. Начальный курс. Учебное пособие. Издание 7-е, переработанное. – М.: «Нолидж», 2001 – 576 с.

5.  . Программирование в Delphi 7. М.: «Бином», 2003.

Дополнительная литература.

1.  «Графика в проектах Delphi», Издательство: Символ, 2008

2.  «Delphi в задачах и примерах», Издательство: BHV, 2008

3.  Рубенкинг «Delphi для "чайников"», Издательство: Вильямс, 2007

Часть II. Методические рекомендации и план
освоения учебной дисциплины

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

Методические рекомендации и план освоения дисциплины обсуждены и утверждены на заседании кафедры прикладной информатики в управлении (протокол №___от «__»________2010 г.)

для студентов,

обучающихся на факультете прикладной информатики

по специальности 080801

«Прикладная информатика в менеджменте»

Форма обучения – очная (полный срок обучения)

- курс – второй, семестр – третий

- лекции 20 часов по учебному плану,

- лабораторные работы - 16 часа по учебному плану

- самостоятельная работа - 34 часов по учебному плану

- всего часов - 70, зачет в конце третьего семестра.

Составитель: доцент кафедры прикладной информатики в управлении МГПУ, к. ф.-м. н. ;

заведующий кафедрой прикладной информатики в управлении, к. т.н., доцент

©, 2010.

© МГПУ, 2010.

1.  Тематический план курса

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

1.1.  Лекции

Тема 1. Этапы развития языков программирования 2 часа

Программа и программирование.

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

Литература по теме:

1. Брукшир, Дж., Гленн. Введение в компьютерные науки. Общий обзор, 6-е издание.: Пер. с англ. – М.: Издательский дом «Вильямс», 2001 – 688 с.

Изучив данную тему, студент должен: знать

-  понятие структурного программирования;

-  виды языков программирования;

-  элементы теории модульного программирования;

-  структуру модуля;

уметь

-  определить структуру данных;

-  создать программный модуль;

приобрести навыки

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

Тема 2. Объектно-ориентированное программирование 2 часа

Объектно-ориентированный подход к проектированию и разработке программ: сущность объектно-ориентированного подхода; объектный тип данных; переменные объектного типа; инкапсуляция; наследование; полиморфизм; классы и объекты. Конструкторы и деструкторы.

Литература по теме:

1.  Мельников -ориентированное программирование.

2.  М.: МО, 1998.

2. Объектно-ориентированное конструирование программных систем. М.:"Русская редакция", 2005.

Изучив данную тему, студент должен: знать

-  сущность объектно-ориентированного подхода (ООП) программирования;

-  основные характеристики (ООП);

-  типы данных;

-  переменные объектного типа;

-  конструкторы и деструкторы;

уметь

-  определить тип данных;

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

приобрести навыки

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

-  применения конструкторов и деструкторов;

Тема 3. Основы Object Pascal 2 часа

Правила кодирования. Структура программы. Типы данных. Массивы. Операторы выбора. Операторы циклов. Общие правила форматирования исходного кода.

Литература по теме:

1.  Фаронов Паскаль 7.0. Начальный курс. Учебное пособие. Издание 7-е, переработанное. – М.: «Нолидж», 2001 – 576 с.

Изучив данную тему, студент должен: знать

-  правила кодирования;

-  общие правила форматирования исходного кода;

уметь

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

приобрести навыки

- использования операторов выбора;

- использования операторов цикла;

Тема 4. Среда быстрой разработки приложений Delphi 4 часа

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

Литература по теме:

1.  . Программирование в Delphi 7. М.: «Бином», 2003.

Изучив данную тему, студент должен: знать

-  систему окон разработки;

-  основы визуального программирования;

-  основные стандартные модули;

-  основы визуального программирования;

-  как разместить новый компонент;

уметь

-  программировать в оконных средах;

-  отлаживать и тестировать программы;

приобрести навыки

-  программирования в оконных средах;

-  размещения нового компонента;

-  применения приемов отладки и тестирования программ;

Тема 5. Компонентная разработка приложений 10 часов

Компоненты ввода и отображения текстовой, цифровой и иерархической информации. Обеспечение защиты от неправильного ввода; обработка исключительных ситуаций. Кнопки, индикаторы, управляющие элементы. Компоненты внешнего оформления. Разработка меню. Системные диалоги. Компоненты отображения графической информации.

Литература по теме:

1.  Объектно-ориентированное конструирование программных систем. М.:"Русская редакция", 2005.

2. Архангельский в Delphi 7. М.: «Бином», 2003.

Изучив данную тему, студент должен: знать

-  компоненты ввода и отображения текстовой, цифровой и иерархической информации;

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

-  компоненты внешнего оформления;

-  компоненты отображения графической информации;

уметь

-  программировать исключительные ситуации;

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

приобрести навыки

-  программирования системных диалогов;

-  разработки меню пользователя;

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

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

Общая характеристика работы

В процессе выполнения работы студент осваивает как отдельные элементы, так и интегрированные ИТ. Для этого он выполняет следующие шаги:

-  изучает сущность задачи;

-  строит математическую модель задачи;

-  разрабатывает и записывает алгоритм;

-  реализует разработанный алгоритм на Object Pascal;

-  отлаживает и тестирует программный модуль;

-  разрабатывает краткий отчёт о проделанной работе посредством текстового процессора или средствами презентационной графики;

-  посредством технологии OLE включает в отчёт таблицы, графики, схемы, разработанные в среде других приложений;

- используя Web-технологии, включает в отчёт ссылки на внешние источники (Web-страницы, адреса электронной почты, другие файлы с необходимой информацией);

- оформляет отчёт с использованием ГОСТ.

Структура и содержание отчёта

Отчет состоит из следующих разделов:

1.Введение

Во введении указываются цели работы (из описания заданий в лабораторных работах) и используемые ИТ.

2. Постановка задачи

Формулируется постановка задачи своего варианта задания.

4.  Решение задачи

Приводится математическая модель, алгоритм решения задачи, программный код, разработанное меню пользователя.

5.  Результаты тестирования программного модуля

Приводятся данные для тестирования, результаты сводятся в таблицу, делаются выводы и возможности и область применения созданного программного модуля.

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

Лабораторная работа №1.

Цель работы: Изучение среды разработки Delphi. Простейшая программа.

Рассматриваемые вопросы: Среда разработки Delphi; система окон разработки; система меню. Структура программы. Компоненты. Обработчики событий.

Литература: [1-5]

Тема 4 - 2ч

Лабораторная работа №2.

Цель работы: Разработка арифметического калькулятора.

Рассматриваемые вопросы: Компоненты ввода-вывода текстовой информации. Управляющие элементы. Защита информации от неправильного ввода. Операторы выбора. Модули. Связь модулей. Процедуры и функции.

Литература: [1-5]

Тема 5, 3 - 6 ч.

Лабораторная работа №3.

Цель работы: Разработка кредитного калькулятора.

Рассматриваемые вопросы: Работа с таблицами в Delphi. Обработка исключительных ситуаций. Операторы циклов.

Литература: [1-5]

Тема 5, 3 - 4 ч.

Лабораторная работа №4.

Цель работы: Разработка текстового редактора.

Рассматриваемые вопросы: Разработка меню. Системные диалоги. Модальные и немодальные формы.

Литература: [1-5]

Тема 5 - 2 ч.

Лабораторная работа №5.

Цель работы: Работа с графикой в Delphi.

Рассматриваемые вопросы: Компоненты отображения графической информации. Объект Canvas. Способы построения графиков.

Литература: [1-5]

Тема 5 - 2 ч.

Самостоятельная работа студента.

Тема 1. Этапы развития языков программирования

Тема 2. Объектно-ориентированный подход к разработке программного обеспечения

Задание для самостоятельной работы по лабораторному занятию 1, 2, 3. (4 + 8 часов)

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

Тема 3. Основы Object Pascal

Тема 4. Среда быстрой разработки приложений Delphi

Задание для самостоятельной работы по лабораторному занятию 4. (8+ 8 часов)

1.  Как пользоваться компонентой MainMenu

2.  OpenDialog, SaveDialog

3.  Memo и Rich Edit

4.  Основное свойство  окон редактирования Memo и RichEdit

5.  BitBtn

6.  Form2.show, Form2.ShowModal

7.  Разработать простейший текстовый редактор (аналог Блокнота) позволяющий открывать, редактировать закрывать и сохранять текстовые файлы. В разделе меню «Помощь» реализовать вывод информации о программе на отдельную форму.

Тема 5. Компонентная разработка приложений

Задание для самостоятельной работы по лабораторному занятию 5. (6 часов)

1.  Изучить работу функций и область их применения (function MessageDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Word);

2.  Разработать программу, позволяющую по выбору пользователя отрисовывать графики, sin, cos, exp, параболы в диапазонах от 0 до 2*3,1415

3.  Осуществить предварительный вывод координатных осей с соответствующей разметкой.

4.  Реализовать автоматическое масштабирование оси ординат

5.  Предусмотреть возможность сохранения рисунка в *.bmp файл, а также открытия файла с графиком.

Общее время на самостоятельную работу (подготовка к лабораторным работам, оформление отчетов, подготовка к промежуточному контролю) – 34 часа.

Примерные вопросы к зачету по дисциплине

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

1. Какие языки программирования относятся к языкам первого поколения.

2. Какие языки программирования относятся к языкам второго поколения. 3. Какие языки программирования относятся к языкам третьего поколения.

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

5. Виды трансляторов.

6. Тип данных.

7. Что такое модуль. Принцип модульности.

8. Что необходимо учитывать при составлении алгоритма.

9. Структура модуля.

10. Основные факторы, определяющие качество программного обеспечения.

11. Что такое надежность приложения.

12. Основная схема структурного программирования.

13. Причины появления ОО языков.

14. Принцип абстракции.

15. Классы и объекты.

16. Поля. Метод. Свойства.

17. Основные принципы ООП

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

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

20. Жизненный цикл объекта.

21. Объектный тип данных.

22. Структура Object Pascal программы.

23. Что такое резервированные слова. Примеры.

24. Идентификаторы (имена) Object Pascal.

25. Основные типы данных в Object Pascal.

26. Структура данных - массив.

27. Типы массивов.

28. Оператор условного перехода if.

29. Оператор case.

30. Циклы.

31. Процедуры.

32. Функции.

33. Общие правила форматирования программного кода.

34. Интегрированная среда разработки Delphi.

35. Интегрированная среда разработки (IDE - Integrated Development Environment).

36. Этапы разработки и отладки нового проекта.

37. Способы защиты от ввода неправильной информации.

38. Как ограничить пользователя во вводе символов.

39. Функции для работы со строками.

40. Формы.

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

42. Блок try..except.

43. Блок try...finally .

44. Область применения функций MessageDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint function): Word);

45. Что позволяет строить компонент Chart.

46. Какие методы надо использовать для задания отображаемых значений.

47. Что позволяют делать закладки Legend, Panel, 3D.

48. Какие компоненты имеет метод Print

49. Основное свойство  окон редактирования Memo и RichEdit

50. Какой метод используется для сохранения любого изображения.

51. Какие классы высокого уровня наследуют свойства объекта Canvas

1.4. Критерии выставления оценок на зачете.

Успеваемость студентов по предмету определяется оценками: "зачтено" и "не зачтено", "отлично", "хорошо", "удовлетворительно" и "неудовлетворительно".

При определении оценки знаний студентов во время зачета по предмету руководствуются следующими критериями:

    оценка "зачтено" выставляется студенту, обнаружившему знание основного учебного материала, предусмотренного программой, в объеме необходимом для дальнейшей учебы и работы по специальности, справляющемуся с выполнением заданий, предусмотренных программой; выполнившему все задания, предусмотренные формами текущего контроля, возможно допустившему погрешности в ответе на зачете или при выполнении зачетных заданий и обладающему необходимыми знаниями для их устранения под руководством преподавателя; оценка "не зачтено" выставляется студенту, обнаружившему пробелы в знании основного материала, предусмотренного программой, допустившему принципиальные ошибки в выполнении предусмотренных программой заданий; не выполнившему отдельные задания, предусмотренные формами текущего контроля

Литература:

Основная литература.

1.  Брукшир, Дж., Гленн. Введение в компьютерные науки. Общий обзор, 6-е издание.: Пер. с англ. – М.: Издательский дом «Вильямс», 2001 – 688 с.

2.  Мельников -ориентированное программирование. М.: МО, 1998.

3.  Объектно-ориентированное конструирование программных систем. М.:"Русская редакция", 2005.

4.  Фаронов Паскаль 7.0. Начальный курс. Учебное пособие. Издание 7-е, переработанное. – М.: «Нолидж», 2001 – 576 с.

5.  . Программирование в Delphi 7. М.: «Бином», 2003.

Дополнительная литература.

6.  «Графика в проектах Delphi», Издательство: Символ, 2008

7.  «Delphi в задачах и примерах», Издательство: BHV, 2008

Рубенкинг «Delphi для "чайников"», Издательство: Вильямс, 2007

Составла:

К. ф.-м. н., доцент