Китай |
Опубликован: 13.07.2010 | Уровень: специалист | Доступ: платный
В курсе представлен материал, построенный на основе лабораторных работ по проектированию оконных приложений в среде Visual Studio 2005, изучаемых на протяжении ряда лет студентами автора. На учебных примерах сочетание справочных сведений и пошаговых инструкций охватывают наиболее важные аспекты применения современных технологий программирования семейства .NET. Освоение курса предполагает затраты определенных усилий на выполнение упражнений практической направленности.
Каждая глава курса посвящена примерам разработки учебного приложения или пользовательского компонента на фундаменте библиотек WindowsForms, OpenGL, управляемого DirectX, ASP.NET, ADO.NET. Материал преимущественно опирается на язык C# и его поддержку в .NET Framework версии 2.0, которые остаются совместимыми и в новых версиях. При подготовке курса был использован обширный список современной литературы и личный опыт автора. Широкий спектр рассматриваемых вопросов призван сформировать у обучаемого устойчивые навыки и кругозор, необходимые для успешной работы не только в текущей, но и в более поздних выпусках среды VS.NET. Курс пригоден как для самостоятельного, так и для группового обучения студентов.
План занятий
Занятие | Заголовок << | Дата изучения |
---|---|---|
- | ||
Самостоятельная работа 125 минут | Простое приложение на нескольких языках программирования
В лекции рассматривается простое консольное приложение, разработанное на классах нескольких языков: C++, C#, Visual Basic.
Оглавление | - |
Самостоятельная работа 224 минуты | Установка простого приложения ASP.NET на C#
Установка IIS. Создание web-страницы на ASP.NET.
Оглавление | - |
Самостоятельная работа 136 минут | - | |
Самостоятельная работа 32 часа 38 минут | Управление HTML-элементами в ASP.NET
Элементы управления HTML и WEB: HTMLAnchor, HTMLButton, HTMLImage, HTMLInputButton, HTMLInputCheckBox, HTMLInputFile, HTMLInputHidden, HTMLInputImage, HTMLInputRadioButton, HTMLInputText, HTMLSelect, HTMLTable, HTMLTableRow, HTMLTableCell, HTMLTextArea. Программирование тегов класса HtmlGenericControl. Визуальный способ проектирования страницы представления. Подготовка HTML-кода в редакторе Dreamweaver. Программирование функциональности страницы ASP.NET.
Оглавление | - |
Самостоятельная работа 42 часа 59 минут | Управление Web-элементами в ASP.NET
Распознавание браузера. Сравнение html-элементов и Web-элементов. Web-элементы и их программирование. Этапы взаимодействия броузера и сервера в ASP.NET. Модель событий Web-форм. Обработка страницы. Web-элементы управления Label, TextBox,Button, HyperLink, CheckBox, CheckBoxList, RadioButton, RadioButtonList, DropDownList, ListBox. Обмен списков данными. Привязка Web-элементов управления к базе данных. Web-элемент AdRotator для управления рекламными баннерами.
Оглавление | - |
Самостоятельная работа 21 час 3 минуты | - | |
Самостоятельная работа 52 часа 2 минуты | Элементы управления Data в приложениях на C#
В лекции рассматривается типовая учебная база данных Northwind. Пространство имен BCL. Подключение к данным связанного списка. Управление составом данных, отображаемых в связанном списке. Просмотр отдельных текстовых полей по выбранному элементу списка. Редактирование и обновление данных, добавление и удаление записей с использованием связанных элементов управления. Обработка ошибок с помощью связанных элементов управления.
Оглавление | - |
Самостоятельная работа 652 минуты | Элементы управления DataGrid и ComboBox в приложениях ADO.NET на C#
Связывание данных с элементами управления DataGrid и ComboBox. Повышение степени детализации представления данных в элементе управления DataGrid. Элементы интерфейса пользователя.
Оглавление | - |
Самостоятельная работа 71 час 22 минуты | Создание объектов базы данных SQL Server средствами оболочки VS.NET 2003
Создание базы данных: создание таблиц и полей, создание индексов, назначение связей между таблицами. Установка ограничений и значений, применяемых по умолчанию. Создание представлений и хранимых процедур.
Оглавление | - |
Самостоятельная работа 342 минуты | - | |
Самостоятельная работа 859 минут | Просмотр данных средствами ADO.NET с привязкой на этапе выполнения
Выборка данных с использованием объекта DataReader. Выборка данных из базы данных SQL Server с применением объекта DataTable. Поиск записей с помощью объекта DataRow. Отбор и сортировка записей с помощью объекта DataView.
Оглавление | - |
Самостоятельная работа 91 час 23 минуты | Редактирование данных в среде ADO.NET
Свойства и методы объектов DataAdapter, DataSet. Редактирование данных средствами DataSet. Добавление и удаление строк в наборе данных средствами среды ADO.NET. Выполнение параметризованных хранимых процедур в среде ADO.NET. Динамическое создание и выполнение пакетных заданий по обновлению данных в среде ADO.NET.
Оглавление | - |
Самостоятельная работа 436 минут | - | |
Самостоятельная работа 102 часа 15 минут | Введение в DirectX
Библиотека классов DirectX. Установка Microsoft ® DirectX ® 9.0 SDK Update (Summer 2003). Пространство имен Microsoft.DirectX.Direct3D. Создание устройства. Рисование плоского и трехмерного треугольника. Задание положения треугольника в мировых координатах. Создание перспективы. Добавление камеры. Отключение потребности в освещении сцены. Вращение треугольника вокруг координатной оси. Вращение треугольника вокруг произвольной оси. Обработка события изменения размеров окна. Создание освещения сцены. Хранение треугольника в вершинном буфере.
Оглавление | - |
Самостоятельная работа 1126 минут | Выбор подходящего устройства в DirectX
В лекции рассматривается работа адаптеров устройств в DirectX. Свопинг-связки и рендеры. Форматы вторичных буферов и дисплеев. Проверка возможностей устройства.
Оглавление | - |
Самостоятельная работа 536 минут | - | |
Самостоятельная работа 121 час 10 минут | Рендеринг вращающихся кубов в DirectX
В лекции приводятся примеры рисования графических примитивов. Создание вращающегося куба. Добавление функциональности остановки вращения. Текстурирование сторон вращающегося куба.
Оглавление | - |
Самостоятельная работа 131 час 15 минут | Более совершенные технологии рендеринга в DirectX
В лекции рассматривается использование примитивов, отличных от треугольников. Рендеринг различных типов примитивов. Использование индексных буферов. Создание нескольких вращающихся кубов с применением буфера глубины.
Оглавление | - |
Самостоятельная работа 141 час 10 минут | Использование Mesh-объектов в DirectX
Создание Mesh-объекта. Добавление материалов и освещения. Использование более реалистичного освещения. Загрузка Mesh-объектов из внешних файлов.
Оглавление | - |
Самостоятельная работа 633 минуты | - | |
Самостоятельная работа 151 час 39 минут | Вывод текста в клиентскую область формы
Применение секционных скобок для удобства редактирования. Создание заготовок для дочерних форм. Использование библиотеки FCL. Получение информации о системе. Разделение текстовых строк. Разбивка текста на колонки. Создание своего класса со свойствами "только для чтения". Организация прокрутки с помощью элемента Panel. Механизм работы автопрокрутки. Прокрутка без использования элементов управления. Отслеживание изменений в выводимой информации. Оптимизация работы функции прорисовки недействительной области.
Оглавление | - |
Самостоятельная работа 161 час 39 минут | Рисование графических примитивов средствами GDI+
В лекции рассматриваются два вида компьютерной графики: векторная и растровая графика. Способы создания объекта Graphics. Рисование прямых линий. Использование некоторых возможностей печати документа. Разделение кода вывода на экран и печать. Рисование ломаных линий и домика ломаными линиями. Применение функции DrawLines() для рисования графиков. Параметрические уравнения и рисование кривых. Рисование эллипса специализированным методом, спирали, прямоугольников, дуг. Рисование прямоугольника с закругленными углами и секторов. Улучшенное рисование секторов. Заливка прямоугольников, эллипсов и секторов.
Оглавление | - |
Самостоятельная работа 173 часа 2 минуты | Программирование простой игры в DirectX
Программирование движка игры. Создание устройства в главном классе. Установка камеры и освещения сцены. Добавление кода запуска рендеринга. Добавление кода создания дороги. Фильтрация текстуры дороги. Имитация движения дороги. Создание автомобиля. Добавление к проекту нового класса Car. Добавление свойств в класс Car. Создание объекта Car в движке игры. Клавиатурное управление автомобилем. Добавление препятствий. Генерация одного препятствия в конструкторе класса. Другие заготовки для создания препятствий. Добавление вращений к препятствиям. Оформление атрибутики игры. Разработка табло результатов. Добавление текстовых надписей и запись лучших результатов в системный реестр.
Оглавление | - |
Самостоятельная работа 182 часа 19 минут | Нестандартные формы и стандартные диалоги
Создание непрямоугольной формы. Страницы свойств и стандарные диалоги. Свойства компонента TabControl. Разработка вкладок "Обзор" и MessageBox. Параметры метода Show(). Разработка итерфейса вкладки MessageBox. Программирование вкладки MessageBox. Базовый класс FileDialog. Разработка вкладки OpenFileDialog, SaveFileDialog. Распределение кода по отдельным файлам. Разработка вкладки ColorDialog. Добавление иконок к формам через файл ресурсов.
Оглавление | - |
Самостоятельная работа 736 минут | - | |
Самостоятельная работа 191 час 3 минуты | Простая программа на OpenGL
Первая программа OpenGL. Создание заготовки приложения OpenGL. Создание простого графического окна. Разбор кода Simple. Рисование прямоугольника внутри окна (GLRect). Масштабирование рисунка под размеры окна. Анимация прямоугольника с помощью OpenGL и GLUT (Bounce). Библиотечная функция таймера. Двойная буферизация.
Оглавление | - |
Самостоятельная работа 202 часа 26 минут | Геометрические примитивы в OpenGL
Поддержка меню в GLUT. Установка отсекающего объема (куба) для рисования сцены. Рисование точек (Points). Задание размера точки (PointsZ). Рисование линий в трехмерном пространстве (Lines). Ломаные и замкнутые линии. Управление шириной линий (LinesW). Фактура линий (LinesStipple). Рисование многоугольников в трехмерном пространстве. Рисование треугольников. Обход вершин. Ленты и вееры треугольников. Рисование конуса (Triangle). Удаление скрытых поверхностей. Отбор (culling). Каркасный режим и режим с заливкой. Фактура многоугольников (PolygonStipple). Каркасный режим: отсечение внутренних граней (Star).
Оглавление | - |
Самостоятельная работа 212 часа 29 минут | Непрограммируемый конвейер в OpenGL
В лекции рассматривается непрогроммируемый геометрический конвейер OpenGL. Системы координат. Команды управления текущими матрицами преобразования. Модельные и проекционные преобразования. Стеки матриц. Построение модели атома в ортогональной проекции (Atom). Модель полого бруска в ортогональной проекции (Ortho). Модель полого бруска в перспективной проекции (Perspect). Построение модели атома в перспективной проекции (Atom Perspect). Моделирование системы с относительными вращениями (Solar). Прямая загрузка матриц преобразований (Transform). Прямая загрузка матриц преобразований (SphereWorld).
Оглавление | - |
Самостоятельная работа 836 минут | - | |
Самостоятельная работа 224 часа 20 минут | Свет и материалы в OpenGL
Глаз человека и оптические системы. Куб цвета (ColorCube). Свет и материя. Модель освещения. Модель самолета без использования освещения (Jet). Рисование освещенной сферы (LightSphere). Материал и его свойства. Задание свойств материала. Первый способ задания нескольких материалов (MultiMaterial). Группы атрибутов. Второй способ задания нескольких материалов (ColorSphere). Источники света и их свойства. Модель самолета с нулевым освещением (JetNight). Модель самолета с равномерным освещением (JetLight). Модель самолета с зеркальным отражением (JetShiny). Кристалл и прожектор (CrystalAndSpot). Модель самолета и его тени (JetShadow). Освещенный мир сфер (SphereWorld).
Оглавление | - |
Самостоятельная работа 237 минут | Смешивание, туман, сглаживание, отклонение в OpenGL
В лекции рассматривается пример работы со смешиванием.
Оглавление | - |
Самостоятельная работа 936 минут | - | |
Самостоятельная работа 241 час 42 минуты | Пользовательские компоненты
Рассматриваются этапы разработки компонентов. Выбор базового класса компонента. Создание визуального компонента FirstComponent. Пробное тестирование компонента. Развертывание свойств вложенного объекта компонента. Установка значений свойств компонента по умолчанию. Создание невизуального компонента Planets. Создание невизуального компонента-будильника AlarmClock (тревожные часы) с собственным событием. Добавление в компонент пользовательского события стандартным способом. Тестирование компонента AlarmClock. Добавление в компонент пользовательского события расширенным способом.
Оглавление | - |
Самостоятельная работа 253 часа 2 минуты | Пользовательский интерфейс Windows Forms для C#
В данной лабораторной работе рассматриваются некоторые воможности интегрированной среды разработки программного обеспечения (IDE - Integrated Development Environment) Visual Studio.NET 2005. Установка пароля на главное окно приложения. Добавление списка для запуска упражнений. Смайлики. Краткое описание части компонентов панели Toolbox. Простой калькулятор. Применение коллекций для предотвращения повторных запусков формы. Встраивание COM-объекта "Windows Media Player" в свое приложение. Добавление к форме других элементов управления.
Оглавление | - |
Самостоятельная работа 261 час 43 минуты | Пользовательские элементы управления
Графический интерфейс пользователя (GUI - Graphics User Interface). Построение элемента управления BeepButton. Переопределение наследуемого от Control виртуального метода диспетчеризации события Click. Проектирование диалогового окна сообщений MyDialogBox. Тестирование пользовательских элементов BeepButton и MyDialogBox. Проектирование музыкальной кнопки SoundButton. Создание компонента блока музыкальных кнопок SoundButtonBox. Подготовка файлов звука к проигрыванию компонентом SoundButtonBox. Тестирование компонента SoundButtonBox. Рисование круглой кнопки.
Оглавление | - |
Самостоятельная работа 272 часа 5 минут | Разработка комбинированного компонента
В данной лабораторной работе приведены упражнения по созданию собственных пользовательских комопонентов. Добавление объектов всплывающей подсказки. Таблица цветов структуры Color. Разработка кнопки ClickmaticButton. Наполнение класса ClickmaticButton функциональностью генерации щелчков мыши. Тестирование генерирующей кнопки ClickmaticButton. Разработка кнопки в стиле полос прокрутки. Тестирование скроллирующей кнопки ArrowButton. Комбинирование элементов в единый компонент NumericScan. Использование компонента NumericScan для управления текстом. Динамическое создание панели управления текстом. Динамическое создание панели представления текста.
Оглавление | - |
Самостоятельная работа 1036 минут | - | |
Самостоятельная работа 282 часа 45 минут | Стандартные меню приложений
В лекции приводятся примеры работы с тремя новыми классами для организации пользовательского интерфейса управления приложением. Простое меню. Меню с флажками. Декларативное создание меню. Программирование меню. Меню с изображениями. Декларативная часть создания меню. Добавление пиктограмм к объектам команд. Загрузка рисунков через локальный файл ресурсов. Назначение рисункам свойств внедряемых ресурсов. Присоединение рисунка к свойству Image элемента меню через стандартный файл глобальных ресурсов проекта. Размещение рисунка в пользовательском файле глобальных ресурсов. Загрузка пиктограммы из файла рисунка во время выполнения. Динамическое присоединение пиктограмм к элементам меню. Создание элементов меню программным способом. Программирование узлов меню верхнего уровня. Программирование команд. Использование списка изображений для хранения пиктограмм меню. Создание файла ресурсов программным способом. Контекстное меню. Создание контекстного меню динамическим способом. Создание линейки контекстных меню декларативным способом.
Оглавление | - |
Самостоятельная работа 298 минут | Панели инструментов и строка состояния
В данной лекции рассматриваются панели инструментов и строка состояния.
Оглавление | - |
Самостоятельная работа 1136 минут | - | |
Самостоятельная работа 3055 минут | Web-службы
В данной лекции рассматриваются панели инструментов и строка состояния.
Оглавление | - |
Самостоятельная работа 314 часа 37 минут | Стилевое оформление страниц
В лабораторной работе приведены примеры стилевого оформления сайта. Каскадные таблицы стилей. Внутренние стили inline. Встроенные стили embedded. Внешние стили linked. Управление внешними стилями средствами оболочки. Стилевое оформление страниц. Темы. Простое стилевое оформление страницы с помощью темы. Приоритеты тем и CSS. Именованные оформления элементов управления в теме. Оформления сложных элементов управления. Стилевое оформление рисунков. Комбинирование темы и внешних CSS. Применение общей темы в конфигурационном файле. Переключение тем по выбору пользователя. Мастер-страницы. Применение усложненной мастер-страницы. Создание контекстных страниц для мастер-страницы. Наполнение содержимым контекстных страниц. Управление элементами мастер-страницы из контекстной страницы. Программное переключение мастер-страниц. Многослойное подключение мастер-страниц. Подключение мастер-страницы через конфигурационный файл.
Оглавление | - |
Самостоятельная работа 1239 минут | - | |
Самостоятельная работа 322 часа 26 минут | Пользовательские элементы управления
Пользовательские элементы управления (user control). Специальные серверные элементы. Создание простого пользовательского элемента управления. Регистрация пользовательского элемента на странице. Программирование пользовательского элемента. Порядок генерации событий инициализации. Применение вспомогательных классов при создании сложных пользовательских элементов управления. Доступ из кода Web-страницы к составным компонентам пользовательского элемента управления. Динамическое создание пользовательского элемента управления. Управление динамической загрузкой многих пользовательских элементов управления (портальные каркасы).
Оглавление | - |
Самостоятельная работа 331 час 17 минут | Навигация по сайту
Навигация с использованием карты сайта. Определение карты сайта. Декларативная привязка к карте сайта. Использование мастер-страниц для размещения ссылок. Программное управление картой сайта. Навигация с использованием фреймов.
Оглавление | - |
Самостоятельная работа 341 час 42 минуты | Многокадровые элементы управления
Элемент управления MultiView. Управление работой вкладок. Добавление к MultiView функций навигации. Элемент управления Wizard. Программирование событий элемента управления Wizard. Стили элемента Wizard. Шаблоны элемента Wizard.
Оглавление | - |
Самостоятельная работа 1336 минут | - | |
Самостоятельная работа 353 часа 1 минута | Управление состоянием страниц на клиенте
Управление состоянием страниц на клиенте. Состояние вида. Программирование словаря ViewState страницы. Программирование ViewState страницы с применением объекта Hashtable. Восстановление состояния вида элемента списка через коллекцию запроса. Шифрование информации в состоянии вида. Скрытые поля. Строки запроса. Межстраничная обратная отсылка данных. Cookie-наборы. Проверка поддержки механизма cookies клиентом. Сохранение данных в состоянии сеанса. Использование механизма сессий. Хранение данных в состоянии приложения. Хранение данных в статических переменных приложения.
Оглавление | - |
Самостоятельная работа 361 час 58 минут | Интерфейс времени проектирования для компонента
Разработка компонента с развитым интерфейсом времени проектирования. Простейший интерфейс времени проектирования. Атрибуты как средство дополнительной настройки компонента. Добавление к компоненту пиктограммы, класса дизайнера, смарт-тега. Усовершенствование смарт-тега компонента. Управление контекстным меню этапа проектирования компонента. Исключение свойств и событий из панели Properties. Свойства режима проектирования. Вывод дополнительной надписи на компоненте. Управление действием по умолчанию графического редактора. Прямая обработка очереди сообщений Windows.
Оглавление | - |
Самостоятельная работа 372 часа 52 минуты | Безопасность: аутентификация с помощью форм
Основные задачи по защите сайта. Сертификаты. Аутентификация форм. Настройка режима аутентификации форм. Хранение удостоверений в конфигурационном файле. Управление доступом анонимных пользователей. Программное добавление пользователей в конфигурационный файл. Создание страницы регистрации. Хеширование паролей в конфигурационном файле. Закрепление за броузером постоянной аутентификации форм. Создание хранилища удостоверений. Добавление в хранилище БД новых пользователей через утилиту WAT. Страница регистрации при использовании Membership. Административные страницы управления аутентификацией с использованием API Membership. Административная страница создания пользователей в БД. Административная страница удаления пользователей из БД. Административная страница извлечения списков пользователей из БД. Административная страница обновления пользователей в БД. Элементы управления вкладки Login. Административная страница регистрации на базе элемента управления Login.
Оглавление | - |
Самостоятельная работа 1436 минут | - | |
5 часов | - |