Обзор Microsoft WebMatrix

Все новое — это хорошо забытое старое. Видимо, руководствуясь этим принципом, спустя 7 лет Microsoft решила вернуть к жизни одну из своих старых идей — но в новом облачении. Речь идет о WebMatrix — платформе для web-разработки, бета которой стала доступна недавно. Бета включает в себя много всего вкусного — обещанный IIS Express, SQL Server CE 4 и движок представлений для MVC — Razor. А так же — галерею приложений (интегрировано с WebPI), инструменты мониторинга и анализа сайта, средства публикации. Но хватит вступлений, давайте посмотрим что же есть собственно внутри WebMatrix.

Однако, для начала давайте посмотрим как установить WebMatrix. Все, что нужно сделать — обновить Web Platform Installer до версии 3.0, выбрать в списке продуктов WebMatrix и нажать Install.

image

Затем пара минут ожидания, установка всех зависимостей — и теперь мы уже точно готовы начинать. Пойдем по порядку.

Оболочка


Собственно, первое, что видит пользователь после запуска WebMatrix:

image

Для быстрого создания сайта WebMatrix предлагает использовать галерею веб-приложений, создать сайт из предустановленного шаблона или открыть уже существующую папку, содержащую сайт. Если о создании сайта на основании папки сказать, по большому счету, нечего — обычный web site из Visual Studio будет успешно открыт в WM, то шаблоны и галерея представляют особый интерес. Для начала, посмотрим какие готовые шаблоны предлагают нам для быстрого создания сайта. В текущей бете есть 5 шаблонов

image

Сразу оговорюсь, что шаблоны — самые простые — и это одновременно их достоинство и недостаток. Каждый созданный по шаблону сайт будет содержать — набор .cshtml страниц (использующих Razor для рендеринга), базу данных SDF (SQL Server CE 4) и CSS файл. Пока нет шаблонов MVC приложения, ASP.NET WebForms приложений и т.п. — думаю, все это появится в будущем. Cshtml файлы представляют собой страницы, содержащие разметку для нового движка Razor, но сейчас не будем останавливаться на этом — интересующиеся могут почитать перевод записи из блога ScottGu. Пока же чуть подробнее остановлюсь на очень важном компоненте WebMatrix…

Галерея


Галерея Web-приложений — это возможность за 3 клика и за пару минут установить любое из множества популярных web-приложений на базе платформе Microsoft — CMS, eCommerce системы, блоги, галереи, порталы и многое другое. Приложение будет установлено и развернуто без лишних телодвижений, сложных настроек — и самое важное, что для установки не потребуется долгих и запутанных установок связанных продуктов — все может быть установлено и настроено через WebMatrix с небольшой помощью Web Platform Installer (если потребуется установка Sql Server Express, например). В процессе установки нужно будет лишь указать данные для подключения к SQL Server (если приложение не умеет работать с SQL Server Compact) — и после загрузки приложения и всех его зависимостей оно будет открыто в WebMatrix и готово к работе.

image

Редакторы и инструменты


Оболочка, помимо доступа к галерее и шаблонам, предоставляет набор встроенных редакторов и средств для управления созданным сайтом — это и редакторы коды, разметки, дизайнеры и редакторы данных для БД, средства публикации сайта и некоторые средства анализа веб-приложения.

image

Редактор поддерживает подсветку синтаксиса C#, VB, HTML, XML, CSS, CHTML (Razor), ASPX etc — но, на данный момент, не поддерживает Intellisence — поддержка появится в поздних версиях. Поддерживается создание структуры и наполнение данных таблиц БД с помощью встроенных редакторов.
В качестве дополнительных инструментов, входящих в WebMatrix можно выделить следующие:
1. Поддержка миграции на SQL Server. Когда возможностей SQL Server Compact не достаточно, можно легко мигрировать БД на SQL Server — достаточно сделать два клика (или один, если сервер уже установлен), указать параметры подключения и немного подождать.

image

2. Средства публикации. Стремясь упростить не только разработку, но и весь жизненный цикл веб-приложения, Microsoft добавили в WebMatrix инструменты для публикации сайта и, кроме того, даже возможность подобрать хостинг. Поддерживаются три модели публикации — FTP. FTP/SSL и Web Deploy — используя специальные средства от Microsoft. Так же, доступна инкрементальная публикация — т.е. WebMatrix строит список измененных локально файлов и позволяет в один клик обновить их на сервере.

image

