Видел в Лас-Вегасе

Со времени моей последней колонки я имел удовольствие посетить конференцию Microsoft Mix08 в Лас-Вегасе, и хотя я самым решительным образом отвергаю обвинения друзей и семьи в том, что у меня есть Microsoft мозгового имплантата (из-за моего нескрываемого восторга от увиденного), нет никаких сомнений в том, что Microsoft продемонстрировала некоторые очень мощные и захватывающие новые технологии, которые она разработка. Однако, как вы прочтете ниже, значительная часть из них все еще находится в стадии разработки, и заставить их работать в реальных приложениях в ближайшее время будет непросто.

Видел в Лас-Вегасе

Главным толчком от Microsoft на выставке стала последняя версия Silverlight, которая, в отличие от своего предшественника, представляет собой гораздо больше, чем просто видеоплеер. Версия 2 имеет возможности и средства разработки, чтобы стать платформой для полных многофункциональных интернет-приложений (RIA). Microsoft Expression Blend, инструмент веб-дизайна Silverlight, просто фантастичен для компоновки компонентов пользовательского интерфейса с визуальными подсказками не только для выравнивания с другими элементами управления на страницу, но и визуальную подсказку всякий раз, когда два элемента управления находятся на выбранном расстоянии друг от друга, так что с минимальными усилиями вы можете создавать приложения, которые приятно смотреть в. Очевидно, что великие дизайнеры, такие как Джон Харрис, ранее работавший в Macromedia, а ныне старший менеджер по продуктам в Expression Suite внес большой вклад в создание одного из лучших инструментов дизайна пользовательского интерфейса, который я когда-либо видел. пока. Этот акцент на важности дизайна был перенесен и в Visual Studio, где представление «Дизайн» веб-проектов теперь использует превосходный механизм рендеринга от Expressions Web.

Безмолвный

На этом этапе я собираюсь немного отвлечься от истории с Mix08, чтобы смонтировать мою любимую мыльницу — механизмы рендеринга в популярных инструментах веб-дизайна. Многие из этих инструментов дизайна используют собственный проприетарный движок для преобразования вашего HTML в представление, которое приблизительно соответствует представлению, отображаемому каждым браузером. Я намеренно сказал «приблизительно», потому что все мы знаем, что даже основные браузеры не все делают правильно, так какие шансы есть у куска кода, написанного специально для одного инструмента веб-дизайна?

Еще на заре Интернета, когда самым популярным браузером был Navigator от Netscape, Netscape выпустила редактор веб-страниц под названием Netscape Gold, который использовал тот же механизм рендеринга, что и сам браузер, и был довольно хорош. Затем появился IE и навсегда выбросил нас из рая веб-дизайна. Это не копание в адрес IE или любого другого браузера в частности: было бы здорово, если бы все они отображали веб-страницу одинаково, но в настоящее время это просто не так. Конечно, мы определили стандарты, но если вы посмотрите на них, они содержат такие фразы, как «User Agents [браузеры] могут использовать любой алгоритм, какой захотят, и могут предпочесть скорость рендеринга точности». (www.w3.org/TR/REC-CSS2/tables.html). Когда сами стандарты открыты для разных интерпретаций, каковы шансы, что браузеры от разных команд разработчиков в конкурирующих компаниях будут вести себя точно так же?

Если мы собираемся продолжать использовать HTML (и есть веские аргументы против этого), то нам нужен инструмент веб-разработки, чье «представление дизайна» может точно эмулировать различные браузеры. Причина, по которой эти инструменты проектирования содержат свои собственные механизмы рендеринга, как мне сказали, заключается в том, что они могут предложить отладка разработчика, контекстно-зависимая справка и различные другие интегрированные службы, все из которых полезны в раз. Но разве не было бы здорово иметь возможность сказать вашему дизайнерскому приложению использовать другой движок рендеринга, чтобы вы могли видеть действительно точное представление вашей веб-страницы, а не просто приближение?