1 / 24

Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework»

Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework». Занятие 1 Знакомство с подходом MVC Гайдар Магдануров GaidarMa@microsoft.com. Знакомство с подходом MVC. Разработка веб-приложений. Простой протокол передачи данных HTTP

ismael
Download Presentation

Тренинг «Разработка веб-приложений с использованием ASP.NET MVC Framework»

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Тренинг«Разработка веб-приложений с использованием ASP.NET MVC Framework» Занятие 1 Знакомство с подходом MVC Гайдар Магдануров GaidarMa@microsoft.com

  2. Знакомство с подходом MVC

  3. Разработка веб-приложений • Простой протокол передачи данных HTTP • Простые стандарты описания интерфейса HTML/CSS • Простой принцип работы «запрос-ответ» • Абстракции для упрощения разработки: • Простые – классические ASP, PHP • Сложные – ASP.NET, JSP • Гибкие – MVC

  4. Паттерн Model-View-Controller • Впервые описан в 1979 году • Trygve M. H. Reenskaug/MVC—XEROX PARC 1978-79 • Предназначен для отделения данных и логики от интерфейса • Реализаций огромное множество: ASP.NET MVC, Maverick.NET, Monorail, ProMesh.NET, PureMVC, Mach-II, Model-Glue, FuseBox, Aranea, Cocoon, Grails, GWT, Spring, Struts, Stripes, Tapestry, WebObjects, Wicket, JSF, SproutCore, Wawemaker, Dojo, Catalyst, CGI:Application, Solstice, Gantry, CakePHP, Joomla, Odin Assemble, Prado, Solar, Zand Framework, Symfony, Django, Pylons, Enthought, Zope, web2py, Camping, Merb, Nitro, Ramaze, Ruby on Rails, XForms

  5. Паттерн Model-View-Controller Model • Model(модель) — модель данных • View(представление) – интерфейс • Controller(контроллер)— логика View Controller

  6. Почему MVC для веб-приложений? • Внешний вид страниц часто изменяется • Иногда нужно несколько вариантов представления одной и той же страницы • Разные браузеры (IE, FireFox, Safari, Opera, ...) • Разные платформы (PC, телефон, КПК, ...) • Разные модели отображения (графические, текстовые, ...) • Тестирование приложения без зависимости от интерфейса значительно проще

  7. ASP.NET MVC Framework

  8. ASP.NET MVC Framework • Набор компонентов для создания приложений, основанных на подходе MVC • Статус MVC Framework - Release Candidate 2 • Поддержка Microsoft (включая jQuery) • Исходный код открыт • MVCContrib • Проект сообщества по расширению возможностей MVC Framework

  9. Запросы в MVCFramework /Product/List/2 Сервер Браузер /Product/Edit/3 List (View) ProductController (Controller) ViewData Edit (View) ViewData БД Product (Model)

  10. Жизненный цикл запроса

  11. Проект MVC Framework 2 Контроллер 3 Модель 4 Представление 1 Таблица маршрутизации

  12. ЛАБОРАТОРНАЯ РАБОТА СОЗДАНИЕ MVC ПРИЛОЖЕНИЯ

  13. ASP.NET: MVC и WebForms? • ASP.NET – платформа, лежащая в основе MVC фреймворка • MVC и WebForms – два подхода к созданию веб-приложений на платформе ASP.NET • Возможность выбора – это хорошо!

  14. ASP.NET предоставляет инфраструктуру • Модель провайдеров • Механизмы кеширования • Шаблоны страниц • Состояние сеансов пользователей • Обработчики страниц • Управление клиентским кодом • Управление данными • Контекст запроса и ответа • И другое...

  15. Web Forms • Хранение состояния между обращениями на сервер • Компонентная модель серверных элементов управления • События элементов управления • Широкая поддержка графической и декларативной разработки • Расширяемость «за рамками» сложна

  16. MVC Framework • Разделение логики и представления • Прозрачность обработки запроса • Легковесные объекты • Простое тестирование • Отчуждаемые компоненты • Широкие возможности по расширению

  17. Процесс разработки с MVC Framework • Структуры данных - Модель • Структура приложения - Маршрутизация • Логика работы - Контроллеры • Интерфейс пользователя - Представление • Автоматическое тестирование - Счастье

  18. Ресурсы

  19. Технологии • Официальный сайт ASP.NET MVC FW • http://www.asp.net/mvc • Исходный код ASP.NET MVC FW • http://www.codeplex.com/aspnet • Проект MVCContrib • http://www.codeplex.com/mvccontrib

  20. Инструменты • Visual Studio или Web Developer Express • http://VisualStudio2008.ru • http://microsoft.com/express/ru/vwd/ • SQL Server или SQL Server Express • http://microsoft.com/rus/SqlServer • http://microsoft.com/express/ru/sql/ • Шаблоны дизайна для MVC сайтов • http://www.asp.net/mvc/gallery

  21. Удобный инсталлятор • Microsoft Web Platform Installer • www.microsoft.com/web/downloads/platform.aspx

  22. Литература

  23. Литература • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides - Design Patterns • Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес - Приемы объектно-ориентированного проектирования. Паттерны проектирования

  24. Литература • Judith Bishop - C# 3.0 Design Patterns • Мартин Фаулер - Рефакторинг. Улучшение существующего кода

More Related