В последнее время появилась мода на HTML 5, достигающая временами состояния какой-то истерии. Да, сейчас новая версия браузера IE будет поддерживать эту технологию (остальные уже поддерживают). Поэтому появляется тенденция использовать для разработки как раз HTML 5.
Согласен, это очень круто, так как позволит запустить приложение на любой операционке и в любом браузере (можно разрабатывать и вневебовские приложения, просто храня html-страницу локально). Но язык для разработки - это всё тот же JavaScript, на котором повторное использование кода сводится к минимуму. Да и вообще, в сравнении с Java и C# он кажется каким-то уж больно ограниченным. Количество строк кода на нём для решения некоторой задачи будет в
разы выше, чем в упомянутых ранее языках (если я неправ, поправьте меня).
HTML 5 в плане кроссплатформенности безусловно лучше, чем Flash и Silverlight (не нужно ничего устанавливать дополнительно), но последние технологии гораздо мощнее. За Флеш говорить не буду, скажу за Сильверлайт.
В HTML 5 для того чтобы изобразить градиент нужно создать элемент и написать код в onLoad на JS (может, можно и иначе, просветите плиз). Это отличается от задания обычного фона. Почему нельзя было взять более изящную модель, используемую в Silverlight? Фон - это свойство элемента, оно может быть 1) простой кистью:
2) градиентом:
3) картинкой:
и всё это одно и то же свойство Background. Удобно? Безусловно. Обращу также внимание на то, что свойство можно задавать как через атрибут (простое свойство), так и через сложно именованный тег.
Далее. В Сильверлайте можно внутри кнопки поместить другую (-ие):
и всё работает. Было бы здорово увидеть всё это и в HTML :)
А так предлагается перейти на технологию, по своим функциональным возможностям гораздо слабее того, что уже есть сейчас. Короче: очень многого не хватает (я уж молчу про то, что для многих приложений нужно взаимодействие с API ОС).
Идеальное решение, имхо, - это аналогия с ASP.NET. На сервере может использоваться любая среда разработки, а на клиентскую сторону приходит только HTML и JS. И волки сыти, и овцы целы. Другое дело, что написать такой транслятор - задача достаточно трудоёмкая и под силу только серьёзной компании. Посмотрим, может Майкрософт разродится чем-нить подобным :)
Теперь о Windows-приложениях. На фоне HTML 5-истерии мне всё же не видится такой перспективы, что все дружно пересядут на другие ОСи и мобильные устройства. На смартфоне много не наработаешься, так что в корпоративном секторе роль PC останется преобладающей.
Кроме того, за последние 15 лет написано столько игр и приложений под Винду, что представляется маловероятным, что пользователи захотят отказываться от полюбившихся им программ. Так что, думаю, в ближайшее время не следует ожидать падения доли Windows среди ОС клиентских машин.
Опять же, корпоративный софт написан преимущественно под Винду, и для переноса его на другую платфору нужно тратить деньги, временами немалые. А на простое переписывание без улучшения функциональности вряд ли кто-нибудь согласится.
Победить Винду может имхо только та ОСь, которая сможет на нативном уровне исполнять все виндовые приложения.
Короче, к чему это я? :) В общем, ваш покорный слуга в настоящий момент не собирается переставать писать Windows-приложения, но и Веб вниманием обделять не будет. Дополнительное знание HTML 5 всегда может пригодиться, а во что всё это выльется - покажет будущее.