Опыт преподавания технологий microsoft.net

26
Губанов Юрий Санкт-Петербургский государственный университет Математико-механический факультет

Upload: conan-cleveland

Post on 01-Jan-2016

72 views

Category:

Documents


1 download

DESCRIPTION

Губанов Юрий Санкт-Петербургский государственный университет Математико-механический факультет. Опыт преподавания технологий Microsoft.NET. Содержание. Читаемые курсы Программа курсов Основные идеи Небольшое упражнение. О факультете. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Опыт  преподавания технологий  Microsoft.NET

Губанов Юрий

Санкт-Петербургский государственный университет

Математико-механический факультет

Page 2: Опыт  преподавания технологий  Microsoft.NET

Содержание

Читаемые курсы Программа курсов Основные идеи Небольшое упражнение

Page 3: Опыт  преподавания технологий  Microsoft.NET

О факультете

Матмех СПбГУ – победитель многих соревнований по программированию (ACM, единственная команда, два года подряд бравшая первое место)

Первое в России прочтение курса по Microsoft.NET (А.А. Терехов)Старейший курс в РоссииБолее двухсот слушателей

Page 4: Опыт  преподавания технологий  Microsoft.NET

О докладчике Профессиональный программист >10

летОбразование – матмех СПбГУОпыт в коммерческом применении

преподаваемых технологий

Опыт руководства коммерческими проектами по разработке ПО >8 лет

Опыт преподавания с 2003-го года Опыт работы пионервожатым и

учителем в музыкальной школе

Page 5: Опыт  преподавания технологий  Microsoft.NET

Читаемые курсы

Спецкурс "Введение в Microsoft.NET" + Спецсеминар (практикум) "Введение в

Microsoft.NET"

Спецкурс "Разработка бизнес-приложений на Microsoft.NET"

Спецкурс "Перспективные технологии Microsoft.NET"

Page 6: Опыт  преподавания технологий  Microsoft.NET

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

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

"проверочными списками” Методика приёма экзамена,

практических работ

Page 7: Опыт  преподавания технологий  Microsoft.NET

Введение в Microsoft.NET Базовый курс, рассчитанный на студентов

2-4 курсов Рассматриваются основные понятия и

технологии Microsoft.NET Не требуется знакомства с .NET,

желательно знакомство с С++ или Java Одна пара в неделю Идёт с обязательной практикой Презентации этого курса (2005-го года )

доступны на сайте Microsoft

Page 8: Опыт  преподавания технологий  Microsoft.NET

Программа курса Немного истории Обзор платформы Microsoft.NET Основы платформы Microsoft.NET Сборки (assemblies) Обзор C# (2-3 лекции) Windows Forms (1-2 лекции) ADO.NET ASP.NET SOA и веб-сервисы Будущее Microsoft.NET

Page 9: Опыт  преподавания технологий  Microsoft.NET

Что не входит в курс и почему Последнее время – обзор предыдущих

