Метапрограммирование интерфейсов в ASP.NET MVC презентация

Содержание

Дублирование кода http://www.flickr.com/photos/popilop/331357312/

Слайд 1Метапрограммирование интерфейсов в ASP.NET MVC
Алексей Волков
Сонда Технолоджи
aivolkov.ru
Вторая конференция .NET разработчиков


Слайд 2Дублирование кода
http://www.flickr.com/photos/popilop/331357312/


Слайд 3Дублирование кода


Слайд 4Дублирование кода


Слайд 5Дублирование кода


Слайд 6

http://en.wikipedia.org/wiki/File:2000_core-repository02_hg.jpg


Слайд 7Template Helpers + Shared Views


Слайд 8Вариант Shared Views


Слайд 9Вариант Shared Views


Слайд 10Вариант Shared Views


Слайд 11Вариант Shared Views


Слайд 12Контроллеры в Shared Views


Слайд 13
Снова дублирование кода
http://www.flickr.com/photos/kugelfisch/4663326851/


Слайд 14Совершенствование Shared Views
Наследование от базовых контроллеров
Generic контроллеры


Слайд 15Вариант generic-контроллеров
http://aivolkov.ru/2010/10/ aspnet-mvc-and-generic-controllers/


Слайд 16Вариант generic-контроллеров


Слайд 17Избавление от «свалки» в Shared


Слайд 18Generic-пути к View-файлам


Слайд 19Generic-пути к View-файлам

VirtualPathProviderViewEngine.FindView
и
VirtualPathProviderViewEngine. GetPathFromGeneralName


Слайд 20Generic-пути к View-файлам
string virtualPath = location .Format(name, controllerName, areaName);

string urlPart = controllerContext.RouteData.Values[“urlPart"];
string

virtualPath = location .Format(name, controllerName, areaName, urlPart);

Слайд 21Generic-пути к View-файлам
ViewLocationFormats = new[] {

"~/Views/{1}/{3}/{0}.cshtml",
"~/Views/{1}/{3}/{0}.vbhtml",
"~/Views/{1}/{0}.cshtml",
"~/Views/{1}/{0}.vbhtml",
"~/Views/Shared/{0}.cshtml",
"~/Views/Shared/{0}.vbhtml"
};

Слайд 22Generic-пути к View-файлам


Слайд 23Плюсы от применения подобных подходов

Заметно снижается дублирование кода
Снижается себестоимость разработки
Заметно уже

при числе источников данных на одну generic-схему > 5

Слайд 24Подводные камни

Очень сложные схемы и интерфейсы
Применение в неподходящих случаях


Слайд 25Спасибо за внимание
Алексей Волков
Сонда Технолоджи
me@aivolkov.ru
twitter.com/AIVolkov


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика