Александр Евгеньевич Шухман, к.п.н., заведующий кафедрой администрирования информационных систем Оренбургского государственного университета Новые технологии разработки веб-приложений для платформы Microsoft .NET 3.5 (презентация учебного курса) 8 декабря 2008 года Современные тенденции развития веб-приложений •RIA (Rich Internet Application) – приложения с высокой интерактивностью, предлагающие оригинальный интерфейс с нестандартными элементами управления; •порталы, содержащие большое количество страниц с возможностью легкой модификации дизайна и контента; •интранет-технологии – использование вебприложений как основы для распределенных приложений в локальной сети. Современные технологии разработки веб-приложений •клиентские технологии: должны поддерживать графику и мультимедиа, обеспечивать наиболее полные возможности обработки информации (Flash, SilverLight) • серверные технологии: должны обеспечивать гибкость разработки надежных и эффективных приложений (MVC – фреймворки: Ruby on Rails, Microsoft MVC) • технологии взаимодействия клиентских и серверных компонентов: AJAX Недостатки Microsoft Web Forms Модель работы приложения, управляемая событиями, что приводит к смешению бизнеслогики и интерфейса: программный код привязан к обработчикам событий Обработка событий на сервере приводит к постоянным перезагрузкам страницы Сохранение состояния между обращениями к странице приводит к постоянной передаче данных методом Post, что не отражается в URL. Это затрудняет сохранение ссылок на страницы. Затруднено модульное тестирование приложения, поскольку код привязан к элементам управления. Технология AJAX Предполагает асинхронные запросы к серверу из клиентского кода на JavaScript без перезагрузки страницы. В .NET Framework 3.5 библиотека AJAX является составной частью ASP.NET. Состав ASP.NET AJAX •AJAX Framework для JavaScript •Контейнер UpdatePanel для взаимодействия с сервером без перезагрузки страницы •Расширители элементов управления ASP. Технология Silverlight 2 Поддержка разнообразных визуальных и мультимедиа эффектов Декларативное описание интерфейса на языке XAML Поддержка сложной обработки информации на клиентской стороне с использованием языков .NET, например C#, и подмножества FCL Разработка интерфейса с помощью дизайнерских инструментов, отдельно от разработки программного кода Технология MVC MVC – Model – View – Controller Удобна для разработки сайтов со сложной многоуровневой структурой Model – подсистема бизнес-логики и хранения данных View – подсистема, обеспечивающая пользовательский интерфейс Controller – подсистема управления сайтом. Модель и представление взаимодействуют с помощью контроллера. Инструментарий Microsoft для Web-приложений Разработка дизайна страницы Microsoft Expression Web Инструментарий Microsoft для Web-приложений Разработка дизайна SilverLight Microsoft Expression Blend 2 Инструментарий Microsoft для Web-приложений Разработка программного кода Microsoft Visual Studio Характеристики учебного курса Цель курса – изучение новых технологий разработки веб-приложений для платформы Microsoft .NET 3.5 Образовательные направления 010300 Математика. Компьютерные науки. 010400 Информационные технологии. 010500 Прикладная математика и информатика Продолжительность – 1 семестр (18 ч. – лекции, 18 ч. – лабораторные работы) Методические особенности изучения курса Последовательность изучения тем курса соответствует этапам жизненного цикла разработки веб-приложения: от изучения современных требований к веб-приложениям до методики тестирования веб-приложений. Лабораторные работы объединяются сквозным проектом по разработке корпоративного портала. Зачет проводится в форме защиты зачетного проекта (корпоративного портала). В процессе изучения курса осуществляется промежуточная отчетность в виде отчета о разработке концепции и структуры корпоративного портала и текущий контроль по результатам выполнения лабораторных работ. Основные темы курса Современные требования к веб-приложениям. Обзор технологий разработки веб-приложений Инструментарий Microsoft для разработки веб-приложений. Архитектура MVC. Разработка структуры приложения. Программирование контроллера. Хранение данных предметной области в веб-приложениях. Технология ADO.NET. Технология Linq for SQL. Технология NHibernate. Технология AJAX. Обработка событий в модели AJAX. Microsoft AJAX Control Toolkit. Компоненты и расширители Технология SilverLight 2. Язык XAML. Описание дизайна и элементов управления. Программирование на клиентской стороне в SilverLight 2. Тестирование веб-приложений. Функциональное тестирование веб-приложений.с использованием Microsoft Visual Studio 2008. Основные источники www.techdays.ru www.microsoft.com Эспозито Д. Знакомство с технологией Microsoft ASP.NET 2.0 AJAX. – СПб.:Питер, 2007. Al Zabir O. Building a Web 2.0 Portal with ASP.NET 3.5 - O'Reilly, 2008. MacDonald M. Silverlight and ASP.NET Revealed.– Apress, 2007. Moronney L. Beginning Web Development, Silverlight, and ASP.NET AJAX: From Novice to Professional - Apress, 2008 Sanderson S. ASP.NET MVC Framework Preview - Apress, 2008 Разработка структуры портала Используется MVC. Демонстрация. Разработка интерфейса навигации портала Используется SilverLight 2. Демонстрация Результаты Разработаны структура и содержание учебного курса, обеспечивающего изучение самых современных технологий веб-разработки от Microsoft Разрабатываются учебно-методические материалы: презентации лекций и указания к лабораторным работам. Курс разрабатывается при поддержке Microsoft и Интуит.РУ После окончания разработки учебнометодические материалы будут доступны для использования в учебном процессе. Описание компетенций GAHFA Модель компетенций EUCIP Квалификации: системный аналитик, разработчик программного обеспечения, сетевой менеджер, консультант по принятию решений, инженер операционных систем, администратор баз данных, менеджер ИТ-проектов. Описание каждого специализированного направления подготовки включает обзор должностных обязанностей, личностные компетенции, профессиональные компетенции, список учебных курсов, соотнесение квалификации с аналогичными квалификациями в структуре компетенций SFIA, AITTS, CIGREF, GAHFA. Структура компетенций EUCIP самостоятельный выбор цели самостоятельная постановка задач и планирование осознанный выбор методов решения новые оригинальные результаты проекта Компетенции Computer Curricula 2005 (Association for Computing Machinery (ACM) и Computer Society of IEEE) Реализованы в стандарте «Информационные технологии» общепрофессиональные компетенции; профильно-ориентированные компетенции; компетенции владения ядерными или базовыми технологиями; исходящие (рабочие) компетенции; дополнительные компетенции. Группы компетенции CC2005 Компетенции владения базовыми технологиями являются общими для всех направлений подготовки, однако профили различаются уровнем компетенции по каждой из технологий. Выделяют от 30 до 40 базовых технологий. Исходящие компетенции в СС2005 определяют степень готовности выпускника выполнять те или иные конкретные практические работы. Набор исходящих компетенций составлен с учетом социологического опроса значительного числа компаний ИТ-отрасли. Уровни компетенций в стандартах третьего поколения 0 – уровень отсутствия знаний (компетенция для конкретного профиля является несущественной) 1 – уровень ознакомления (понимание общих принципов вопроса) 2 – уровень технической грамотности (уверенное знание методических основ, понимание функциональных возможностей, областей применения) 3 – уровень понимания концепций/способности использования (понимание концепций и абстракций, способность использовать на практике) 4 – углубленные знания/применение в приложениях (детальное знание средств и решений, способность применения для создания прикладных технологий) 5 – уровень эксперта, обычно используется для характеристики компетенций магистерского уровня. Система компетенций для ВИТцентров (ГНИИИТ Информика) Анализ Интернет-ресурсов кадровых агентств и кадровых служб в секторе ИТ Было выделено 13 профессий и определены 62 компетенции для IT-специалистов. Уровни компетенций выделяются в терминах самостоятельности, влияния, сложности и бизнес квалификации. Уровни нумеруются с 1-го – начального до 5-го – очень высокого, существующего обычно в больших организациях: Помогай; Применяй; Разрешай; Обеспечивай, советуй; Инициируй, влияй Недостатки системы компетенций для ВИТ-центров Выделенный набор профессий недостаточно хорошо структурирован. Так, для каждой профессии можно определить несколько различных уровней с разными требованиями. Например, для профессий «Инженер по качеству» и «Ведущий тестировщик» список компетенций первой профессии является подмножеством списка компетенций второй. Это означает, что обе профессии представляют разные уровни одной более общей профессии. Многие из предложенных компетенций очень узкие, связаны с конкретными информационными технологиями. Следовательно, система компетенций должна постоянно подвергаться пересмотру с появлением новых технологий, и снижением актуальности существующих. Особенности дополнительного профессионального образования слушатели курсов имеют различный стартовый уровень сформированности компетенций, связанный с различиями в уровне образования, в содержании подготовки по различным направлениям и специальностям, в опыте работы для оценки стартового уровня компетенций необходимо иметь возможность четко установить соответствие между компетенциями выпускника, сформированными при обучении в университете, и профессиональными компетенциями специалиста для каждой дисциплины дополнительного профессионального образования необходимо знать минимально необходимые стартовые уровни компетенций и уровни, которые могут быть достигнуты при условии успешного освоения дисциплины, подтверждаемые сертификационными испытаниями