Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Стандарт ПО Программирование в среде Windows.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.2 Mб
Скачать

Лекция 8. Подпрограммы в FreePascal (1 час) [6,10]

  1. Подпрограммы в языке Free Pascal;

  2. Передача параметров и возврат результата в языке Free Pascal;

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

  4. Модуль (Unit), разработка модулей ;

7 Семестр (34 часа)

Лекционный материал (34 часа) Литература основная [1-5] и дополнительная [7-9]

Модуль 1. Основы объектно-ориентированного подхода, реализованного в языках программирования C# и Java (16 часов) [1-5, 7-9]

Лекция 1 Абстрактные типы данных в современных языках программирования (2 часа)

1.1 Классы и объекты в языках программирования C# и Java, абстрагирование данных.

1.2 Поля и методы классов, структура программы на C# и Java, содержащая несколько классов. Кроссплатформенность Java.

1.3 Инкапсуляция, разграничение прав доступа к данным. Модификаторы public, private. Различие синтаксиса в описании классов C# и Java

Лекция 2 Основные свойства полей и методов классов, реализованные в С# и Java (2 часа)

2.1 Возвращаемые параметры методов в С# и Java.

2.2 Дружественные функции класса, примеры.

2.3 Динамические объекты С#, указатели С# и Java, использование указателя this.

2.4 Статические поля и методы в С# и Java.

Лекция 3 Создание и разрушение объектов в С# и Java, перегрузка методов класса (2 часа)

3.1 Конструкторы в языке C# и Java, основные типы. Деструктор в С#.

3.2 Перегрузка методов класса, примеры.

3.3 Перегрузка операторов в С#, примеры перегрузки бинарных операторов.

3.4 Библиотеки обработки строк в С# и Java. Примеры перегрузки встроенных операторов в библиотеках обработки строк.

Лекция 4 Наследование классов. Построение статических и динамических объектов производных классов. (2 часа)

4.1 Производные классы в C# и Java. Модификатор protected.

4.2 Открытое, защищенное и закрытое наследование в С#. Понятие множественного наследования в языке С#.

4.3 Конструкторы производных классов. Вызов конструктора базового класса и прямой вызов метода базового класса.

Лекция 5 Полиморфизм в объектно-ориентированных языках программирования (2 часа)

5.1 Определение виртуальных функций в языке С#. Различие в вызове статическим объектом виртуального и не виртуального метода.

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

5.3 Абстрактные классы и чисто виртуальные функции. Примеры.

Лекция 6 Библиотеки ввода-вывода в языках С# и Java (2 часа)

6.1 Библиотеки iostream и fstream языка C#. Поля и методы классов, перегрузка операторов >> , << .

6.2 Файловый ввод-вывод в языке Java Standart Edition.

6.3 Работа с хранилищем записей Record Store языка Java Micro Edition.

Лекция 7 Исключения в языке С# и Java. Шаблоны методов и классов (2 часа)

7.1 Операторы try, throw, catch их использование в С# и Java.

7.2 Использование стека вызовов для обработки исключений.

7.3 Встроенные типы исключений.

7.4 Использование шаблонов методов и классов в С# и Java.

Лекция 8 коллекции в объектно-ориентированных языках программирования (2 часа)

8.1 Типы контейнеров вектор, список, стек, очередь. Методы доступа к данным, прямой, ассоциативный, последовательный.

8.2 Свойства библиотеки STL языка С# и ее использование.

Модуль 2. Разработка приложений в среде программирования Microsoft Visual Studio (4 часа) [1,3]

Лекция 9 Организация проектов и решений среды Visual Studio (2 часа)

9.1 Создание проекта. Свойства и события классов, основные файлы проекта.

9.2 Класс Form. Свойства и методы класса. Режим проектирования формы.

Лекция 10 Создание многооконных приложений в Visual Studio (2 часа)

10.1 Управляемые (managed) и неуправляемые классы. Построение приложения из нескольких форм.

10.2 Преобразования между нерегулируемыми и регулируемыми выражениями (режим CLR) указателями.

Модуль 3. Компоненты интерфейса разработчика приложения Visual Studio на языке С# и Java JDK Standart Edition и Micro Edition (14 часов) [3,4,5]

Лекция 11 Компоненты Button, Label и TextField для создания приложений на С# и Java (2 часа)

