пятница, 21 июня 2013 г.

Что нас ждет в ASP.NET MVC 5


Данная публикация содержит ключевые моменты, на которых будет акцентировано внимание в процессе работы над новыми версиями ASP.NET MVC, ASP.NET Web API и ASP.NET Web Pages. Этот документ не является официальной спецификацией или чем то вроде того. Наверняка многое из того, о чем здесь идет речь, будет реализовано, но нет гарантии что этот  список в будущем не претерпит изменений. Вы можете посетить сайт UserVoice для того что бы оставить свои пожелания, которые будут услышаны разработчиками ASP.NET и приняты ими в внимание.
ASP.NET представляет собой набор компонентов для создания веб сайта или сервиса, которые могут размещаться как локально, так и в облаке. Разработчики могут использовать для создания сайтов и сервисов только те компоненты, которые им нужны в их проектах. ASP.NET MVC, ASP.NET Web API и ASP.NET Web Pages – это компоненты которые созданы в рамках одного контекста ASP.NET.
Недавно увидела свет Visual Studio 2012, .NET 4.5, MVC 4, Web API и Web Pages 2. Вместе с тем продолжается работа над новыми версиями продуктов, некоторые подробности очевидно станут известны на конференции BUILD буквально через пару дней а RTM наверняка увидит свет к концу года. Ниже представлен список изменений который очевидно найдет свое отражение в новых версиях:

Web API

Это большая область на которой сфокусировано внимание разработчиков занимающихся подготовокой новой версии. Возможности Web API будут расширены, будет усовершенствована функциональность OData, будет улучшена поддержка приложений Windows Store, добавлена возможность мониторинга и и трассировки. В дополнение, будет обновлен шаблон, который позволит использовать новую функциональность.
  • ODataблагодаря использованию нового парсера OData URI, улучшится поддержка запросов OData. Разработчики получат возможность контролировать семантику запросов OData. Используя новые форматтеры OData, контроллеры метаданных и возможности моделирования конечных точек (endpoints) смогут быть реализованы с использование различных источников данных.
  • Поддержка Window StoreПоддержка приложений Windows Store на клиентской стороне может быть расширена. Дополнительно к классу HttpClient будет добавлена поддержка форматтеров Web API.
  • Диагностика и логирование – Для разработчиков и администраторов важно наличие возможностей мониторинга и диагностики различных проблем использования сервисов, постореных на Web API. В следующей версии появится инструментарий трассировки и генерации станиц помощи. Web API предоставляет разработчикам и администраторам возможность контрлоировать работу web API посредством трассировки и обощенного логирования с использованием System.Diagnostics, ETW, Nlog и Log4Net. В дополнение к этому, генерирование страниц помощи Web API сделает возможным создание полноценной веб-документации для вашего веб API включая URI ресурсов, разрешенные HTTP методы, исключенные параметры и образец сообщения полезной нагрузки.
  • Сраница помощи – шаблон Web API будет подвергнут изменениям, вследствие чего появится возможность автоматической генерации страниц помощи, трассировки и поддержки OData. Дополнительно, появится новый шаблон SignalR предназначенный для быстрого создания web API используя новый real-time фреймворк.

MVC

Для рантайм компонентов новой функциональности добавлено не будет. Вместо этого внимание будет сфокусировано на дополнении существующего набора шаблонов для создания различных типов веб-приложений наряду с улучшением уже существующих шаблонов.
Вот возможный список изменений:
  • SignalRэто новая часть семейства ASP.NET основная задача которой является создание функциональности реального времени, построенной на WebSocket и других низкоуровневых транстпортных решениях. Будет добавлен шаблон для создания SignalR соединения и привязки его к приложению ASP.NET, также будет добавлен новый темплейт проекта который будет содержать в себе взаимодествие с ASP.NET MVC и ASP.NET.
  • Шаблон и инструментарий для одностраничного приложения (SPA) это также новое направление, по которому ведутся работы командой разработчиков ASP.NET. В следующей версии появится новый MVC шаблон использующий Knockout.js и контроллеры Web API. Шаблон будет содержать в себе наиболее эффективные приемы создания SPA. В Visual Studio будет добавлен инструментарий позволяющий сделать проще процесс разработки клиентской части приложения с использованием LESS, CoffeeScript, подсветка синтаксиса для Knockout.js, HandleBars, Mustache, Paste JSON as Classes и многое другое. Примечание: Не так давно в одной из Beta версии Visual Studio 2012 был добавлен шаблон, предназначенный для создания одностраничного приложения с использованием библиотеки Upshot.js и специальных объектов DataController построенных на Web API, основной задачей которых были операции вставки изменения и удаления. Команда ASP.NET заявила что не собирается далее работать над этим шаблоново и библиотекой Upshot.js. Вместо этого был отдан приоритет на усовершенствование взаимодейтсвия с более распространенными библиотеками и в последующих версиях этот тренд должен сохранится.
  • Windows Azure Active Directoryпланируется сделать более простым процесс помещения в облако Azure приложений внутри своей организации  использующей технологию Active Directory используея Windows-аутентификацию. Это позволит   помещать приложения в Azure без существенных изменений. Подобные изменения потребуют создания нового инструментария Visual Studio который позволить использовать Active Directory аутентификацию в Azure за несколько шагов.
  • Facebookновый шаблон проекта дя создания приложения Facebook с использвоанием ASP.NET. Разработчики получат возможность использования Facebook Developer Center для получения параметров приложения. После этого они смогут использовать ключ приложения в шаблоне Facebook для возможности использования всех возможностей C# Facebook SDK.
  • Шаблоны MVC для мобильных платформ в данный момент эти шаблоны имеют некоторые проблемы, которые приводят к тому что в некоторых случаях шаблон слишком агрессивно кешируется, в то время как в других случаях не кешируется вовсе. Эта проблема по заверениям разработчиков будет испоавлена.
Как и вссегда вы также можете принять участие в составлении TODO списка новых версий ASP.NET. Посетите  сайт UserVoice для ASP.NET и оставте там свои пожелания. Наиболее контруктивные будут приняты во внимание командой ASP.NET и возможно найдут свою реализацию в будущих версиях