Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 2 Рабочая программа составлена в соответствии с государственным образовательным стандартом высшего профессионального образования по направлению подготовки специалистов 230201 «Информационные системы и технологии». Руководитель ООП «Информационные системы и технологии» к.ф.-м.н., доцент Н.М. Кузьмин Составитель рабочей программы ст. преподаватель каф. ИСКМ Д.А. Станкевич В рабочую программу внесены изменения, рассмотренные на заседании каф. ИСКМ (протокол №___ от «__»______20__ г.) зав. каф. ИСКМ А.В. Хоперсков Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 3 1. Цели и задачи учебной дисциплины Целью изучения данной дисциплины является получение теоретических знаний о системах визуального программирования на примере C# Visual Studio .NET. А также познакомить слушателей с современными методами разработки программного обеспечения, обработки, визуализации и управления данными. Задачи изучения дисциплины: изучение языка программирования C#; знакомство с визуальными компонентами C# .NET; формирование теоретических знаний, связанных с проектированием, спецификацией, разработкой, тестированием и отладкой программ; изучение основных приемов визуализации и манипулирования данными посредством графических систем; получение практических навыков в области технологии программирования (кодирование, отладка и тестирование), ориентированной на разработку и реализацию информационных систем и приложений. Данный курс опирается на знания и умения, полученные студентами во время обучения в рамках курсов: Информатика; Языки высокого уровня; Объектно-ориентированное программирование. Студент должен знать: основные понятия и определения систем визуального программирования; высокоуровневые среды и языки программирования и возможные области их применения; возможности высокоуровневых сред визуального программирования; порядок работы с высокоуровневыми средами визуального программирования; способы применения методологии высокоуровневого программирования для решения широкого круга управленческих и иных задач; основы построения пользовательских интерфейсов (UI). Студент должен уметь: формулировать основные преимущества использования .NET Framework; применять основные операторы, классы и конструкции языка C# на практике; пользоваться элементами управления при создании собственных визуальных приложений; создавать собственные элементы управления; Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 4 применять методы .NET Framework в задачах разработки интеллектуальных и мультимедийных систем; разрабатывать клиент-серверные приложения; разрабатывать приложения для визуализации и управления данными. Студент должен владеть: Языками процедурного и объектно-ориентированного программирования, навыками разработки и отладки программ не менее чем на одном из алгоритмических процедурных языков программирования высокого уровня; Виды контроля: 1) текущий (контрольные опросы, сдача допуска к выполнению лабораторной работы, сдача лабораторной работы); 2) промежуточный по результатам выполнения модулей балльнорейтинговой системы (контрольные работы, компьютерное тестирование); 3) итоговый по результатам зачетно-экзаменационной сессии (зачет). 2. Структура изучения дисциплины Всего часов (общая трудоемкость в часах) Аудиторные занятия 151 Лекции 36 Лабораторные занятия (активная форма обучения) Самостоятельные занятия 36 Изучение основной и дополнительной литературы Подготовка к выполнению лабораторных работ Подготовка к контрольным работам 24 Подготовка к экзамену, экзамен 3. Тематический план изучения дисциплины 3.1. Содержание и формы занятий 72 79 34 21 Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— № п/п 1. Тема .NET Framework – каркас среды разработки 2. Обзор синтаксиса C# 3. Основы построения пользовательского интерфейса 4. События и делегаты в C# 5. Класс Control. Элементы управления. 6. Работа с графикой. 7. Многооконный интерфейс. 8. Коллекции 9. Язык запросов LINQ 10. Многопоточность. 11. Windows Presentation Foundation 5 Форма занятий Кол-во часов Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия Лекции Лабораторный практ. Самост. занятия 4 4 6 4 4 6 4 4 6 3 3 6 3 3 6 3 3 6 3 3 6 3 3 6 3 3 6 3 3 6 3 3 6 3.2. Содержание разделов дисциплин 1. NET Framework – каркас среды разработки Предмет и задачи курса; основные понятия и определения; единый каркас среды разработки: библиотека классов и общеязыковая исполнительная среда CLR; примитивные типы; архитектура приложений; модульность; компиляция и виртуальная машина; Garbage Collector и управление памятью; исключительные Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 6 ситуации и события; виды проектов C#. 2. Обзор синтаксиса C# Строгая типизированность языка C#. Операторы и выражения; типы и переменные; типы значений и ссылочные типы; перечисления как тип значений. Инициализация переменных по умолчанию; неявно типизированные локальные переменные; преобразования типов; ковариантность массивов; упаковывающее преобразование; операции as и is; обобщения. Поток управления: ifelse, while, do-while и for, switch, break, continue, goto, return и throw. Пространства имен: определение и использование. 3. События и делегаты в C# Создание и использование делегатов. Делегаты в контексте событий. Простые события и их вызов. События с передачей дополнительных параметров. Анонимные методы. 4. Класс Control. Элементы управления Обзор элементов управления: родители и потомки, фокус, видимость и отклик, расположение и размер, шрифты и цвет, отслеживание элементов управления, списки изображений (ImageList), всплывающие подсказки (ToolTip). Элементы управления: группа элементов управления (GroupBox), метка (Label), метка-ссылка (LinkLabel), графическое окно (PictureBox), индикатор хода процесса (ProgressBar). Кнопки и двоичные переключатели: кнопка (Button), флажок (CheckBox), переключатель (RadioButton). Полоса прокрутки: горизонтальная и вертикальная полосы прокрутки (Scroll Ваr), ползунок (TrackBar). Элемент управления с поддержкой редактирования текста: текстовое окно с маской (MaskedTextBox), текстовое поле (TextBox), поле ввода с форматированием (RichTextBox). Списоки и деревья: список (ListBox), список с флажками(CheckedListBox), поле со списком (ComboBox), числовой наборный счетчик (NumericUpDown), древовидное представление (TreeView), списковое представление (ListView). 5. Работа с графикой Работа с графикой: Особенности GDI+ и независимость от аппаратуры; Контекст отображения; Касс Graphics и рисование объектов. Идентификатор окна Handle и объект Graphics, перья, кисти для сплошной закраски, типа HatchBrush, типа TextureBrush, градиентные кисти, шрифты. Рисование в окне элемента управления и событие Paint. Методы и свойства класса Graphics. Рисование геометрических фигур, линий и изображений. Растровые и векторные изображения, класс Image. 6. Многооконный интерфейс Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 7 Родительские и дочерние формы. Создание родительского и дочерних окон МDI-приложения. Системное меню MDI-окна, упорядочивание MDI-окон, передача данных через буфер обмена. 7. Коллекции Списки, словари, итераторы. Операторы foreach, yield. Создание собственных коллекций. 8. Язык запросов LINQ Структура запроса, порядок выполнения запроса. Лямбдавыражения. Взаимодействие с базами данных. Обработка XMLфайлов. 9. Многопоточность Запуск потоков и передача данных новым потокам, завершение потоков, ожидание завершения потока. Потоки переднего плана и фоновые потоки. Блокировки. Классы ThreadPool, Interlocked. 10. Windows Presentation Foundation Архитектура WPF. Язык разметки XAML. Элементы управления, графика, мультимедиа. Анимация, трехмерная отрисовка. 3.3. Лабораторный практикум № 1 2 3 4 5 6 7 8 9 10 1 2 Наименование лабораторных работ Знакомство с Visual Studio .NET, основы работы с консолью и формами. Работа с классами C#. Наследование. Абстрактные классы. Интерфейсы. Универсальные шаблоны. Делегаты и события. Класс UserControl. Создание пользовательских элементов управления. Язык запросов LINQ. Работа с базами данных. Многопоточное программирование. Windows Presentation Foundation Знакомство с Visual Studio .NET, основы работы с консолью и формами. Работа с классами C#. 4. Экзаменационные вопросы Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 8 Контроль изучения дисциплины Зачет по лабораторному практикуму. Количество баллов за выполнение лабораторных работ учитывается при выставлении итоговой оценки за курс. II. Контрольные вопросы. 1. 1. .NET Framework – каркас среды разработки I. 2. Язык C#. Особенности синтаксиса: приоритет операций 3. Язык C#. Особенности синтаксиса: типы данных и переменные 4. Язык C#. Особенности синтаксиса: преобразования типов и обобщения 5. Язык C#. Особенности синтаксиса: поток управления: switch, if-else, while, do-while и for, foreach, break, continue, goto, return и throw 6. Язык C#. Особенности синтаксиса: пространства имен: определение и использование 7. Язык C#. Особенности синтаксиса: делегаты 8. Язык C#. Особенности синтаксиса: лямбда-выражения. 9. Элементы управления: общие замечания о классе Control, родители – потомки, фокус, видимость и отклик, 10. Элементы управления: расположение и размер, шрифты и цвет, отслеживание элементов управления 11. Элементы управления: списки изображений, группа элементов управления, переключатель, метка-ссылка 12. Элементы управления: графическое окно, кнопка, индикатор хода процесса 13. Элементы управления: флажок, полоса прокрутки, ползунок. 14. Элементы управления: Элемент управления с поддержкой редактирования текста, всплывающие подсказки 15. Элементы управления: списки и деревья, метка. 16. Работа с графикой: особенности GDI+, контекст отображения (получение и использование), кисти, создание эскизов изображений. Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 9 17. Работа с графикой: класс Graphics и рисование объектов, перья, шрифты, управление качеством изображения при масштабировании. 18. Работа с графикой: перерисовка окон элементов управления, методы и свойства класса Graphics, растровые и векторные изображения, класс Image, поворот и наклон изображений. 19. Многооконный интерфейс: родительские и дочерние формы (создание, упорядочивание, получение существующего активного дочернего окна). 20. Коллекции: списки, словари, итераторы. 21. Коллекции: операторы foreach, yield. Создание собственных коллекций. 22. Язык запросов LINQ: Структура запроса, порядок выполнения запроса. 23. Язык запросов LINQ: Взаимодействие с базами данных. 24. Многопоточность: запуск потоков и передача данных новым потокам, завершение потоков, ожидание завершения потока, потоки переднего плана и фоновые потоки 25. Многопоточность: Блокировки. Классы ThreadPool, Interlocked. 26. Многопоточность: синхронизация потоков, параллельные циклы. 27. Windows Presentation Foundation: Архитектура WPF. Язык разметки XAML. 28. Windows Presentation Foundation: Элементы управления, графика, мультимедиа. 29. Windows Presentation Foundation: Анимация, трехмерная отрисовка. 5. Учебно-методическое и программно-аппаратное обеспечения программы 5.1. Список литературы Базовый учебник: 1. Ч. Петзольд, Программирование для Microsoft Windows на С#, в 2-х т: Пер. с англ. - М: Изд. дом "Русская редакция", 2002. Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 10 Основная литература: 1. М. Э. Абрамян, Visual C# на примерах – СПб.: БХВ-Петербург, 2008. 496 с: ил. + CD-ROM 2. Н. Трей, С# 2010: ускоренный курс для профессионалов. : Пер. с англ. — М. : ООО "И.Д. Вильяме", 2010. — 592 с. : ил. — Парал. тит. англ. 3. Лабор В. В., Си Шарп: Создание приложений для Windows/ В. В. Лабор.— Мн.: Харвест, 2003. - 384 с. 4. Фролов А. В., Фролов Г. В. Визуальное проектирование приложений С#. - М.: КУДИЦ-ОБРАЗ, 2003. - 512 с. 5. Ховард М., Лебланк Д., Виега Д., 19 смертных грехов, угрожающих безопасности программ. Как не допустить типичных ошибок . - М.: Издательский Дом ДМК-пресс, 2006. - 288 с: ил. 6. Нейгейл, Кристиан, Ивьен, Билл, Глиннн, Джей, Уотсон, С# 2008 и платформа .NET 3.5 для профессионалов. : Пер. с англ. - М. : ООО "ИДВильямс". 2009. - 1392 с.: ил. - Парал. тит. англ. 7. Шилдт Г. С#: учебный курс. — СПб.: Питер; К.: Издательская группа BHV, 2003. — 512 с: ил. Дополнительная литература: 1. Патрис Пелланд, Паскаль Паре, Кен Хэйнз, Переход на C# Visual Studio 2010 Мак-Квери С. 2. Учебники интернет ресурса INTUIT.RU 5.2. Программно-аппаратное обеспечение Средства обеспечения освоения дисциплины. Операционная система Windows XP/7; локальная сеть; MS Visual Studio 2010; пакеты прикладных программ. Материально-техническое обеспечение дисциплины. Персональные ЭВМ, обеспечивающие моделирование, выполнение самостоятельной работы студента. Компьютеры, подключенные к сети INTERNET. Системы визуального программирования (ИСТ) —————————————————————————————————————————————————————— 11 5.3. Электронные ресурсы Федеральный образовательный портал. Библиотека. Единое окно доступа к образовательным ресурсам: http://window.edu.ru/library Сайт кафедры информационных систем и компьютерного моделирования: http://www.infomod.ru/ ФГУП НТЦ Информрегистр - Государственная регистрация обязательного экземпляра электронных изданий: http://www.inforeg.ru/depoz КонсультантПлюс: http://base.consultant.ru/cons/cgi/online.cgi?req=home Научная электронная библиотека: http://elibrary.ru Интернет-университет информационных технологий http://intuit.ru Образовательный портал «УМНИК» http://new.volsu.ru/umnik/