11.1 Пакеты awt и swing в Java SE. Классы JFrame, JButton, JLabel, JTextField пакета swing. Поля и методы классов.

11.2 Библиотека lwuit для Java ME. Классы form, label, textfield, button библиотеки lwuit.

11.3 Обработка событий нажатия на кнопку, получения и потери фокуса для текстового поля.

Лекция 12 Использование переключателей и диалогов для создания интерфейса приложения (2 часа)

12.1 Компонента CheckBox, свойства, методы и события.

12.2 Компонента RadioButton, свойства, методы и события.

12.3 Построение меню приложения в Visual Studio и Java SE

12.4 Стандартные диалоги: ColorDialog, FontDialog, FileDialog

Лекция 13 Работа со списками в компонентах Listbox, Choice, Combobox (2 часа)

13.1 Понятие модели списка (listmodel).

13.2 Компонента Listbox Visual Studio и List в Java jdk.

13.3 Компонента Choice в java.

13.4 Компонента ComboBox.

13.5 Обработка событий выбора элементов.

13.6 Обработка событий от мыши и клавиатуры.

Лекция 14 Использование статической и динамической графики в приложениях (2 часа)

14.1 Компонента PictureBox Visual Studio Загрузка, сохранение изображений в различных форматах, преобразование изображения, примитивы рисования.

14.2 Работа с графикой в производном классе от JPanel Java SE, загрузка, преобразование, сохранение изображений, рисование с помощью примитивов.

14.3 Графика в Java ME. Понятие ресурсов, загрузка изображений из ресурсов, рисование.

14.4 Использование таймера для создания динамической графики.

Лекция 15 Применение таблиц для разработки приложений (2 часа)

15.1 Компонента ListView Visual Studio, коллекция Item, выбор строки. Особенности использования компоненты.

15.2 Построение таблицы в компоненте JScrollPane. Компонента JTable Java SE. Добавление, удаление строк, столбцов, редактирование и выбор элементов таблицы.

Лекция 16 Компоненты просмотра и редактирования текстов различных форматов (2 часа)

16.1 Использование компоненты TextField и RichTextBox Visual Studio для просмотра и редактирования текстовых файлов и файлов в формате rtf.

16.2 Размещение компонент JTextArea и JEditorPane в контейнере JScrollPane Java SE для просмотра и редактирования текстовых файлов и файлов в формате rtf.

16.3 Компонент WebBrowser Visual Studio для работы с текстом в формате html.

16.4 Использование JEditorPane для просмотра и редактирования документов формата html.

Лекция 17 Применение Java в Интернете (2 часа)

17.1 Понятие аплетов. Построение простейших сайтов со встроенными аплетами.

17.2 Сервлеты и их использование.

17.3 JavaScript и его применение в документах html.

17.4 Перспективы развития объектно-ориентированного программирования. Агенто-ориентированное программирование.

Лабораторный практикум

Семестр 6 (15 часов)

  1. Разработка консольного приложения (2 часа) [6,10]

  2. Разработка простого GUI-приложения на основе классов LCL TForm, TButton, TEdit, TLabel (2 часа) [6,10]

  3. Применение операторов ветвления Free Pascal и визуальных компонентов TCheckBox, TRadioButton, TCheckGroup, TRadioGroup, TMainMenu для создания приложений в среде Lazarus (2 часа) [6,10]

  4. Реализация циклических алгоритмов в программах на Free Pascal (2 часа) [6,10]

  5. Обработка одно- и двумерных массивов средствами языка Free Pascal с использованием классов LCL TStringGrid, TListBox и TComboBox (2 часа) [6,10]

  6. Файловый ввод-вывод средствами языка Free Pascal и применение стандартных диалогов выбора файлов библиотеки LCL (2 часа) [6,10]

  7. Использование графических средств библиотеки LCL (2 часа) [6,10]

  8. Разработка многомодульных приложений (1 час) [6,10]

Семестр 7 (34 часа)

Лабораторные работы (34 часа) Литература основная [1-5] и дополнительная [7-9].

Модуль 1

1. Реализация начального задания на языке С# и выполнение его в среде Visual Studio. Компиляция и выполнение консольного приложения начального задания на Java Standart Edition. Знакомство с интегрированной средой Eclipse и выполнение приложения начального задания в данной среде. (2 часа) [1,5]