технологий (COM и иже с ним) Сборка мусора Рефлексия (атрибуты входят в лекцию по

C#) .NET Remoting Безопасность CAS Взаимодействие .NET и COM и прочий

InteropServices Работа с XML

Page 10: Опыт  преподавания технологий  Microsoft.NET

Практика

Одна пара в неделю Практическое задание даётся к каждой

лекции Выполнение всех без исключения задач –

необходимое условие допуска к экзамену за спецкурс

Page 11: Опыт  преподавания технологий  Microsoft.NET

Разработка бизнес-приложений на Microsoft.NET "Продвинутый" курс для уже знакомых с

Microsoft.NET Рассчитан на студентов 3-5 курсов Рассматривает прикладные вопросы,

встречающиеся в профессиональном программировании

Желательно прослушать первый курс

Page 12: Опыт  преподавания технологий  Microsoft.NET

Программа курса Как увеличить свою зарплату на собеседовании на $1000 Экскурсия по возможностям студии Тонкости C# FxCop – инструмент правильных пацанов Понятие стиля кодирования. Стиль C# Принципы защищённого программирования и C# Коллекции в C# Отладка в Visual Studio Модульное тестирование Работа со строчками. Регулярные выражения Исключения Домены приложений. Как поймать все-все исключения Работа с системными объектами XML, XSD, XSLT, XPath Многопоточность и синхронизация Создание профессионального GUI

Page 13: Опыт  преподавания технологий  Microsoft.NET

Что ещё можно включить в курс, если есть время Работа с неуправляемыми ресурсами.

IDisposable Работа с неуправляемым кодом. Тонкости

взаимодействия Продвинутая работа с конфигурационными

файлами Профессиональный рефакторинг Рефлектор (.NET Reflector) Программирование и отладка с SQL Server Аспектно-ориентированное

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

Page 14: Опыт  преподавания технологий  Microsoft.NET

Практика Формат экзамена – задача, охватывающая

все обсуждавшиеся аспекты Выдаётся за 2 дня до сдачи Во время сдачи слушатель должен

дореализовать один из аспектов задачи, выданные непосредственно в классе

Требуется также следование стилю кодирования, отсутствие предупреждений FxCop и наличие unit-тестов

В конце этого процесса слушателю ставится оценка "отлично", если он успел сделать всё перечисленное в отведённое ему время.

Page 15: Опыт  преподавания технологий  Microsoft.NET

Перспективные технологии Microsoft.NET Самый "продвинутый" курс Рассчитан на студентов 4-5 курсов

Аудитория твёрдо владеет основами Microsoft.NET

Рассматривает свежие технологии Microsoft.NETСамый "нестабильный" курс

Желательно прослушать первый курс Презентации этого курса (2007-го года)

доступны на сайте Microsoft

Page 16: Опыт  преподавания технологий  Microsoft.NET

Программа курса Windows Communication Foundation

Введение в SOA и WCFАрхитектура WCFКонтракты данных в WCF. Управление временем жизниБезопасность в WCFТранзакции в WCF

Windows Presentation FoundationВведение в WPFXAMLЭлементы управления и раскладкиРесурсы и стилиСвязывание данных

C# 3.0. LINQ и его разновидности Знакомство с Team Foundation Server

Page 17: Опыт  преподавания технологий  Microsoft.NET

Что насчёт других технологий? Silverlight WWF ADO.NET Data Services ADO.NET Entities Framework

Page 18: Опыт  преподавания технологий  Microsoft.NET

Рекомендуемая литература Programming WCF Services, Juval

Lowy

Page 19: Опыт  преподавания технологий  Microsoft.NET

Рекомендуемая литература Windows Presentation Foundation

Unleashed, Adam Nathan

Page 20: Опыт  преподавания технологий  Microsoft.NET

Практика

Пока не проводилась См. далее "сложности практики"

Page 21: Опыт  преподавания технологий  Microsoft.NET

Основные наблюдения

Практика должна быть всегда!Пример начального курса и курса по

WPF/WCF

Приглашай специалистов!Сотрудничество с компаниями Ланит-Терком,

Digital Design, Murano Software○ …и даже Microsoft!

Не стоит погружаться в детали – не поймутПогрузился в детали – дай на это задачу

Page 22: Опыт  преподавания технологий  Microsoft.NET

Сложности практики Админские права

ADO.NET, ASP.NET, WCF – как правило, не хватает Наличие установленного ПО (Visual Studio, add-

ons, Framework 3.5, etc)Часто IT отделения университетов очень неохотно

содействуют в решении проблем и установке нужного ПО

Мало времени (реально успеть человек 10-12) Сдача по выдаваемому результату – читерство Сдача по почте – читерствоo Кроме того, это просто менее полезно

Только личная проверка + вопросы

Page 23: Опыт  преподавания технологий  Microsoft.NET

Практика

Противодействие манипуляции "ну это же легко сделать!"

Пример кода и советовПалиндромБог

Сдача как правило после 3-5 подходовРассчитывайте время

Page 24: Опыт  преподавания технологий  Microsoft.NET

Практика – практические вопросы

Не только проверка результатов Обучение навыкам профессионального программирования

Правила именования и стиль кодирования XML comments Приёмы хорошего дизайна и исправление плохого

○ Инкапсуляция○ Разбиение ответственностей между классами

FxCop Проверка корректности ввода Валидация параметров Usability Accessibility Обработка исключений Вплоть до орфографических ошибок, терминов и английского языка Проблемы многопоточности

Надо быть занудой!

Page 25: Опыт  преподавания технологий  Microsoft.NET

Сложности лекций Использование видео Успеть показать примеры

Надо иметь готовые и проверенные под рукойПроверенные в классе (проблема прав)Уметь быстро печатать Показывать пример из файла – плохо: не

наглядно и непонятно○ естественное ограничение на размер

примеров

Page 26: Опыт  преподавания технологий  Microsoft.NET

Приём экзамена

Посещение – 50% Пятиминутный экзамен без

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