WebMatrix
Microsoft предоставляет отличный инструментарий в виде Visual Studio для разработки проектов любой сложности. Но что если перед разработчиком стоит задача создания простейшего веб - представительства компании, небольшой галереи изображений? Данные задачи сравнительно просты. Значительно сложнее подобрать соответствующий инструментарий. Visual Studio, конечно же, предоставляет все необходимое, но покупая лицензию на нее, оплачивается множество других функций, необходимости в которых разработчик, в данном проекте, не испытывает.
Иными словами, в настоящий момент сформировалась потребность в инструментарии, ориентированном на создание функционально простых Интернет - приложений. Для этой ниши и создавался WebMatrix.
В состав инструментария WebMatrix включены такие компоненты, как облегченный веб-сервер IIS Developer Express, СУБД SQL Server CE 4, программные расширения ASP.Net и новый механизм отображения данных на веб-страницах в модели MVC (Model View Controller) под названием ASP.Net Razor.
Главное назначение инструментария WebMatrix – быстрое и бесплатное создание готовых веб-сайтов под управлением операционной системы Windows с использованием популярных веб-приложений. Возможности пакета WebMatrix подходят веб-программистам любого уровня.
Пакет WebMatrix бесплатно предлагает веб-разработчикам базовые инструменты для написания кода, поддержки собственной базы данных и интеграции с открытыми решениями из галереи веб-приложений на сайте "Веб-платформа Microsoft". Кроме того, пакет WebMatrix поддерживает удобную публикацию и развертывание готовых сайтов на мощностях сервис-провайдеров.
Cтандартная IIS поддерживает режим тестирования для разработчиков, но она требует администраторских полномочий, а кроме того с каждой версией Windows поставляются различные IIS. Например, если разработчик использует Windows XP, то в его распоряжении находится IIS 5.1, а в этой версии нет ряда важных технологий, присутствующих в IIS 7, поставляемой с Windows Server 2008
Таким образом, Web Matrix:
- представляет собой среду разработки веб-приложений, по принципу "все в одном"" на базе технологий от Microsoft
- предоставляет средства разработки, оптимизации, анализа и публикации веб-приложений
Для быстрого создания сайта WebMatrix предлагает использовать галерею веб-приложений, создать сайт из предустановленного шаблона или открыть уже существующую папку, содержащую сайт.
Каждый созданный по шаблону сайт будет содержать — набор .cshtml страниц (использующих Razor для рендеринга), базу данных SDF (SQL Server CE 4) и CSS файл. Cshtml файлы представляют собой страницы, содержащие разметку для нового движка Razor.
Рассмотрим более подробно основные элементы интерфейса WebMatrix.
Галерея
Галерея Web-приложений — это возможность за 3 клика и за пару минут установить любое из множества популярных web-приложений на базе платформе Microsoft — CMS, eCommerce системы, блоги, галереи, порталы и многое другое. В процессе установки нужно будет лишь указать данные для подключения к SQL Server (если приложение не умеет работать с SQL Server Compact) — и после загрузки приложения и всех его зависимостей оно будет открыто в WebMatrix и готово к работе.
Редактор
Оболочка, помимо доступа к галерее и шаблонам, предоставляет набор встроенных редакторов и средств для управления созданным сайтом — это и редакторы коды, разметки, дизайнеры и редакторы данных для БД, средства публикации сайта и некоторые средства анализа веб-приложения.
Редактор поддерживает подсветку синтаксиса C#, VB, HTML, XML, CSS, CHTML (Razor), ASPX. Поддерживается создание структуры и наполнение данных таблиц БД с помощью встроенных редакторов.
Инструментарий
Поддержка миграции на SQL Server
Когда возможностей SQL Server Compact не достаточно, можно легко мигрировать БД на SQL Server — достаточно параметров подключения.
Средства публикации
Стремясь упростить не только разработку, но и весь жизненный цикл веб-приложения, Microsoft добавили в WebMatrix инструменты для публикации сайта и, кроме того, даже возможность подобрать хостинг. Поддерживаются три модели публикации — FTP, FTP/SSL и Web Deploy — используя специальные средства от Microsoft. Также, доступна инкрементальная публикация — т.е. WebMatrix строит список измененных локально файлов и позволяет в один клик обновить их на сервере.
Аналитика
WebMatrix предоставляет два варианте анализа сайта — первый, анализ всех запросов к сайту и рекомендации по увеличению времени загрузки, индексируемости и т.п. Второй — это SEO Report который предоставит информацию о созданном сайте с точки зрения SEO оптимизации. В каждом из отчетов WebMatrix не только укажет на проблемы, но и даст рекомендации по исправлению, а также предоставит описание — почему та или иная вещь помечена как проблемная.
Компоненты
Простота разработки приложений с помощью WebMatrix обеспечивается компонентами, входящими в его состав.
IIS Express
Как правило, тестирование ASP.Net приложений осуществляется с использованием встроенного ASP.Net Development Server в Visual Studio, либо IIS сервера Windows.
IIS сервер - решение, сочетающее в себе лучшие качества обоих вышеназванных вариантов.
IIS Express будет работать с VS 2010 и Visual Web Developer 2010 Express, запускаться на Windows XP и выше, не требует прав администратора и внесения изменений в код приложения. Позволяет работать со всеми типами ASP.NET - приложений.
Таким образом, IIS Express:
- Это легкий и маленький сервер для разработки и тестирования приложений
- Совместим с модулями IIS
- Поддерживает CGI
- Поддерживает SSL
- Недостатки IIS Express:
- управление осуществляется только при помощи утилиты appcmd
- отсутствие полноценной поддержки WCF
SQL Server CE 4
SQL Compact Edition 4 - это бесплатный, встраиваемый движок базы данных, который был спроектирован в том числе для работы в среде веб-приложений ASP.NET. SQL Compact работает с существующими .NET интерфейсами через API, а также поддерживает совместимый с SQL Server, синтаксис запросов.
SQL Server CE 4 не требует установки. Т.е. чтобы добавить в веб-приложение поддержку этой СУБД достаточно скопировать в папку bin набор необходимых сборок.
Также из плюсов SQL Server CE можно отметить – доступный провайдер для Linq2Sql, Entity Framework, совместимость синтаксиса со взрослым SQL Server и, соответственно, легкая миграция на полноценный сервер – с минимумом переписывания кода.
Также как и в случае с веб-сервером, Compact Edition 4 не требует наличия администраторских привилегий и поддерживает "живую" миграцию данных в настоящий SQL Server. Кроме того, новая версия полностью поддерживает многопоточные приложения, чего не было в прежних версиях Compact Edition.
Razor
Интересной изюминкой пакета WebMatrix является компонент ASP.Net Razor, который здесь служит основным механизмом отображения данных на веб-страницах ASP.Net. Удобный синтаксис позволяет с минимальными усилиями описывать шаблоны вывода данных, сохраняя удобочитаемость и эффективность как серверного кода, так и кода HTML-страниц.
Подводя итог, отметим, что детально возможности и функционал инструментария WebMatrix рассматриваеются в ряде практических занятий данного курса.