2. Классы на С# и Java, инкапсуляция. Модификаторы private и public. (2 часа) [2,5,8]

3. Статические и динамические объекты. Указатель this. Возвращаемые параметры методов. (2 часа) [2,5,8]

4. Конструкторы объектов на С# и Java. Перегрузка оператора “+” для объектов на языке С#. (2 часа) [2,5,7,8]

5. Производные классы на С# и Java. Модификатор protected. (2 часа) [2,5,7,8]

6. Виртуальные функции в С#. Модификатор virtual. Вызов статическими и динамическими объектами виртуальных методов. (2 часа) [2,7,8]

7. Библиотека ввода-вывода iostream языка C#. Перегрузка операторов >> , << для классов. Файловый ввод-вывод в Java Standart Edition. (2 часа) [2,8]

8. Знакомство со средой Net Beans и Oracle Java Micro Edition jdk для построения приложений на мобильных устройствах. Реализация приложения с использованием RecordStore. (2 часа) [4,5]

Модуль 2

9. Построение многооконного приложения Windows Forms в среде Visual Studio. (4 часа) [1,3]

1) Реализация основного класса из лабораторной 2 в качестве основной формы приложения.

2) Реализация производного класса из лабораторной 5 в качестве вызываемой формы приложения.

3) Дополнение к проекту нерегулируемого класса.

Модуль 3

10. Реализация линейного вычислительного процесса с использованием визуальных компонент Label, TextField, Button в среде Visual Studio, Java SE и Java ME . (2 часа) [1-5]

11. Построение приложения с использованием меню и стандартных диалогов в Visual Studio и Java SE. Реализация разветвляющегося вычислительного процесса с использованием компонент RadioButton и CheckBox в Visual Studio, Java SE, Java ME. (2 часа) [1-5]

12. Реализация алгоритма обработки одномерного массива в виде приложения с использованием компонент ListBox и ComboBox Visual Studio, Java SE, Java ME. (2 часа) [1-5]

13. Реализация приложения с обработкой изображения в формате jpeg, добавление динамики при использовании таймера. Выполнние приложения на Visual Studio, Eclipse для Java Standart Edition и NetBeans для Java Micro Edition. . (2 часа) [1-5]

14. Обработка двумерных массивов с использованием компонент ListView Visual Studio и Table в Java SE. (2 часа) [1-5]

15. Обработка текстов с использованием компонент TextField и RichTextBox Visual Studio и JTextArea и JEditorPane пакета Swing Java SE. (2 часа) [1-5]

16. Создание простейшего сайта с аплетом на Java SE. Запуск аплета в Eclipse и просмотр сайта в браузере. (2 часа) [4,5,7,8]

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

Самостоятельная работа включает в себя (118 часов):

6 семестр – 25 часов

  1. Подготовка к защите лабораторных работ – 7 часов

  2. Подготовка к сдаче экзамена (в период сессии) 18 часов

7 семестр - 93 часа

  1. Подготовка к защите лабораторных работ – 15 часов

  2. Выполнение курсовой работы – 33 час

  3. Подготовка к сдаче экзамена (в период сессии) 45 часов

Методические указания по выполнению лабораторных работ приведены в Приложении А, рекомендации по организации их выполнения – в п. 3.2.

Курсовая работа (33 час) Литература основная [1-3] и дополнительная [6-7]

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

Тематика курсовой работы: охватывает темы лабораторных работ по курсу; задание выбирается студентом из предложенного преподавателем списка.

Этапы курсовой работы:

Курсовая работа состоит из 6 этапов в соответствии с лекциями 1-6 лекционного курса и выполняется параллельно с лабораторными работами 1-7. На каждом этапе студент предоставляет работоспособный программный продукт в виде консольного приложения Visual Studio на языке C#.

1. Разработка основного и вспомогательного класса. Объекты вспомогательного класса как поля основного класса. Инкапсуляция. 5 часов. [1-3]

2. Построение дружественных функций класса. Массивы объектов вспомогательного класса в качестве полей основного класса. 5 часов. [1-3]

3. Конструкторы с параметрами и без параметров для статических и динамических объектов основного и вспомогательного класса. 5 часов. [1-3,6]