3. Аналитика
WebMatrix предоставляет два варианте анализа сайта — первый, анализ всех запросов к сайту и рекомендации по увеличению времени загрузки, индексируемости и т.п. Второй — это SEO Report который предоставит информацию о созданном сайте с точки зрения SEO оптимизации. В каждом из отчетов WebMatrix не только укажет на проблемы, но и даст рекомендации по исправлению, а так же предоставит описание — почему та или иная вещь помечена как проблемная.

image
image

Компоненты


Разобравшись с внешним видом и возможностями WebMatrix, заглянем «под капот». WebMatrix лежит на трех китах — IIS Express, SQL Server Compact Edition 4 и движок представлений Razor.

a. IIS Express


О нем было сказано уже не мало — можно почитать обзор от ScottGu (перевод) — или любой из множества обзоров, появившихся на профильных ресурсах. Если коротко подытожить, что же представляет из себя IIS Express получим следующее:
• Легкий и маленький сервер для разработки и тестирования приложений, а так же для использования в качестве embedded web-сервера
• Полная совместимость с модулями полноценного IIS
• Integrated Pipeline и Classic режимы
• Поддержка CGI (возможно разворачивать PHP приложения, например)
• Совместимость с конфигурационными файлами IIS (applicationHost.config, web.config)
• Поддержка SSL
Некоторые недостатки так же имеются, как то — невозможность управления через IIS Manager, только через консольную утилиту appcmd, либо редактированием applicationHost.config, пока (в бете) некоторые сложности с поддержкой WCF, нет интеграции с VS (хотя это исправимо) — но многое будет исправлено и улучшено в релизной версии.

b. SQL Server CE 4


Новая версия Embedded СУБД от Microsoft. Эта версия сделала очень качественный рывок вперед, которые открывает перед ней совершенно новые перспективы. А именно – наконец-то реализована работа с СУБД в многопоточном режиме. Если до этого приходилось писать свои уровни абстракции, которые занимались управлением доступом к БД, то теперь SQL Server CE лишен этого серьезного ограничения. Таким образом, его становится возможно использовать даже в веб-приложениях. Более того, SQL Server CE 4 не требует установки! Т.е. чтобы добавить в веб-приложение поддержку этой СУБД достаточно скопировать в папку bin набор необходимых сборок – и все. Так же, SQL Server может успешно функционировать в Medium Trust окружении, т.е. ему открыта дорога на большинство shared-хостингов.
Так же из плюсов SQL Server CE можно отметить – доступный провайдер для Linq2Sql, Entity Framework, совместимость синтаксиса со взрослым SQL Server и, соответственно, легкая миграция на полноценный сервер – с минимумом переписывания кода. Словом, SQL Server CE 4 – идеальный выбор для быстрого прототипирования или использования в небольших, ненагруженных проектах – с возможностью быстрого перехода на полноценный SQL Server.

c. Razor


С появлением MVC Framework у разработчиков ASP.NET появилась мощная, мейнстримовая альтернатива WebForms. Она приносила некоторые новые парадигмы и в целом – смотрелась «легче» чем WebForms. В эту концепцию лаконичности и изящества идеально вписался новый движок для генерации представлений – Razor. Он войдет в состав ASP.NET MVC Framework версии 3 (которая даже позоволит выбирать движок на этапе создания View), сейчас же он доступен для ознакомления в рамках WebMatrix. О нем можно подробнее почитать и посмотреть примеры использования в статьях (1,2) на хабре, в блоге Скота Гатри.

Заключение


Итак, подводя итог всему описанному выше – что же такое Microsoft WebMatrix:
1. Легкая, интегрированная, «все-в-одном» среда разработки веб-приложений на базе технологий от Microsoft
2. Приятный и легковесный интерфейс для разработчика
3. Средства для разработки, оптимизации, анализа веб-приложений и для их публикации
WebMatrix идеально подойдет для разработчиков, только знакомящихся с веб-технологиями Microsoft, или желающих перейти с других платформ. Она может быть использована, например, в школах – на занятиях с углубленным изучением информатики, которые подразумевают разработку веб-приложений. Так же – на младших курсах университетов или на курсах, где веб разработка не является профильным предметом – или для начинающих разработчиков, свято верующих в миф, что все, кроме PHP является «сложным и ООП». А с развитием платформы – кто-знает – может стать хорошей альтернативой Visual Studio Express Web.

Автор материала: alek_sys



Опубликовал admin
18 Авг, Среда 2010г.



Программирование для чайников.