4. Построение производного класса от базового вспомогательного класса этапа 1. Построение конструкторов производного класса. Перегрузка оператора присваивания объектов вспомогательного и основного классов. 5 часов. [1-3,6]

5. Построение абстрактного класса с чисто виртуальной функцией. Определение виртуальной функции в производных классах. 5 часов. [2,6,7]

6. Применение библиотеки fstream для чтения и записи объектов в файлы. Построение шаблона функции. 5 часов. [2,6,7]

7. Оформление результатов и ее защиту (3часа).

По проделанной работе должны быть представлены оформленный в соответствии с существующим стандартом отчет.

В результате изучения дисциплины студенты должны обладать знаниями, умениями и навыками, приведенными в таблице 2.1.

Таблица 2.1

Номер/индекс компетенции по ФГОС ВПО

Содержание компетенции

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

знать

уметь

владеть

ПК-32

способность выполнять работы соответствующего квалификационного уровня

- этапы создания программных систем на Free Pascal, С# и Java;

- приемы работы с основными визуальными компонентами LCL, C# и Java;

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

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

-навыками использования современных интегрированных сред для разработки программы на языках программирования Free Pascal, С# и Java

ПК-34

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

-методы программирования и методы разработки эффективных алгоритмов решения прикладных задач на Free Pascal, С# и Java;

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

- навыками визуального конструирования форм и разработки обработчиков событий;

Таблица 3.2 - Компонентный состав дисциплины

Модуль дисциплины (раздел, тема)

Результаты освоения

дисциплины

Технологии формирования компетенций

Средства и технологии оценки

Объем

в ЗЕТ

6 семестр

Модуль 1

Знает:

- основы языка программирования Free Pascal;

- принципы проектирования приложений в среде Lazarus;

- библиотеку классов LCL;

Умеет:

- разрабатывать приложения в среде Lazarus для решения реальных задач;

Владеет:

- навыками разработки программ на языке Free Pascal с использованием библиотеки классов LCL;

- методами проектирования, создания и отладки приложений в среде Lazarus;

Лекции

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

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

Защита отчетов по лабораторным работам

0,5

Экзамен

0,5

7 семестр

Модуль 1

Знает:

- инкапсуляция в С#;

- Классы и их использование в С#;

- наследование в С#;

- полиморфизм в С#;

- абстрактные классы в С#.

Лекции

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

Защита отчетов по лабораторным работам

0,5

Умеет:

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

- создавать шаблон проекта консольного приложения в интегрированной среде в Visual Studio;

- работать с абстрактными типами данных с их свойствами и поведением в виде полей и методов класса.

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

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

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

Владеет:

- навыками работы в интегрированной среде Visual Studio на языке C#;

- записи синтаксических конструкций языка С#;

- навыками представления результатов решения задачи на С#.

Выполнение лабораторных работ

Защита лабораторных работ, курсовой работы.

7 семестр

Модуль 2

Знает:

- принципы построения проектов Windows Forms в среде Visual Studio;

- регулируемые классы Windows Forms;

- связь между регулируемыми объектами Visual tudio и классами стандарта ASCII C# .

Лекции

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

Защита лабораторных работ

Экзамен

0,2

Умеет:

- построение, отладку и выполнение проекта Windows Forms реальной задачи;

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

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

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

Защита лабораторных работ

Владеет:

- навыками создания приложений Windows Forms;

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

Выполнение лабораторных работ

Защита лабораторных работ

Экзамен

7 семестр

Модуль 3

Знает:

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

- классы для создания интерфейса пользователя языка Java Standart Edition

- классы для создания интерфейса пользователя мобильных устройств языка Java Micro Edition.

Лекции

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

Защита лабораторных работ

Экзамен

0,3

Умеет:

- создавать современные интерфейсы пользователя с применением средств визуализации, предоставляемые средой разработки приложений Visual Studio и классами языка Java для настольных и мобильных приложений.

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

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

Защита отчета по лабораторным работам

Экзамен

Владеет:

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

Выполнение лабораторных работ

Экзамен

Таблица распределения компетенций по разделам и темам дисциплины

темы/раздела

учебной дисциплины

Кол-во

часов

Формируемые

компетенции

Примечание

98

ПК-32, ПК-34

-